Coco, fruta silvestre que crece en las palmas, alacrán, se divide en dos partes «ala» y «cran». Ala, extremidad superior que usan las aves para volar y cran, es lo que hace mi moto al prender cran cran. Para prender la moto necesita gasolina, gasolina se divide en 3 partes «gas», «o» y «Lina». Gas, pedo o flatulencia que nos echamos los seres humanos después de haber comido frijoles, «o», décimo sexta letra de abecedario y Lina mi vecina que tiene una piscina pero si no sabes nadar no te metas a una piscina porque te hundes como un ladrillo porque el ladrillo es pesado. Pesado se divide en dos partes: pez y ado. Pez animal acuífero que viven en los ríos y mares y «ado», son gemas que sirven para hacer anillos, los anillos van en los dedos, los dedos van en la mano, la mano va pegada del antebrazo, el antebrazo va pegado del brazo y el brazo va pegado del hombro, encima del hombro tenemos la cabeza en la cabeza tenemos pelo y en el pelo tenemos piojos. Piojos se divide en dos partes «pi» y «ojos», pi es un silogismo matemático que vale 3.1416 y ojos, son los que nos sirven para saber que un coco y un alacrán no se parecen en ni mierda.

Todos los derechos Jhon Jairo Gomez (YOCO)

 

Hoy es un día muy feliz en mi vida, ya cerca de tres años que no sabia
nada de la mujer que amo, depronto ese es el motivo para que les
cuente cual es mi historia.

Isabel, si así se llama aquella mujer que me vino a visitar, la conocí
una tarde en la universidad era la mujer mas hermosa que mis ojos
habían visto, con el tiempo comenzamos a salir y me fui enamorando
perdidamente de ella, teníamos muchos planes como ir a recorrer el
mundo. ¿Pero que tanto se puede hacer por una mujer?. En aquellos
vientos de agosto esa fue la pregunta «¿Que estaba dispuesto hacer por
ella?», yo estaba perdidamente enamorado y la respuesta a esa pregunta
seria que dispuesto a cualquier cosa, horas mas tarde me daría cuenta
el problema que me había puesto con lo que respondí a mi amada.

Esa noche salimos al cine y en el trayecto a dejarla a su casa me
volvió hacer la misma pregunta y claro yo reafirme lo respondido
anteriormente que estaba dispuesto a todo con tal de complacerla y
tener todo su amor, fue ahí cuando me comenzó a decir que en noviembre
cumplía su mayoría de edad y quería que para ese día le regale un ramo
de ojos y el nombre a quien le corresponda cada ojo y que no cuestione
el porque de aquel regalo y esa seria la prueba de amor que yo tenga
hacia ella.

Llegue a casa desconcertado de aquella petición y aunque esa noche no
pude dormir se me venia a la cabeza de como obtener ese ramo tan
importante para ella, pero si ese regalo era tan importante para ella
debía de buscar la forma de como conseguirlo, en el siguiente mes
comencé a investigar casos en los cuales a las personas se les haya
extraído los ojos y comenzaría a planear varios de mis crímenes.

Las personas que dicen que han cometido crímenes sabrán igual que yo
que el primero es el mas difícil de realizar, había planeado ir a un
bar conocer a alguien y luego llevarla a un lugar solitario para poder
cumplir mi objetivo, la primera vez ya había seducido a una simpática
muchacha pero muy nervioso y no quise hacerle absolutamente nada, la
segunda vez fue igual le había dado escopolamina a la víctima pero de
los nervios que tenia tampoco logre mi objetivo, el tiempo iba
avanzando y aun no conseguía nada tenia un mes únicamente y lo menos
que quería era perder a la mujer que amaba. Entonces ya para la
tercera ves me arme de valor había logrado seducir a una mujer
demasiado hermosa, sus ojos eran verdes a la salida del bar la lleve a
las afueras de la cuidad, la logre dormir y comencé el pocedimiendo de
quitarle aquellos ojos verdes y aunque temblaba y sudaba mucho lo
único que pensaba era en Isabel la mujer que amaba, eso es lo que me
ayudaría a cumplir mi objetivo.

Aunque apenas tenia dos ojos sabia que podía conseguir los demás, a la
semana siguiente logre hacerme amigo de tres personas las cuales me
llevarían a terminar la rumba a la casa de uno de ellos, ahí fue donde
aproveche en poder drogarlas a las 3 y poder sacarles los ojos de
esas personas, ya con esos serian 8 ojos los que tenia pero también
había un escandalo en la ciudad y la policía investigando lo que al
parecer me tenia acorralado.

Faltando tan solo diez días decidí volver a salir pero ese día no
había podido hacer que nadie saliera conmigo, ya perdido toda
esperanza de cumplir mi cometido me estaba tomando una cuantas
cervezas fuera de un bar cuando dos personas me preguntaron si conocía
un lugar de la ciudad, me pareció la oportunidad perfecta y les dije
que yo iba para allá que si querían los acompañaría, termine el ultimo
sorbo de cerveza y fui con ellos, como sabia que ellos no conocían la
ciudad los lleve por sitios que no pasaban personas para así poder
drogarlos y obtener esos ojos, ya con esos eran doce ojos y aun me
faltarían seis.

Esos días la policía y las noticias estaban pasando informes con toda
mi descripción porque igual a ninguno de ellos los mate solo obtenía
los ojos de ellos, ningún crimen es perfecto pasaron los días y tenia
claro algo que los últimos dos ojos del ramo serian uno de ella y uno
mio entonces me faltarían cuatro pero con mi descripción y la policía
investigando era muy difícil salir a cometer otro crimen para
conseguir los faltantes.

Faltaba ya un día y no tenia otra alternativa salir a buscar víctimas
y conseguir los ojos faltantes o perder a la mujer que amo, cuando
estaba a punto de salir paso algo, los padres de ella llamaron y
dijeron que le preparemos una fiesta sorpresa para ella, yo debía
ayudar y no podía negarme, entonces les dije que nos veamos en mi casa
que los invitaba a cenar pero sabia también que eso me gastaría mucho
tiempo y no lograría cumplir a completar el ramo, ahí fue cuando se me
mire sin mas alternativas y se me ocurrió obtener los ojos de los
padres de ella, efectivamente cuando llegaron estaba todo listo y
saque los ojos de ellos, claro no quería que ella se entere asi que
luego de sacarles los ojos los cure y los encere al menos hasta
entregar el ramo.

Llego el día del cumpleaños, el ramo estaba muy adornado todos los
ojos estaban incrustados con una espera de oro y en cada esfera el
nombre de a quien pertenecen, en el final estaban nuestros nombres y el
grabado decía «Estos dos ojos serán el símbolo de que siempre
estaremos juntos», antes de entregarle el ramo le dije que
brindáramos, fue ahí que coloque en el vine algo para poder dormirla y
sacarle un ojo, apenas saque el ojo de ella me saque un ojo y lo
coloques en el ramo, luego me acerque donde la había dejado dormida y
coloque el ramo a su lado junto con una carta contándole que cuatro
ojos de ese ramo pertenecían a sus padres y que me iba a entregar a la
policía.

Desde eso hasta hoy la vuelvo a mirar y aunque me dijo que todos los
días miraba el ramo no me perdonaba que le haya hecho eso a ella y a
sus padres pero también se había dado cuenta que la culpa era de ella
por haber pedido aquel regalo y que sabia que yo si estaba dispuesto a
todo por el amor de ella. Me dijo que apenas salga de esta prisión
estemos juntos y que cumplamos aquellos sueños que teníamos antes de
aquella prueba y que nunca mas haría ninguna prueba de amor porque
estaba segura de todo lo que yo podía hacer por ella.

FIN

Bueno en esta ocasión les traigo un algoritmo llamado recocido simulado, es un algoritmo que utiliza
la metaheurística y es utilizada para problemas de optimización.

El objetivo general de este tipo de algoritmos es encontrar una buena aproximación al valor óptimo de una función en un espacio de búsqueda grande. A este valor óptimo se lo denomina «óptimo global» [1]

Existe una versión monótona y una versión no monótona del algoritmo. En este caso se implementó la versión no monónona, el pseudo-código se lo puede ver en [2].

Para las pruebas del algoritmo, se utilizarón los datos proporcionados por la página web TSPLIB, el conjunto de prueba se llama «berlin52», el cual se lo puede descargar de [3], con el cual se construyó la matrix de distancia, un archivo en hoja de calculo de la matrix se lo puede mirar en [4].

Sin más aca les dejo el código fuente y el repositorio de la implementación [5].

Y aca unas capturas de pantalla en las cuales nos muestra: la ruta, distancia inicial, distancia final, mejora de rendimiento, tiempo de ejecución y número de iteraciones. Además muestra las iteraciones vs el costo.

Screenshot from 2015-01-06 16:09:40

[1] http://es.wikipedia.org/wiki/Algoritmo_de_recocido_simulado
[2] http://www.dm.uba.ar/materias/optimizacion/2008/1/9SiAnneal.doc
[3] https://github.com/pdrozdowski/TSPLib.Net/blob/master/TSPLIB95/tsp/berlin52.tsp
[4] http://www.csudh.edu/math/astanoyevitch/DISCRETE/berlin52.xls
[5] https://github.com/poldrosky/Simulated-Annealing

Hace tiempo habia habia mirado un par de videos [1] en los cuales enseñaban a dibujar fractales, en especial Curvas de Von Koch y copos de Von Kock haciendo uso de recursión, debido a que yo uso GNU con Linux y no tengo la biblioteca gráfica pythonG, hice una modificación de tal forma se pueda usar la biblioteca matplotlib y numpy.

Por lo tanto debemos tener instaladas las bibliotecas matplotlib y numpy de la siguiente manera:

apt-get install python3-matplotlib python3-numpy 

Ya con esto el código es el siguiente:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

from math import sin, cos, pi
import matplotlib.pyplot as plt
import matplotlib

def kochSnowFlake(l, n):
    x_vertex1 = 0
    y_vertex1 = 0
	
    x_vertex2 = l * cos ( 2 * pi/3)
    y_vertex2 = l * sin(2 * pi/3)
    
    x_vertex3 = l * cos (pi/3)
    y_vertex3 = l * sin(pi/3)
    
    kochCurve(x_vertex1, y_vertex1, x_vertex2, y_vertex2, n)
    kochCurve(x_vertex2, y_vertex2, x_vertex3, y_vertex3, n)
    kochCurve(x_vertex3, y_vertex3, x_vertex1, y_vertex1, n)
    
    return
        
def kochCurve(xi, yi, xf, yf, n):
    if n==0:
       plt.plot([xi,xf],[yi,yf])
      	    
    elif n>0:
        x1 = xi + (xf - xi) / 3.0
        y1 = yi + (yf - yi) / 3.0

        x3 = xf - (xf - xi) / 3.0
        y3 = yf - (yf - yi) / 3.0
        
        x2 = (x1 + x3) * cos (pi/3) - ( y3 - y1) * sin (pi/3)
        y2 = (y1 + y3) * cos (pi/3) + ( x3 - x1) * sin (pi/3) 

        kochCurve(xi,yi,x1,y1,n-1)
        kochCurve(x1,y1,x2,y2,n-1)
        kochCurve(x2,y2,x3,y3,n-1)
        kochCurve(x3,y3,xf,yf,n-1)
        
    return
  
plt.figure("Koch snowflack")
kochSnowFlake(200,4) # range 1 -6
plt.show()
 

Esto nos mostrará algo como esto:

copo

También puedes encontrar algunos otros ejemplos de fractales en [2][3]

[1] https://www.youtube.com/watch?v=9E9rS71UctQ
[2] http://en.wikipedia.org/wiki/Attractor
[3] http://en.wikipedia.org/wiki/Maze_generation_algorithm

Ingredientes:

    Frijol 250grs rojo
    2 cebollas
    2 tomates
    1 pimenton
    2 platanos verdes
    1 libra de carne
    2 cucharadas de salsa de tomate
    1 libra de costilla en trozos
    Comino y sal al Gusto

El frijol se lo deja en agua la noche anterior, luego los ingredientes se pican y se colocan en la olla a presión con agua que sobrepase los ingredientes, y esperas alrededor de unos 30 minutos, luego destapas la olla y comienzas a revolver con una cuchara de palo hasta que el caldo tome una consistencia deseada, de preferencia los platanos verdes se los pica bien finos para que al cocinarse bien de buena consistencia al caldo.

21-06-10_1427

21-06-10_1435

Compartir Recetas de Cocina es Como cuando compartes Software … Usar, estudiar, modificar, distribuir es parte de ser libre «Usa software libre»

Código python para enamorados

Publicado: marzo 24, 2014 en Geek, Programación
Etiquetas:, ,

Hace rato que quería saber una forma fácil para graficar en python3 y pues quería programar algo un poco geek; bueno aquí explicaré que fue lo que hice.

Lo primero fue instalar unas 2 librerías llamadas numpy y matplotlib.pyplot desde la terminal de la siguiente forma

apt-get install python3-matplotlib python3-numpy 

Bueno sin mas este es el código

import numpy as np
import matplotlib.pyplot as plt

x=np.arange(-4.5,4.5,0.0001)
y= np.sqrt(1-(pow((abs(x)-1),2)))
y1= np.arccos(1-abs(x))-np.pi
y2 = np.sqrt(11-pow(x,2))
y3 = -np.sqrt(11-pow(x,2))

plt.figure("Geek code for lovers")
plt.plot(x,y)
plt.plot(x,y1)
plt.plot(x,y2)
plt.plot(x,y3)
plt.xlabel("I Love You")
plt.ylabel("Forever")
plt.title("Geek code for lovers")
plt.show()
#plt.close()

x=np.arange(-4.5,4.5,0.0001)
y=(np.sqrt(np.cos(x))*np.cos(300*x)+np.sqrt(abs(x))-0.7)*(pow((4-x*x),0.01))
y1= np.sqrt(4-(pow(x,2)))
y2= -np.sqrt(4-(pow(x,2)))
plt.plot(x,y)
plt.plot(x,y1)
plt.plot(x,y2)
plt.show()

Y la salida del código son estas 2 imagenes creo que el código no necesita ser explicado es muy claro lo que hace si uno lo lee línea por línea.

Screenshot from 2014-03-24 20:14:24

Screenshot from 2014-03-24 20:14:53

Spoon es el nombre de la herramienta gráfica de Pentaho Data Integration (PDI). Esta es usada para la creación de transformaciones y trabajos. En este tutorial se obtendrá información sobre cómo utilizar Spoon. Después de iniciar la aplicación, y una breve discusión de algunos de los principales elementos de la interfaz de usuario, se comenzará la construcción de una transformación «Hola, mundo!» para conocer la interfaz de usuario. Se presentará algunas funcionalidades que pueden ayudar a solucionar problemas de manera eficiente. se aprenderá a trabajar con las conexiones de base de datos, y mejorar el ejemplo «Hola, mundo!» para poner ese conocimiento en práctica.

Para descargar la práctica completa lo puede hacer desde Aquí

Objetivo de la Práctica

Conocer los principios básicos en la creación de secuencias de acción usando Pentaho
Design Studio (PDS) a través de un ejemplo práctico paso a paso. Lo que se quiere
lograr es lo siguiente:

  • Crear una lista de Gerentes con sus nombres, las regiones y las direcciones de
    correo electrónico de la base de datos de ejemplo.
  • Recorrer la lista y enviar un e-mail con la información de cada región con los
    ingresos, el presupuesto, y la varianza a los respectivos gerentes de la región.
  • Cuando el ciclo se encuentra con el gerente de la región ‘Central’, le enviaremos
    un resumen adicional de los ingresos totales de todas las regiones.

Para ver el contenido de la práctica la puede descargar de: Aqui.

Una matrioska o muñeca rusa (ruso: Матрёшка /mʌˈtrʲoʂkə/) son unas muñecas tradicionales rusas creadas en 1890, cuya originalidad consiste en que se encuentran huecas por dentro, de tal manera que en su interior albergan una nueva muñeca, y ésta a su vez a otra, y ésta a su vez otra, en un número variable que puede ir desde cinco hasta el número que se desee, siempre y cuando sea un número impar, aunque por la dificultad volumétrica, es raro que pasen de veinte. ver más

Este ejercicio solo lo posteo para que nos demos cuenta la facilidad que es trabajar con Python y ver su sencillez a la hora de resolver cualquier tipo de problemas, ejercicio que en otros lenguajes podemos gastar varias lineas de Código en Python lo resolvemos en unas cuantas lineas

Para comenzar necesitaremos el archivo en el cual esta la misión y se usara para llegar a la respuesta, lo puedes descargar de aqui, luego si manos a la obra.

Como podemos mirar hay que realizar 2 partes y por lo tanto 2 scripts. Comencemos con el primer script

#!/usr/bin/env python
mp3=open("mision.mp3","r" )
photo=open("foto.png","w") 
for i in range (20, 1222100+20):
	c=mp3.seek(i)
	c=mp3.read(1)
	photo.write(c)
mp3.close()		
photo.close()

Como podemos mirar es muy simple es uso de Pyhton, a continuación explico algunas partes de este script. Primero: abrimos el archivo mision.mp3 en modo lectura y el archivo foto.png en escritura si el archivo no existe se crea. Segundo: Aqui ya solo queda recorrer el archivo desde el byte 20 hasta el tamaño 1222100 más los 20 del inicio, el método seek() hace que nos ubiquemos en un byte determinado, el método read() nos permite leer, al escribirle el numero 1 lo leemos el archivo byte a byte y por último el método write() es el que nos ayuda a escribir. Tercero: ya por ultimo sobra cerrar los archivos con el método close().

Si todo ha salido bien miraremos que se nos creo la siguiente imagen

Con esto ya estamos listo para el segundo paso que es leer la foto.png generada en el anterior script y leerlo de la misma forma pero decrementando desde el byte 1222100-1 ya que en la ultima posicion no se encuentra nada hasta el byte 1222100-249686-1

#!/usr/bin/env python
photo=open("foto.png","r")
pdf=open("coordenadas.pdf","w")
for j in range(1222100-1, 1222100-249686-1, -1): 
	d=photo.seek(j)
	d=photo.read(1)
	pdf.write(d)
photo.close()
pdf.close()

Al ejecutar este script obtenemos el siguiente archivo: coordenadas.pdf

Eso es todo, como pueden la facilidad de python frente a otros lenguajes es muy tremenda(solo 8 líneas por nivel). Espero que les haya gustado y si no intenten resolverlo en otro lenguaje de programación y hagan ustedes mismos la prueba

Hasta la próxima