ZaspeSharp 0.0.2

La primera versión fue en realidad una especie de prototipo. Esta versión, que la liberé hace unos días y bajo la flamante GPLv3, se acerca más a algo usable: se pueden agregar, modificar y eliminar personas y eventos, y también ingresar las asistencias. Sin embargo todavía le falta la generación de estadísticas y reportes, que es una parte muy importante.

Funciona en GNU/Linux con Mono (yo lo estoy probando con la versión 1.2.3 que viene en Ubuntu Feisty) o en Windows con .NET Framework 2.0 y el runtime de gtk-sharp 2.10 (que se lo pueden bajar de la página del proyecto).

Si les interesa probarlo, se pueden bajar los archivos desde la página de descargas del proyecto.

Una aclaración para el uso: cuando lo ejecutan, verán al inicio la lista de asistencias vacía. Para que se habilite tienen que ingresar por lo menos una persona, y por lo menos un evento anterior a la fecha actual (ya que no tiene sentido ingresar las asistencias para un evento futuro). Si a alguien le es útil algo así, y tiene ideas para mejorarlo, por favor, están invitados a dejar un comentario en este post, o un issue.

Mono/.NET: No importa el lenguaje

Una de las cosas que vamos a probar en el trabajo práctico de implementación de Administración de Recursos, es qué tan cierto es eso de que Mono/.NET es independiente del lenguaje.

Bueno, estuve haciendo unas pruebas con Python y C#. Hay una implementación de código abierto (bajo la licencia de Microsoft Ms-PL) del intérprete de Python escrita en C#, que permite ejecutar estos programas compilando el código Python a CIL (el código intermedio). También tiene una consola, como Python, y es posible utilizar toda la biblioteca de .NET. Se llama IronPython.

Esta implementación, en su versión estable actual 1.1, tiene compatibilidad con CPython 2.4.4. Esto significa que un programa escrito para ser corrido con Python 2.4.4 puede correrse también con IronPython 1.1. Sin embargo no es que podemos correr cualquier cosa hecha para Python con IronPython: un juego que utiliza el módulo PyGame no funciona (por lo menos yo no pude).

Les voy a mostrar un ejemplo en el que desde Python creo una clase que hereda de otra creada en C#. Sip, ¡esto está muy bueno!

Continuá leyendo Mono/.NET: No importa el lenguaje

Día del amigo

Un amigo fiel es un refugio seguro; el que lo halla ha encontrado un tesoro. ¿Qué no daría uno por un amigo fiel? ¡No tiene precio! Un amigo fiel es como un remedio que te salva; los que temen al Señor lo hallarán. El que teme al Señor encontrará al amigo verdadero, pues así como es él, así será su amigo. Sir 6, 14-17.

Y ¿quién es mi prójimo?

Se levantó un legista, y dijo para ponerle a prueba: «Maestro, ¿que he de hacer para tener en herencia vida eterna?» Él le dijo: «¿Qué está escrito en la Ley? ¿Cómo lees?» Respondió: «Amarás al Señor tu Dios con todo tu corazón, con toda tu alma, con todas tus fuerzas y con toda tu mente; y a tu prójimo como a ti mismo». Díjole entonces: «Bien has respondido. Haz eso y vivirás». Pero él, queriendo justificarse, dijo a Jesús: «Y ¿quién es mi prójimo?» Jesús respondió: «Bajaba un hombre de Jerusalén a Jericó, y cayó en manos de salteadores, que, después de despojarle y golpearle, se fueron dejándole medio muerto. Casualmente, bajaba por aquel camino un sacerdote y, al verle, dio un rodeo. De igual modo, un levita que pasaba por aquel sitio le vio y dio un rodeo. Pero un samaritano que iba de camino llegó junto a él, y al verle tuvo compasión; y, acercándose, vendó sus heridas, echando en ellas aceite y vino; y montándole sobre su propia cabalgadura, le llevó a una posada y cuidó de él. Al día siguiente, sacando dos denarios, se los dio al posadero y dijo: “Cuida de él y, si gastas algo más, te lo pagaré cuando vuelva.” ¿Quién de estos tres te parece que fue prójimo del que cayó en manos de los salteadores?» Él dijo: «El que practicó la misericordia con él». Jesús le dijo: «Vete y haz tú lo mismo».

Lucas 10, 25-37

Continuá leyendo Y ¿quién es mi prójimo?

Cambiar

Hay un lamento que se escucha por todas partes: ¡los tiempos que vivimos son duros, pesados y miserables! Vivamos rectamente y cambiaran nuestros tiempos. Los tiempos no hieren a nadie. Los heridos son hombres; los causantes de las heridas, hombres también. Cambiemos nosotros, los hombres, y cambiaran nuestros tiempos.

Las palabras son de San Agustín (Sermón 311,8,8)

ZaspeSharp con Prebuild: vos elegis el IDE

En ZaspeSharp (antes se llamaba Zazpe), comencé a utilizar Prebuild como herramienta para independizarme del IDE.

ZaspeSharp es un programa muy simple para manejar las asistencias de personas a determinados eventos, y apunta, en un futuro, a generar una variedad de informes sobre estos datos. Está desarrollado con C#, principalmente en Mono bajo GNU/Linux. Sin embargo también funciona bajo Windows con el .NET Framework 2.0. En éste último caso es necesario bajarse el runtime de Gtk# 2.10, que se encuentra en la página de descargas en la web del proyecto.

Ojalá sirva para alguien más que para el director del coro Monseñor Zaspe. Supongamos que alguien se interesa en el proyecto y desea hacer unas modificaciones. Esta persona conoce mucho sobre la plataforma .NET, y es programador C#. Trabaja en Windows con SharpDevelop. Imaginemos cuatro personas más similares a esta última: la primera maneja muy bien Visual Studio 2003 y es el que usa; la segunda tiene Visual Studio 2005; la tercera trabaja en GNU/Linux con MonoDevelop; y la cuarta prefiere modificar los archivos de código fuente con GVim y compilar con NAnt o las Autotools. ¿Cómo satisfacer a todas ellas?

Continuá leyendo ZaspeSharp con Prebuild: vos elegis el IDE