• General,  Mono,  Tesis

    emerge -av life

    Ha pasado un buen rato, y la verdad que no ha pasado mucho en mi vida. Estoy bastante ocupado con boludeces de la facultad (trabajos, entregas, parciales, etc) y principalmente con mi tesis que dio un giro que no me esperaba :), se recorto por todos lados lo que yo tenía pensado hacer (o más bien lo que yo había entendido que tenía que hacer :D). Resumido en un párrafo de un mail en la charla con uno de mis directores de Tesis : Tal vez para resumir mi idea sobre el proyecto, lo que estarías haciendo es un «reificador de mensajes entre objetos», configurable de forma que la reificación…

  • Mono,  Oregano

    O.L.E. screencast!

    Para aquellos curiosos hice un pequeño screencast de editor de componentes. Lo nuevo respecto de mi último post es la habilidad de modificar los puntos de control de los elementos y darles nuevas y alocadas formas :). Por razones de sueño, no pude completar los puntos de control de lo elipces, por lo que no lo muestro en el video. El screencast lo hice, como siempre, con vnc2swf y está acá y pesa casi 3Mb.

  • Mono,  Oregano,  Programación

    Oregano Library Editor!

    Así como lo leen, ya estoy trabajando en un editor para las bibliotecas de componentes de Oregano. En principio para poder cambiar algunas que no me gustan mucho o que tienen detalles, después veré si la aplicación queda lo suficientemente linda como para hacerla crecer :-). Luego de una frustrada búsqueda de algún Canvas (no iba a repetir los errores del pasado y usar GnomeCanvas :-)) decidí hacer uno minimalista, que soporte las operaciones básicas que requiero : Agregar cosas, moverlas y rotarlas. Salvo esta última, las demás están andando, con soporte Group y UnGroup Y si, como ya se pueden imaginar la aplicación está escrita en C#, con Gtk#…

  • Mono

    Scary Code

    Preparándome para mi charla sobre Mono en la CTT de junio organizada por el Cafelug, me puse a jugar con un ejemplo para mostrar que, efectivamente, anda eso de mezclar lenguajes en .NET. Antes de seguir leyendo, si sufrís de nauceas, estás embarazado/a, o simplemente este tipo de cosas te impresionan, no sigas leyendo 🙂 Todo comienza con la definición de nuestra clase en C# : using System; public class ClaseCS { private int x; public int X { get { return x; } set { x = value; } } public ClaseCS (int x) { X = x; } public override string ToString () { return String.Format ("Soy ClaseCS…

  • GNU+Linux,  Mono

    Ubuntu Update

    Luego de varios días con los repositorios rotos, Ubuntu Breeze (como se llama la nueva versión de desarrollo) volvió a la vida. La novedad con la que me encontré es que han creado paquetes para Mono 1.1.X y Gtk# 1.9.x, con lo que ahora puedo probar todo eso que no podía antes, por no querer compilar Mono desde los fuentes, o sea : Beagle e iFolder. También compilé Mono UML, una herramienta CASE para generar diagramas UML y luego código (C# por ahora si mal no recuerdo), entre otras cosas. Si bien está un poco verde, los diagramas son 1000 veces más lindos que los que hace Dia. Pueden ver…

  • General,  Mono

    Ubuntu@Work

    Ayer y hoy estuve sin PC en el trabajo por culpa del micro que se quemó. Cuando tuve micro nuevo, tuve que cambiar el mother porque no lo soportaba, y con el nuevo mother algo falló y me quedé sin disco (solo lógicamente). Por lo que al tener que reinstalar, aproveché y migré a Ubuntu Linux. La tarea fue muy dificil, no por la distro, sino porque luego de 4 horas de tratar de instalarlo (pasando por pruebas con Knoppix 2.4 y 3.6, y cambio de memoria), descubrí que el mother nuevo tiene problemas con el IDE0 y por eso fallaba. En fin, ya tengo cambie el que no andaba…

  • Mono

    Ponele un TrayIcon a tu aplicación

    Es realmente muy simple hacer que nuestra aplicación use el área de notificación de Gnome utilizando Mono y C#, gracias a que Todd Bermann hace ya unas semanas escribió el módulo Egg TrayIcon enteramente en C#, liberándonos de la tortura del código en C 🙂 … realmente se implementa en unos pocos minútos, veamos. 1) Primero bajamos el archivo TrayIcon.cs que Todd Bermann ha hecho. 2) Escribimos nuestra applicación de prueba, contará hacia adelante (hasta el overflow del int) : // Namespaces que vamos a utilizar using System; using Gtk; using Gnome; using Egg; // Este namespace está definido en el archivo TrayIcon.cs // Nuestra clase de ejemplo class TrayTest…

  • Mono,  Programación

    GPuzzle

    GPuzzle es un simple programa realizado en Mono y GTK# de un viejo juego que tenía cuando era chico. El objetivo es ordenar la secuencia de números que se nos presentan, como se ven en las imágenes de ejemplo. El otro día se me ocurrió hacerlo cuando leí que Sam Loyd había comercializado un juego llamado The Fifteen Puzzle, cuyo desafío era ordenar la secuencia de números, comenzando solamente con el 14 y 15 invertidos. Claro, que años más tarde un matemático demostró que ese juego no tiene solución :-), utilizando una técnica que mide el «nivel de desorden», con lo que se deduce que para que tenga solución debe…

  • General,  Mono,  Programación

    Parche para MCatalog

    MCatalog es un catálogos de libros y películas escrito en Mono+GTK# que promete cosas muy lindas. Puede manejar préstamos de nuestras cosas y lo más lindo es que busca en Amazon toda la info del libro/película (incluida una fotito). Pero bueno, como mi ISP me obliga a usar proxy http, tuve que empezar a leer un poco del System.Net de la plataforma .NET para ver como diablos se le agrega un proxy a las conexiones HTTP. El primer intento fue exitoso, pero solo era local para el System.Web.Services.Protocols.SoapHttpClientProtocol, que tiene una propiedad que es proxy donde le asignamos una instancia de WebProxy y sale todo andando bonito. El problema es…