viernes, 30 de noviembre de 2012

Tips para convertirse en un ZinjaI Master (parte 1)

No hay IDE en el mundo con el que pueda desarrollar programas en C++ más rápido que con ZinjaI. Y esto se debe a una razón simple y clara: yo lo hice, ergo, yo conozco todas sus mañas y sus trucos. Y que quede claro otra vez: el hecho de que yo sea mucho mucho más rápido con ZinjaI que con algún otro IDE nada tiene que ver con que ZinjaI sea o no sea superior a ese otro IDE. Entonces, dejando para otro día la discusión de si es el mejor o el peor, y suponiendo que si alguien se toma la molestia de leer esto es porque ya ha decidido darle una oportunidad, voy a tratar de compartir en esta serie de posts muchos de esos trucos y explicar muchas de esas mañas que decía antes, para que el lector usuario de ZinjaI pueda aspirar a ser el programador más rápido del oeste.

Para empezar, es fundamental poder moverse cómodamente por el código. Y en ZinjaI hay muchas formas de ir y venir por el mismo. Están las formas convencionales de todo editor de texto: Ctrl+F para buscar, Ctrl+G para ir a un número de linea en particular, F3 y Shift+F3 para repetir la última búsqueda hacia atrás o hacia adelante, y Ctrl+Alt+F para mover el foco del teclado al cuadro de búsqueda rápida que aparece en la barra herramientas. Pero hay algunos atajos específicos que pueden resultar muy muy útiles.

sábado, 24 de noviembre de 2012

Sobre medios y objetivos

¿Qué guía el desarrollo de un proyecto de software libre? Esta es para mí una pregunta muy interesante, donde hay muchas respuestas válidas. Con ella apunto a analizar cómo se decide hacia dónde debe ir el futuro de un proyecto, cuáles son sus objetivos a corto, mediano y largo plazo, en qué aspectos del proyecto se deben centrar los mayores esfuerzos, o cómo descubrir los puntos fuertes y débiles del mismo, entre otras cosas. En general se distinguen muy fácilmente los casos extremos. Por un lado, proyectos respaldados por grandes organizaciones que toman decisiones en grupo, luego de discusiones (que pueden ser formales y protocolares, o simples encuentros en una sala de chat o mediante envío de mails informales en listas dedicadas). Estos proyectos suelen tener una buena estructura jerárquica, objetivos claros en varios frentes a largo plazo bien documentados, a veces intereses políticos, etc. Por otro lado están los proyectos pequeños, que empiezan una o unas pocas personas, y que básicamente suelen seguir los caprichos de esas pocas personas, o guiarse por sus necesidades e intereses particulares. En el medio de todo esto, está la gran mayoría de los proyectos, y hay tantas y tan diversas variantes que no se me ocurre ni cómo agruparlas.

domingo, 4 de noviembre de 2012

Compilar la versión del repositorio en Windows

En el artículo anterior expliqué los pasos para instalar todo lo necesario y compilar la versión de ZinjaI o PSeInt de los repositorios git en GNU/Linux. En este voy a comentar cómo hacerlo en un sistema Windows. Ya saben que vamos a necesitar el compilador, unas cuantas bibliotecas, git, y algo de paciencia.

Lo primero que vamos a instalar entonces son las herramientas para compilar: compilador y bibliotecas. Se puede intentar instalar todo (MinGW y wxWidgets mínimamente) por separado, pero requiere de muchos pasos. La forma más sencilla es hacer una instalación completa de cualquier versión no tan vieja de ZinjaI, ya que el instalador de ZinjaI incluye casi todo lo necesario. Entonces, vayan al sitio de ZinjaI, a la sección "Descargas", click en "Descargar el instalador para Windows", y luego de esperar unos segundos ejecuten el instalador. En el asistente de instalación de ZinjaI deben tener la precaución de seleccionar todos los componentes en la tercera página (a esto me refería con "completa", "wxWidgets" y "OpenGL" serán necesarios y no están seleccionados por defecto).

jueves, 1 de noviembre de 2012

Compilar la versión del repositorio en GNU/Linux

Para los inquietos e impacientes que quieren probar lo último de lo último, para los curiosos y corajudos que quieren ver y meter mano en los oscuros rincones del código fuente, para los que están en trabados por un bug que necesitan resuelto para ayer, para los que están aburridos, y para cualquiera que quiera colaborar o simplemente meter la nariz tras bambalinas; para todos ellos están los repositorios git. git es el sistema de control de versiones que utilizo en mis proyectos. Estos repositorios contienen el código fuente tal cual está ahora en mi PC, siempre actualizado con los últimos cambios y retoques, mucho antes de que estos aparezcan bonitamente empaquetados en una nueva versión oficial en la sección descargas. Yo lo utilizo como si fuese centralizado (aunque uno de los puntos fuertes de git es su gestión distribuida), y la versión que hay en los servidores de sourceforge es la que considero máster. Cada cambio que hago en mi PC va a parar casi inmediatamente allí.

Pero muchos usuarios no han usado nunca un software de control de versiones, o no están familiarizados con el proceso de compilación mediante makefiles y la configuración del entorno. Por ello, voy a explicar desde cero en un par de posts como preparar todo y compilar ZinjaI o PSeInt (los pasos son los mismos) desde los fuentes de estos repositorios, tanto en GNU/Linux (en este artículo) como en Microsoft Windows (en el próximo). Así, cuando comente en el blog que tengo alguna funcionalidad nueva en desarrollo, ya saben donde tienen que ir a buscarla si no quieren esperar, o si quieren ayudarme a testearla.