-soc

[unable to open file: weblogs/ceronman/-soc]

Discussion Loading... Vote up! Vote down!

I am a SOCker !

I'm participating in the Google's Summer of Code of this year! I was selected for the Mono Project. I'm going to work on a Visual XAML Editor for Moonlight called Lunar Eclipse. LE was started months ago by Alan McGovern (from MonoTorrent). My work is to improve it and make it shine!. My mentor is the famous Miguel de Icaza

This is going to be the funniest summer ever!!

Discussion (8) Loading... Vote up! Vote down!

Distributed Version Control

Actualmente se está dando una avalancha de migraciones desde sistemas de control de versiones centralizados (Subversion) hacia sistemas distribuidos. Prácticamente todos los grandes proyectos de software libre o ya migraron o están en discusiones sobre la migración o están usando sistemas paralelos.

A diferencia de lo que sucedió con Subversion, donde también hubo una avalancha de migraciones desde CVS, en esta ocasión hay varias buenas alternativas, lo que hace la cosa mucho más interesante. La guerra entre Git, Mercurial y Bazaar, está generando un montón de innovaciones en el campo del control de versiones. Nos está beneficiando mucho a nosotros los usuarios.

La carrera por popularidad la va ganando Git con proyectos como Linux, X.org, freedesktop.org, Wine, OLPC, entre otros. Mercurial va muy cerca con proyectos como Mozilla, OpenSolaris, OpenJDK, Xen, entre otros. Bazaar va en último lugar siendo usado por Ubuntu y otros más.

Git está escrito en C y muchos de sus comandos son scripts de Shell y Perl. En consecuencia, el soporte de Git en Windows es muy pobre. Mercurial está escrito principalmente en Python. Algunas rutinas cuello de botella están escritas en C. Mercurial funciona muy bien en Windows. Bazaar es 100% Python. Funciona muy bien en Windows. Mercurial y Bazaar son extensibles via Python.

Git va en primer lugar en cuanto a velocidad, Mercurial de segundo, Bazaar de tercero.

Git tiene una interfaz de usuario difícil de comprender. Mercurial y Bazaar son muy fáciles de usar.

En cuestión de documentación, Mercurial se lleva el primer puesto, Bazaar el segundo y Git, de lejos, el tercero.

Elegir uno de los tres es una tarea complicada. Hay un millón de páginas y entradas de blog que hablan a favor de uno u otro. Como van las cosas es muy posible que haya que aprender a usar los tres, al menos a un nivel básico. Mi elección personal ha sido Mercurial, por su documentación, facilidad de uso y velocidad.

Mi experiencia en las últimas semanas con Mercurial ha sido muy placentera. Los sistemas distribuidos no solo dan una gran ventaja para proyectos grandes y con muchos contribuyentes, sino también hace las cosas mucho más fáciles en proyectos pequeños de uno o pocos desarrolladores. Empezar a versionar un proyecto nunca fue más fácil.

Tengo muchos pequeños proyectos que no están versionados, por ejemplo los de PyWeek. No lo hago porque me da pereza arrancar un nuevo repositorio de Subversion, importar, hacer checkout... Con Mercurial es tan fácil comenzar un nuevo repositorio que nunca más tendré un proyecto no versionado.

La velocidad es un factor muy importante a la hora de que a uno no le de pereza usar un sistema de control de versiones. Con Mercurial todas las operaciones se sienten instantáneas. En cambio Subversion se siente taaan lento, incluso usado localmente.

El poder clonar repositorios fácilmente me da más seguridad. Sé que es menos probable que se pierdan datos. Sitios como freehg.org y github.com son lo máximo.

Trabajar al estilo Branchy Development se siente muy bien. Ahora tengo la costumbre de crear un branch por cada nueva característica, por pequeña que sea. Trabajar paralelamente cada cosa en un branch aparte es muy cómodo, ya que una cosa no rompe la otra. Además todo el historial termina mucho más organizado. Luego cuando todo está listo, un merge sin traumas.

A la hora de colaborar a un proyecto de software libre, me parece fundamental el hecho de que uno siempre tiene acceso al sistema de control de versiones. A diferencia de Subversión donde sólo el que tiene acceso de commit puede usarlo. El sistema de red de confianza del que hablaba Linus Torvals en el famoso vídeo de Git, también me parece una forma más natural de hacer las cosas.

Hay dos cosas que no me gustan de Mercurial. Una es que el soporte para Subversion es bastante pobre. No hay algo tan bueno como Git-svn. La otra es que la forma de hacer branches haciendo clones todavía se siente muy Subversion, me gusta más el estilo Git (Ivan habla de ello más detalladamente). No uso Git porque en el trabajo eventualmente me toca hacer ciertas operaciones en Windows. Sin embargo, como dije antes parece que dominar Git va ser esencial pronto. De todos modos aprender Mercurial me ha servido para entender muchos conceptos que no entendí bien cuando comencé a leer sobre Git.

Discussion (5) Loading... Vote up! Vote down!

PyBotLearn

PyWeek is finished. Unfortunately, I didn't have enough time for it this year, so I'm almost a DNF. The theme for this year was Robot. My idea ended up being more like an application than a game. I wanted to create an educational environment for teaching programing to children. Something similar to Logo. The idea was to build a game where your could program a small robot. It should be interactive so children could experiment on the fly.

In other words, It should be something like this: A window with a robot and a world, bellow a Python console. The users should be able to write commands in the console and the robot should execute them. The robot should be able to interact with it's environment and with the user too. Error, warnings, etc, should be given to the programmer in a friendly way. Additionally, there should be various challenges that the programmers should solve. This should be the fun factor for the game.

But, unfortunately, as I said before, I didn't have more that a couple of hours every day since Thursday, so I've failed on most of my objectives, and the only thing I have is a barely working demo. No challenges, no fun, no objects, no cool environment. Any way, I still like the idea, and I will try to continue with this project. I would love to hear more opinions about it.

My final submission was called "PyBotLearn". You can download it from my PyWeek 6 Entry Page.

Here is a small video of the demo:

A higher resolution video can be downloaded from here.

Discussion (1) Loading... Vote up! Vote down!

Effective Text Editing

I saw the video 7 Habits For Effective Text Editing 2.0 that arhuaco recommended months ago. I was tempted to start learning Vim, but after thinking for a while, I came to the conclusion that there is no good reason for learning Vim. I still don't get why people likes Vim that much. Most of the features that Bram Mooleenar showed in the video have been present in other tools for years and, in my humble opinion, they work much better than in Vim. Other things Bram talked about are just too crazy for me (He suggested that word processing would be more productive if we edit every paragraph in Vim and then copy-paste it on Microsoft Word... WTF!!)

Here are my habits for effective text editing:

Golden Rule: Use the best tool for the Job. I have learned that using a generic text editor for everything leads to be very unproductive. I like to use JEdit as my generic Text Editor. I love it for things like XML, C/C++, this weblog, etc. It has all the advanced features I need in a text editor. I used to use it for C# and Python but I discovered that using an specialized IDE for these languages is thousands of times more productive. Now I use MonoDevelop for C# and PyDev for Python.

The most important features I need when editing source code that can be hardly founded in a generic text editor are:

There are other cool features that I like and most of the time are present in a good generic text editor:

Discussion (1) Loading... Vote up! Vote down!

Involucrate

Last week I went to Lima (Perú) to attend Involucrate+GNOME. I really had a good time. Special Thanks to Diego, who invited me. Of course, I've got everything what I've seen in peruvian tv for years and never had the opportunity to taste. Inca-Cola, Chicha Morada, Cremolada, etc. I also verified that no one can eat a Margarita cookie as a normal cookie, leafs must be eaten first :P

En Peru

Photo Stolen directly from Tatiana's Flickr. More Photos on Flickr

Comming soon...

Discussion (2) Loading... Vote up! Vote down!

Trolling

The wisest/funniest answer for flamebait.

Discussion (4) Loading... Vote up! Vote down!

La marcha del 6 de Marzo

En respuesta a Alejo:

Hernando Gomez Buendía, como siempre, muy lúcido. Es uno de mis columnistas de opinión preferidos.

El 6 de marzo no estaré en Colombia. Y si estuviera, no asistiría a la marcha. Tal vez si la marcha hubiera sido planeada en cualquier otro momento es muy seguro que hubiera asistido. Sin embargo, dada la coyuntura generada por la pasada marcha del 4 de febrero, considero que lo mejor es no asistir.

¿Por qué no realizaron esta marcha en cualquier otro momento antes del 4F? La respuesta es clara. Porque el objetivo de esta nueva marcha, más allá de protestar contra la violencia de los paras y el estado, es realizar un esfuerzo de contrarrestación a ese gran fenómeno social que fue el 4F. La razón principal para pensar eso es la contradicción general de la gente que apoya esta nueva marcha:

En primer lugar, gran parte de los grupos que están organizando la marcha no apoyaron el 4F. Muchos de ellos, igual que tu, argumentaron que no lo hacían porque no se condenaban las demás formas de violencia diferentes a las FARC. Sin embargo, en forma increíblemente contradictoria, deciden participar en esta marcha que es sólo contra el estado y los paramilitares. ¿Por qué esta vez no aplican el mismo raciocinio?

Otros argumentos contra la marcha fueron que estaba parcializada, politizada, que servía para los intereses de Uribe, etc. Yo me pregunto, ¿Qué acaso esta marcha no sirve para los intereses de las FARC? ¿Qué acaso esta marcha no va a estar politizada y parcializada? ¿Qué acaso en esta marcha no se van a escuchar insultos hacia los partidos contrarios?

En resumen: no asistieron a la marcha del 4 de febrero porque tenía ciertos defectos, pero participan en una nueva que adolece de lo mismo. Una persona realmente coherente con lo que dice decidiría no participar en ninguna de las dos marchas o, como Gomez Buendía, participar en las dos.

Por otro lado, yo sí creo que la marcha nació de personas independientes. Estuve en el grupo de facebook desde muchas semanas antes de que la cosa siquiera se asomara por cualquier medio de comunicación colombiano. Tampoco creo que estuviera parcializada, vi mucha gente de izquierda y de derecha. Creo que lo que se muestra en el vídeo no deja de ser un hecho aislado. Al menos en Popayán yo no vi nada de eso. La gente se concentró en el objetivo: "No más FARC". Sabían que sólo era eso, no era ni a favor de Uribe, ni de los paramilitares, ni de nada. He escuchado comentarios similares de muchas personas que estuvieron en la marcha.

Tampoco creo que no se consiga nada con este tipo de marchas. Con el 4F se consiguió mucho. Se consiguió decirle al mundo que los colombianos no queremos a las FARC. Que no son liberadores sino opresores. Que no de ninguna manera podrían ser un ejercito beligerante, sino una manada de terroristas.

Discussion (10) Loading... Vote up! Vote down!

El amor en los tiempos del colera

Vi la película de "El Amor en los tiempos del cólera". Pese a todas las críticas que ha recibido, me gustó bastante. Sólo hay un detalle negativo: la película está hablada en inglés. Siendo que está basada en un libro de autor colombiano, situada en Colombia, con personajes colombianos y actores todos hispanoparlantes, me parece un terrible desacierto hacerla en inglés. Además de eso me parece que la traducción al inglés es algo tosca, creo que incluso para los angloparlantes debe ser incómodo ver la película en inglés, oyendo a todos hablar con acento hispano donde a veces (me dio la impresión) los diálogos se notan recitados, como aquellas conversaciones grabadas que vienen con los cursos de inglés.

Le doy un 7/10.

El amor en los tiempos del cólera en EekFun

Discussion (1) Loading... Vote up! Vote down!

Snow Crash

I just read Snow Crash. I really enjoyed it. Metaverse, Samurai swords, Mafia, religion fanatics, street skateboarding. What else could I ask for? I'll give it a rating of 10/10.

Snow Crash at EekFun

Discussion (3) Loading... Vote up! Vote down!

Loading... Vote up! Vote down!

Last update: 2007-06-28 (Rev 11825)

svnwiki $Rev: 12966 $