Felipe, dos años

General — Miércoles 19 de Octubre de 2011, 18:06


Y llegaron los dos años de Felu. Como teníamos gente demasiado dispar (y demasiada) para invitar un sólo día, decidmos separar los festejos.

El mismo día del cumpleaños fuimos al jardín, para que festejara con sus compañeritos (justo Felu estaba terminando de recuperarse de una gripe, así que sólo fuimos para eso y nos volvimos al rato), y esa tarde Moni armó una merienda con compañeras de ella de los jardines.

El fin de semana siguiente era largo, entonces aprovechamos para hacer los dos festejos principales. El sábado recibimos en casa a familiares y amigos que no tenían hijos pequeños, e hice unas carnes a la parrilla para armar sanguchitos.

Cumple en casa

El lunes, feriado, hicimos el festejo para todos aquellos que sí tenían hijos pequeños, en una especie de casa pseudo quinta, algo abierto y al aire libre, con parque para que los chicos jueguen, todo muy lindo.

Como era feriado no había "animación" provista por el lugar, pero nos salvaron Valentina y su amiga Sofía, que divirtieron a los chicos, los guiaron en actividades, etc... todo muy bien.

En el "salón"

La verdad es que terminamos súper cansados, luego de esa semanita, pero lo importante es que Felu disfrutó mucho en cada una de esas reuniones.

Todas las fotos acá, acá, acá y acá.


Diversidad cultural

Python — Miércoles 12 de Octubre de 2011, 17:41


Hoy, 12 de Octubre, fue durante casi todo el siglo pasado y parte de este el Día de la Raza, pero fue cambiado hace poco y ahora se denomina Día del Respeto a la Diversidad Cultural.

Como festejo de este día, les dejo la traducción de la declaración de diversidad de la Python Software Foundation (pueden ver el original acá), declaración que Steve Holden comentó y explicó en la última PyCon en Argentina, y la cual comparto:

La Python Software Foundation y la comunidad global de Python damos la bienvenida y alentamos la participación de todos. Nuestra comunidad está basada en el respeto mutuo, la tolerancia, y el ánimo, y estamos trabajando para ayudarnos entre todos a vivir en base a estos principios. Queremos que nuestra comunidad sea más diversa: dondequiera que estés, y cualquiera sea tu origen, te damos la bienvenida.


Encuentro 0.3

Software — Jueves 06 de Octubre de 2011, 19:17


Encuentro es un simple programa que permite buscar, descargar y ver contenido del Canal Encuentro.

Notar que este programa no distribuye contenido de Canal Encuentro, sino que permite un mejor uso personal de esos contenidos. Por favor, referirse al sitio web de Canal Encuentro (www.encuentro.gov.ar) para saber qué se puede y qué no se puede hacer con los contenidos de ese sitio.

Encuentro

La versión 0.3 (todavía pre-alfa) trae los siguientes cambios con respecto a la versión anterior:

- Ahora podés poner al mismo tiempo a bajar muchos episodios (se encolan).

- ¡Soportamos botón derecho! Hacé click en cualquier episodio y fijate las opciones.

- Las descargas ahora pueden cancelarse.

- Menos dependencias: no más zope, y uso json de la biblioteca estándar.

- También corregí algunos problemillas, y limpié un poco el código.

La forma más fácil de instalarlo, si tienen un Debian o Ubuntu, es usando este instalador. Si quieren obtener automaticamente las nuevas actualizaciones, pueden suscribirse al PPA; en una linea de comandos hagan:

    sudo add-apt-repository ppa:facundo/encuentro

En cualquier otro caso, pueden usar el tarball para instalarlo. Recuerden revisar el archivo AYUDA.txt si tienen alguna duda de cómo usar el programa.

¡Que lo disfruten!


PyCon Argentina 2011, Junín

Python — Miércoles 28 de Septiembre de 2011, 19:57


Y pasó la tercer Conferencia Nacional de Python Argentina. Este año se hizo en Junín.

Junín no es al lado de casa pero tampoco es demasiado lejos... salimos con Lucio, Ricardo y Tatiana (disertante, que se vino desde Brasil) un rato antes de las seis de la tarde del jueves (más que nada para no agarrar el tráfico de toda la gente saliendo de trabajar), y a las diez de la noche ya estábamos cenando allá.

La conferencia propiamente dicha arrancó el viernes a la mañana; luego de una registración un poco complicada arrancó una keynote a la que asistí, estuve haciendo sociales un rato por los pasillos, y cerramos la mañana con un panel de programadores que trabajamos en Canonical, moderado por Nico César, con preguntas del público sobre qué hacíamos, cómo lo hacíamos, etc.

Almorzamos en un lugar cercano, algo liviano, y estuve un rato en otra plenaria que no me interesaba demasiado, luego un rato afuera charlando, y justo antes del break de la tarde di mi clásica "Entendiendo Unicode"... es que el público se renueva, ¿viste?

Después del break, Lightning Talks! Siempre están buenas! Gracias a Manu Quiñones me enteré de la existencia de MyPaint, que está buenísimo, y yo por mi parte mostré un truquito interesante para hacer ejecutables Python, que ya mostré acá. Para cerrar el primer día de conferencia, hubo una plenaria sobre PyPy que estuvo buena, por Maciej Fijalkowski.

Ni bien terminó todo, Nico César me pidió la revancha de unos partidos de pool que le había ganado el año pasado, y salimos corriendo a jugarnos unas fichas... pero estaba cerrado! Abría recién a las ocho y media, pero a esa hora ya íbamos a estar cenando, así que apuntamos directamente a donde nos íbamos a encontrar con la gente a comer.

Como Alecu había avisado a todos que nos encontrábamos ahí, invadimos el bar, ¡éramos 66 comensales de la conferencia! Las cervezas y las pizzas corrían con un ritmo vertiginoso, y todos la pasamos muy bien. El lugar, super recomendable: Tío Lucas (fue barato, nos atendieron bien, y aunque había tanta gente se podía charlar bien, no era todo un gran barullo).

Cena en Tio Lucas

Ni bien terminamos de pagar, nos escapamos con Perrito y Nico al pool antedicho, y jugamos unas fichas, tomamos unas cervezas, llegó más gente... parranda, bah. Lo bueno es que como cenamos temprano, terminamos también acostándonos temprano (o al menos no demasiado tarde), lo que estuvo muy bien porque nos quedaba la mitad de conferencia por delante.

Al otro día, dí mi segunda y última charla en el primer slot, "Python más rápido que C" (versión actualizada, con comparaciones con PyPy). Luego estuve un rato charlando con Lucio y Guillo sobre unos temas de laburo, y enseguida me metí en una charla de Ricardo Kirkner sobre fabric. Para cerrar la mañana, una buena plenaria de Ricardo Quesada sobre "Vivencias desarrollando un proyecto open source".

Riq en su plenaria

Ni bien terminó la charla nos fuimos todos corriendo a una plaza en la esquina de la universidad a sacarnos una foto grupal, y luego a almorzar... donde nos demoramos apena más de lo que debíamos y terminamos llegando a la plenaria de Wesley Chun (sobre Python 3) un poco tarde.

Lo mejor de la tarde fueron una charla sobre Python en Android por Tatiana Al-Chueyr, otra tanda de Lightning Talks, y la última plenaria: el chairman de la Python Software Foundation, Steve Holden, hablándonos de la PSF, historia, comunidad, e incluso diversidad dentro de la misma.

Y el cierre! Unas palabras de los organizadores, regalos para los asistentes, para los disertantes, y todos para casa. Bueno, no para casa... había una cena para disertantes, y luego nos fuimos nuevamente a jugar unos pools al bar de enfrente del hotel.

Ese bar está buenísimo: tiene música pero no demasiado alta, buenas mesas de pool, un ambiente copado... si tuviera uno así por acá jugaría mucho más seguido al pool :) Ahora que lo pienso, debería revisar un par de bares que ví por la zona donde vivo, que parece que son más chetos, pero habría que confirmarlo, a ver si alguno tiene un pool piola.

Anyway, luego del pool, ya siendo como las dos de la mañana, cruzamos la calle y nos fuimos a dormir. Y al otro día nos levantamos, desayunamos, al rato partimos, viajamos tranqui, llegamos a la tardecita... todo bien.

Foto grupal
(hagan click en la foto para verla grande)

En fin. Muy buena conferencia, con buena asistencia, buenas charlas, y bien organizada. Un lujo tener estos eventos en Argentina, al alcance de todos.


Encapsulando Python en un binario

Python — Sábado 24 de Septiembre de 2011, 17:00


Este es un lindo truquito que no es de mi autoría, sino que es de John Lenton (él lo mostró en una reunión del laburo), pero como yo ya lo mostré en PyCon Brasil el año pasado, y en PyCon Argentina ayer, lo pongo acá para el que lo quiera mirar...

Arrancamos con nuestro programa o proyecto Python que queremos meter adentro del binario... para nuestro ejemplo acá, crearemos un directorio, lo hacemos paquete de Python, y adentro creamos lo que sería el programa principal de nuestro sistema, con una función adentro que es la que arrancaría todo...

facundo@exopus:~/prueba$ mkdir proyecto
facundo@exopus:~/prueba$ cd proyecto/
facundo@exopus:~/prueba/proyecto$ touch __init__.py
facundo@exopus:~/prueba/proyecto$ cat principal.py
def run():
    print "Arrancamos!"
facundo@exopus:~/prueba/proyecto$ cd ..
facundo@exopus:~/prueba$

Tenemos que probar que podamos arrancar nuestro sistema desde el directorio padre... a veces no es tan fácil, hay que jugar un poquito con los paths de dónde importamos cosas, pero en este ejemplo es sencillo. Pero podemos probarlo facilmente:

facundo@exopus:~/prueba$ python
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24)
...
>>> import proyecto.principal
>>> proyecto.principal.run()
Arrancamos!
>>>

Una vez que lo logremos ejecutar así, tenemos que  poner ese mismo código en un archivo con nombre __main__.py en el directorio padre de nuestro proyecto:

facundo@exopus:~/prueba$ cat __main__.py
import proyecto.principal
proyecto.principal.run()

Volvemos a probar que nuestro sistema funciona correctamente:

facundo@exopus:~/prueba$ python __main__.py
Arrancamos!

El próximo paso es meter todo adentro de un archivo ZIP, aprovechando que Python es capaz de interpretar directamente este tipo de archivos comprimidos (por eso el nombre especial de antes, para que Python lo reconozca):

facundo@exopus:~/prueba$ zip -r proyecto.zip __main__.py proyecto/
  adding: __main__.py (deflated 27%)
  adding: proyecto/ (stored 0%)
  adding: proyecto/__init__.py (stored 0%)
  adding: proyecto/principal.pyc (deflated 45%)
  adding: proyecto/__init__.pyc (deflated 30%)
  adding: proyecto/principal.py (stored 0%)

Probamos nuevamente que, hasta acá, funcione todo correctamente:

facundo@exopus:~/prueba$ python proyecto.zip
Arrancamos!

Finalmente, metemos todo eso adentro de un binario, indicando que se va a interpretar con Python, y haciéndolo ejecutable:

facundo@exopus:~/prueba$ ( echo '#!/usr/bin/env python'; cat proyecto.zip ) > miproyecto
facundo@exopus:~/prueba$ chmod +x miproyecto

¡Ya está! Ahora podemos ejecutar ese binario, como cualquier otro binario, y realmente estaremos ejecutando nuestro proyecto Python:

facundo@exopus:~/prueba$ ./miproyecto
Arrancamos!

Genial, :)


Felu pirata

General — Sábado 17 de Septiembre de 2011, 14:04


¿Les conté que Moni es genial cosiendo ropa? Bueno, había que disfrazar a Felipe para un acto del jardín, en función de un personaje de algún cuento... salió pirata:

Felu disfrazado de pirata

Bonus track: hagan click en la imagen y verán un video de Felu tratando de tocar Humo sobre el agua con la guitarra...


Primer versión de Encuentro

Software — Miércoles 14 de Septiembre de 2011, 18:34


Encuentro es un simple programa que permite buscar, descargar y ver contenido del Canal Encuentro.

Notar que este programa no distribuye contenido de Canal Encuentro, sino que permite un mejor uso personal de esos contenidos. Por favor, referirse al sitio web de Canal Encuentro para saber qué se puede y qué no se puede hacer con los contenidos de ese sitio.

Logo

La versión 0.2 (que es la primera que anuncio) es una versión pre-alfa... se puede usar, descargar y ver videos, y debería funcionar todo correctamente, pero le falta mucha funcionalidad (por ejemplo, buscar).

- Se pueden encolar descargas de episodios, que luego irán bajando uno por uno.

- Permite una visualización directa de los episodios desde el programa.

- Se mantiene y muestra el estado de cada episodio.

- La lista e información de los episodios se descarga automáticamente del server, para un mejor arranque.

- Tenemos un sitio web 3.0! Pasen y vean: http://encuentro.taniquetil.com.ar/ (con botón de Donaciones y todo)

- Configuración de parámetros, con un wizard para realizar más fácilmente la configuración necesaria.

- Descargable como tarball (multiplataforma), con un instalador para Debian/Ubuntu, e incluso con un PPA para suscribirse.


La forma más fácil de instalarlo, si tienen un Debian o Ubuntu, es usando este instalador:

    http://launchpad.net/encuentro/trunk/0.2/+download/encuentro-0.2.deb

Si quieren obtener automaticamente las nuevas actualizaciones, pueden suscribirse al PPA; en una linea de comandos hagan:
en
    sudo add-apt-repository ppa:facundo/encuentro

En cualquier otro caso, pueden usar el tarball para instalarlo:

    http://edge.launchpad.net/encuentro/trunk/0.2/+download/encuentro-0.2.tar.gz


Recuerden revisar el archivo AYUDA.txt si tienen alguna duda de cómo usar el programa.

¡Que lo disfruten!


Empaquetando un programa hecho en Python

Python — Lunes 05 de Septiembre de 2011, 17:17


Estos son los pasos genéricos para, desde un proyecto que tiene el setup.py funcionando (ver este post para ayuda con eso), armar un paquete .deb y publicarlo en un PPA. El .deb es un archivo instalable en Debian o Ubuntu, y el PPA es una forma de registrarse para que el programa se actualice automáticamente cuando hay nuevas versiones (obvio, preguntándole al usuario, como el resto del sistema).

Traté de ser conciso para que no se pierdan los pasos en un mar de palabras, pero explicar alguito de cada punto, y dar alguna referencia para seguir investigando. Esta guía está casi copiada de una menos genérica y en inglés que había preparado Naty Bidart en el laburo... la idea es que quede aquí en castellano y más explicada...

Quizás necesiten instalar algunas dependencias (por ejemplo: bzr, bzrtools, bzr-builddeb, ubuntu-dev-tools, libcrypt-ssleay-perl), y configurar algunas cosas:

- En el archivo .bashrc configurar nombre y mail para lo que son los .deb:

    export DEBFULLNAME="Nombre Completo"
    export DEBEMAIL="mail@algun.lado"

- Crear en el home un archivo .devscripts con este contenido:

    DEBUILD_DPKG_BUILDPACKAGE_OPTS='-i -I'

- Tener un entorno pbuilder configurado /para cada distro/ a la que quieran apuntar (en este ejemplo, usé 'maverick', reemplacen apropiadamente):
     - crear un symlink en algún lado de vuestro PATH llamado pbuilder-maverick, apuntando a /usr/bin/pbuilder-dist
     - en algún lado dentro del home (por ejemplo, en un directorio “~/pbuilder”), ejecuten: pbuilder-maverick create
     - regularmente (o antes de armar un paquete), actualicen el entorno de pbuilder con: pbuilder-maverick update

Por último: sí, estos pasos están fuertemente orientados a usar bazaar en todo el proceso. Es lo que hay :)

Presten atención a los comandos que ejecutan, especialmente a los cambios de "." y "-" por "_", y a todo lo que use 'tuproyecto'. Cualquier duda, pregunten.

- Arrancamos trabajando con trunk.

- Revisar que el setup.py funcione correctamente (que arme, instalarlo, y generar un tarball). Luego de instalarlo en /tmp/test ir allí y ver que funcione correctamente. Luego de generar el tarball, ir a otro directorio que no tenga nada que ver, desarmarlo y ver qué esté todo bien.

    ./setup.py clean build
    ./setup.py clean install --prefix=/tmp/test
    ./setup.py clean sdist

- Cambiar la versión en setup.py a la nueva (en este ejemplo, sería X.Y.Z). Marcar a nivel bazaar un nuevo release:

    bzr commit -m "[release] vX.Y.Z"
    bzr tag release_X_Y_Z
    bzr push

- Hacer un "bzr log" y preparar el changelog y las release notes. El changelog es una lista exhaustiva de todos los cambios, y las release notes es un subconjunto de eso, normalmente lo que es más relevante, interesante, o útil a la persona que quiere saber qué tenemos de nuevo en esta versión de nuestro programa.

- Generar y subir el tarball a Launchpad. El último paso setea EDITOR porque lp-project-upload va a abrir dos archivos para que escribamos el changelog y las release notes que preparamos antes (pueden usar el editor que más les guste).

    ./setup.py clean sdist
    cd dist
    EDITOR=vim lp-project-upload tuproyecto X.Y.Z tuproyecto-X.Y.Z.tar.gz

- Copiar el tarball (con un nuevo nombre) y preparar un nuevo branch para empezar a empaquetar:

    cp dist/tuproyecto-X.Y.Z.tar.gz ../tuproyecto_X.Y.Z.orig.tar.gz
    cd ..
    bzr branch trunk/ tuproyecto-X.Y.Z
    cd tuproyecto-X.Y.Z/
    bzr dh-make --bzr-only tuproyecto X.Y.Z ../tuproyecto_X.Y.Z.orig.tar.gz
    python-mkdebian

- Editar el changelog con: EDITOR=vim dch (yo tiendo a poner las release notes aquí)
    - Agregar lineas de changelog
    - Agregar un -0ubuntu1 al nro de versión entre paréntesis

- Archivos necesarios para Debian (tocar como dice acá o traer intactos de otro packaging que se haya hecho antes):
    - agregar un directorio source adentro del dir debian, y poner en ese nuevo directorio un archivo format con el siguiente contenido:
        3.0 (quilt)\n
    - confirmar que las dependencias sean las correctas en el archivo debian/control
    - modificar debian/copyright como corresponda
    - crear un archivo debian/watch con el siguiente contenido:
        version=3
        http://launchpad.net/tuproyecto/+download .*/tuproyecto-([0-9.]+)\.tar\.gz

- Armar el paquete en si, y luego del tercer paso probar el .deb que quedó en ~/pbuilder/maverick_result (o en el directorio donde hayan puesto pbuilder ustedes):

    debuild -S -sa
    bzr add debian
    pbuilder-maverick build ../tuproyecto_X.Y.Z-0ubuntu1.dsc

- Actualizar el PPA (se puede crear el PPA desde tu página personal de Launchpad):

    dput ppa:<nombre_de_ppa_que_corresponda> tuproyecto_X.Y.Z-0ubuntu1_source.changes

- Luego de unos minutos, debería aparecer acá:

    https://launchpad.net/~tunombre/+archive/tuproyecto/

- Esperar que se buildee la versión que subieron (puede tardar algunas horas, un par de días, normalmente no más), y luego si quieren publicar lo mismo para otras versiones de Ubuntu sólo alcanza con copiar los fuentes a la versión que corresponda, desde la siguiente página:

    https://launchpad.net/~tunombre/+archive/tuproyecto/+copy-packages


Facundario, reloaded

General — Miércoles 31 de Agosto de 2011, 19:29


Ya les había comentado de lo que Perrito666 en su momento armó y dió en llamar Facundario.

Bueno, tuvo su evolución. Antes, el sistema juntaba mi primer frase al entrar en el IRC de PyAr, pero luego pasé a dejar siempre el IRC conectado, así que eso no tuvo mucho sentido (además el parser y servicio estaban en una máquina de Perrito que ya no está más).

Pasó el tiempo, y me di cuenta que a veces se me ocurrían frases y las tiraba por tuiter. Bueno, entonces hice un programita que vaya escuchando lo que digo ahí y cuando lo tageo como #facundario lo junta en mi lista y ya.

Así que lo traje a mi server (gracias Perrito por la ayuda), y quedó andando acá, con nueva versión y todo: Facundario Enterprise Edition 2.71 (versión extra apulentada). Enjoy.


CDPedia, un poco de historia

Python — Sábado 27 de Agosto de 2011, 09:11


Con motivo de la reciente liberación de la versión 0.7 y algo más, me puse a pensar un poco sobre la historia de la  CDPedia.

Cuenta la leyenda (?) que todo arrancó en el sprint posterior al primer PyDay de Santa Fé; la idea la trajo el omnipresente Leito Monk, pero parece que había surgido del Gran Nico César. No sé, ustedes vieron como son los mitos.

Sprinteando en un bar

(éramos tan jovenes...)

La cuestión es que ahí se arrancó el proyecto. Creo que estuvo en un par de SVNs por ahí (o algún CVS?) hasta que terminó en donde está ahora hosteado el proyecto. Las mejoras en el proyecto fueron muy por ráfagas. Recuerdo que siempre se trabajó mucho en este proyecto durante los PyCamps (los dos en Los Cocos, el de Verónica, y el de La Falda), donde muchas personas le dedicaron un buen tiempo, pero también se realizó bastante durante otras reuniones.

Recuerdo, a modo de ejemplo, dos sprints: uno fue en un incipiente hacklab, donde (principalmente) Lucio y Nubis experimentaron sobre el índice para las búsquedas, y también durante la fundación de Wikimedia Argentina, donde presentamos por primera vez el proyecto y trabajamos en la primera parte del procesamiento de datos.

Una gran característica de la CDPedia, indiscutiblemente el proyecto más grande y más largo de Python Argentina, es que siempre se mantuvo orientado al mismo objetivo: tener una wikipedia offline con fines sociales (distribuir en escuelas sin conexión a internet, que el conocimiento sea libre, etcétera), pero sin dejar de que sea divertido (es decir, hacerlo en Python), y manteniendo libre el proyecto (no sólo el producto final, que recomendamos copiarlo y repartirlo, sino el código en sí).

Hasta el 2009, los avances fueron como conté, esporádicos. Pero resulta que Martín Varsavsky se casó, y Jimmy Wales le regaló para el casamiento la posibilidad de que se distribuya una wikipedia offline en Argentina. Preguntó cuales habían, la CDPedia era la que se mejor ajustaba a lo que se necesitaba, y vino Jimmy a Buenos Aires, le mostramos la CDPedia, y luego hubo una reunión en Educ.ar para terminar de acordar esto (fueron Jimmy por Wikimedia, Enrique Chaparro por Wikimedia Argentina y Alecu por PyAr).

Trabajando en el PyCamp

(hagan click en la imagen para ver la foto original, si están curiosos con lo que dice el pizarrón)

En parte porque Educ.ar quería meter la CDPedia en un disco de ellos (con carátula de ellos, algunas otras páginas, etc), y en parte porque nosotros vimos la oportunidad, logramos que dos chicos de PyAr, Diego Mascialino y Hernán Olivera, sean becados para trabajar part time en esto.

Así que agarraron la versión 0.6 que recién había salido (con Alecu nos habíamos apurado a cerrar muchos detalles para tener algo presentable y funcionando a Jimmy Wales), y le entraron a darle. Esto le dio bastante impulso al desarrollo del proyecto, sumado a que yo también por esa época tomé el compromiso interno de trabajar regularmente en esto, y a que luego de que se terminara la beca Diego siguió trabajando en el proyecto, y que se sumó como "laburante regular" Santiago Piccinini.

Con todo este trabajo, y un nuevo "empujón" en el PyCamp del 2011, pudimos terminar de cerrar la versión 0.7, que entregamos a Educ.ar y debería estar distribuyendo por estas semanas a todas las escuelas del pais.

Para minimizar la injusticia de haber nombrado solamente a algunas personas en el texto anterior, para que se den una idea de la magnitud del proyecto (y a riesgo de aburrirlos), les dejo la lista del resto de personas que trabajaron de una u otra forma en el proyecto: Agustín Henze, Antonio Lenton, Alejandro David Weil, Claudio D. Freire, Ezequiel Diaz Marquez, Felipe Lerena, Gonzalo Delgado, Gonzalo García, Guillermo Gonzalez, Hugo Ruscitti, Lucio Torre, Marcos Dione, Martín Gaitán, Maximiliano David Bustos, Nicolás Miyasato, Pablo Ziliani, Piukeyen Tappa, Ricardo Kirkner, Sebastian Farioli, y Zuzel Vera Pacheco

Para terminar, les cuento que puse una versión menos personalizada de este texto en el wiki de PyAr, para que aquellos que recuerden más y más detalles los agreguen ahí.


Enjuewemela 0.4.1

Software — Miércoles 24 de Agosto de 2011, 19:29


Enjuewemela es aún otro juego similar a los populares "Bejeweled" o "Diamond Mine". El juego se basa en alinear 3 o más gemas, tanto verticalmente como horizontalmente, intercambiando gemas adyacentes. Está (por supuesto) escrito en Python, usando el framework para juegos cocos2d.

Logo

La versión 0.4.1 trae un montón de nuevas características, y muchos bugs corregidos. Lo más relevante es:

- Hay un nuevo estilo de juego! Se llama Maluco! No dejen de probarlo.

- Tenemos un sitio web 3.0! Pasen y vean (con botón de Dnoaciones y todo)

- Rehice la parte de audio del juego, ahora es más portable, rápida, y debería funcionar sin que tengan que saber nada sobre eso.

- Ahora se instala de forma que pueden ejecutar el juego desde el menu de Aplicaciones.

- Puse un botón de Donaciones en la página web.

La forma más fácil de instalarlo, si tienen un Debian o Ubuntu, es usando este instalador. Si quieren obtener automaticamente las nuevas actualizaciones, pueden suscribirse al PPA; en una linea de comandos hagan:

    sudo add-apt-repository ppa:facundo/enjuewemela

En cualquier otro caso, pueden usar el tarball para instalarlo.

¡Que lo disfruten!


Puntaje

General — Miércoles 17 de Agosto de 2011, 18:41


El otro día me encontré con Diegote en el Paloko de Belgrano. Ibamos a ser más, pero al final el resto canceló y sólo fuimos nosotros dos.

Arrancamos con una cervecita charlando y charlando, y luego nos jugamos unos pools, mientras comíamos algo (me ganó 2 a 1!!).

Para terminar de cerrar la noche, decidimos tirar unas lineas al bowling. La verdad, ninguno de los dos estaba preparado para lo que pasó... ¡¡jugamos bárbaro!!

Hacía mil que ninguno de los dos jugaba al bowling, pero ambos hicimos una muy buena cantidad de puntos. Es más, en la segunda linea yo hice tantos puntos que ahora es mi record personal... y le sacamos una foto, para la posteridad.

Record bowling

Un lujo. Hay que repetir esos encuentros.


«Anterior   1 2 3 4 5 6 7 ... 44 45 46  Siguiente»

Powered by LifeType