lunes, septiembre 26, 2005

Ahora sí

He terminado todas las actualizaciones necesarias para tener las mismas características que antes teníamos, corregí algunos cambios bugs por ahí y además actualizé la parte del Notebook de diagramas, ahora (¡¡por fin!!) ya funciona como las demás vistas, creo que lo siguiente será documentar esta forma de trabajo para que sepamos como esta ahora, y por si más adelante es necesario agregar alguna nueva, lo dudo, pero podría ser.

Este nuevo cambio trae mejoras: como la más legible implementación de cómo es que la parte de los diagramas en el Notebook, además que ahora, los mensajes de los diagramas en sí son pasados a sus contenedores y no como antes estaban, ahora las Toolbar de cada diagrama son individuales e independientes, además de que forman parte del Wiget de la NotebookPage, el cambio es notable:

Diagram current   Older diagram

A seguir, no queda más que eso.

svn update

domingo, septiembre 25, 2005

¡Eso!

Este fin de mes hemos estado muy trabajadores, y nos hemos propuesto agregar nuevas características (o al menos eso creo yo):

  • Iniciar (¡¡y terminar!!) el nuevo canvas lo más pronto posible, yo digo que un buen Canvas, bonito, usable y que tenga buena integración nos tardará algo, al menos 2 años, claro, si alguien más contribuye, seguro será más rápido.
  • Agregar la opción de los tipos de proyectos de algún tipo de tecnología en particular (.NET, J2SE, PHP, Python, etc) más visibles, creo que ahora sólo el equipo sabe de su utilidad, y es una excelente idea.
  • La parte que contiene los diagramas (el Notebook), debe ser editada, ahora la nueva forma de envío de mensajes entre las vistas lo requiere, ahora esta como estaba antes, y sirve, pero no sirve de la forma correcta, la idónea.

Ahora con la herramienta que escribió Rodolfo, la cual paso de ser una hard coded class a código para ser utilizado independientemente (para los verdaderos hackers que no requieren más que una terminal :P) creo que sería una excelente idea hacer lo mismo para cada opción que ahora tenemos en MonoUML, podríamos tener la generación de código y la generación de documentación (¡que pronto estará!) desde comandos independientes a la aplicación en sí.

Ya uní el evento del Drag and Drop, ahora ya esta todo de nuevo a la normalidad, pero aun me siguen inquietando algunos bugs raros que suelen pasar en ocasiones, en fin, seguiré probando.

Class diagram    Use case diagram

¡Y sí! Por fin, tengo algo de efectivo para poder salir de viaje... casí no es nada, pero no se como le hago que siempre consigo...

jueves, septiembre 22, 2005

Uno menos

Un pequeño bug aplastado.

Code generation   Code generation

Por supuesto que era un claro problema de usabilidad. Pero no más. Ahora hay un bug menos en la lista de espera.

Por cierto... que porquería es el MS Internet Explorer, no puedo creeer como es posible que la gente lo utilize... en fin.

miércoles, septiembre 21, 2005

Listo

Listo, después de casi un mes (¿o fue más?) de trabajo duro, repaso detallado del código y desveladas bien divertidas, he reemplazado la vieja versión del Tree (y demás cosas) con la nueva versión, esta nueva versión reemplaza cosas que no permitían usabilidad en la creación de diagramas.

En este proceso de depuración he desconectado algunos eventos, para hacer pruebas, la parte del Drag and Drop del ModelTree al Canvas ha sido desactivada temporalmente, este fin de semana terminaré ello, además de una limpieza a fondo de la parte del Notebook de los diagramas para que todo este de acuerdo a lo ahora realizado.

Creo que los principales cambios incluyen

  • Ordenamiento de los elementos.
  • Usabilidad en diagramado.
  • Reducción de uso de memoria.
  • Utilización de Nini para configuración, a diferencia de lo que había escrito antes, no será utilizada de la forma "mcs -pkg" sino que esta incluida en bin/ en el svn.
  • Dependencia de Gtk# 2.5.9.
  • Dos árboles, uno para modelos y uno para diagramas.

Con esto ahora ya estamos todos al corriente con los fuentes, de esta forma podremos ayudar a Manuel con la implementación de Canvas# que después evolucionará a UMLCanvas# para avanzar más rápido y tener una aplicación agradable y usable en menos tiempo, este sin duda, a mi punto de vista es un gran cambio :). Faltan detalles ¡claro! pero menos sin duda.

Ahora sólo espero mi pago de aquel viejo proyecto, para irme tranquilo de viaje, no tengo más preocupaciones, salvo la interminable lista de TODO que escribí ahora mientras implementaba esta nueva versión, hay buenas ideas, con el avance del tiempo se irán implementando, aunque ahora mi prioridad es seguir optimizando el mensajeo entre las vistas, además de cerrar los bugs que ahora tenemos.

¡A trabajar!

Por cierto, que bonito esta el libnotify

Updates!

lunes, septiembre 12, 2005

¡Nini y más!

Estoy casi a punto de terminar, falta muchísimo menos para hacerlo, pronto daré commit y aproximadamente unas 20+ clases serán modificadas, le he metido muchísima mano a la parte de MonoUML.Widgets, ahora esta todo mejor, me falta hacer un poco más de pruebas y todo quedará listo, he agregado unas cosas extras, las más importantes incluyen el reemplazo de los Widgets Gnome.About por Gtk.AboutDialog y Gnome.IconList por Gtk.IconView, agregando con esto una dependencia a la versión 2.5.9 de Gtk#, podría parecer algo extremo tomar esta librería en estos momentos, pero creo que hoy en día la mayoría de las distribuciones traen Gtk+ 2.6, aunque claro, ahora se tendrá casi obligatoriamente que compilar pues aun no existe paquete binario, no dudo que en un rato salga la versión precompilada, así que no hay porque sufrir.

Además he agregado una librería llamada Nini para manejar configuraciones, reemplazando a GConf#, todo esto con la idea de poder en algún momento hacer más portable MonoUML y hacerlo funcionar en otras plataformas, inclusive hice un simple paquete para que se pueda utilizar de la forma "mcs -pkg", pronto escribiré un tutorial para compartir la idea de este paquete generado con autotools.

Y además estoy a punto de terminar el proyecto con el que tanto he sufrido, por fin, faltaba la parte de reportes, pero ahora, gracias a una librería llamada JpGraph, la he logrado terminar rápidamente, esta buenísima esa librería, utiliza GD para la creación dinámica de los gráficos, lo malo es que es para PHP :-P.

Todo va quedando muy bien

Using newest tree

About MonoUML

Using newest tree

Además agregue unos detalles gráficos y de usabilidad, como la carpeta en el árbol de diagramas que se abré cuando das click y la capacidad de borrar un elemento del TreeView apretando SUPR (o DEL en teclados en inglés), y aun me faltan algunas otras.

sábado, septiembre 10, 2005

20 pesos

El día de hoy (y el de ayer) han estado extremadamente productivos, no he dormido nada :P de tanta emoción, de ver como todo va fluyendo de una forma muy agradable, estoy a punto de terminar los viejos cambios, después de ello, iniciaré con el detenido generador de documentación, ahora si no habrá excusa para documentarnos usando nuestra propia herramienta, todo quedará excelente.

Hoy salí, acompañando a mi madre a unas compras, en el viaje, me encontré un billete de 20 pesos, por supuesto que no es mucho, pero eso no es lo importante, sino el hecho de haberme encontrado algo en la calle. Todo va bien, que bueno.

Creo que descansaré un rato, para ver que se me ocurré en los sueños.

jueves, septiembre 08, 2005

Soberbio

No hay palabras para describir el nuevo GNOME, no soy fanático, pero hay que reconocer el excelente trabajo que han hecho los hackers de GNOME, ahora con Cairo, las cosas se ven tan nítidas, todo se ve, tan genial, o igual es la emoción :P

En Ubuntu un simple apt-get dist-upgrade y esperar un buen tiempo mientras se actualiza, basta, en otras posiblemente pronto este disponible.

Hablando en cuestión a Ubuntu, todo va bien, aunque mi tarjeta inalámbrica se queja y hace que se alente el sistema en general, no se si es el kernel o que, tendré que hacer unas buenas pruebas para ver que pasa.

GNOME About

Nautilus

Services

Por cierto, retiro lo dicho, ya esta el GNOME 2.12 en Ubuntu.

miércoles, septiembre 07, 2005

GNOME 2.12

Hoy ha sido liberada la nueva versión de GNOME, creo que esta noche me pasaré a Breezy para ver que tal va, por supuesto que aun no esta la recién salida 2.12, pero debe estar la GNOME 2.11, ahora en esta nueva versión hay cosas muy interesantes.

Por otro lado, José Ramón esta uniendo MonoDevelop y MonoUML para hacer autómaticamente modelos a través de la escritura de código y viceversa, seguro será una maravilla cuando se termine todo, una integración con MonoDevelop ayudaría considerablemente a cualquier desarrollador, inclusive hizo una entrada en nuestro planet, aunque si creo que será algo complejo lograr una buena integración, y que "mágicamente" se generé todo, pero será bueno de ver y lograr.

Mientras a seguir trabajando por una buena y útil herramienta.

viernes, septiembre 02, 2005

Gnome.Canvas en MS Windows

Leyendo la lista de Gtk# veo que Paulo Pires, logró lo que algunos preguntaban tiempo atrás: Gnome.Canvas en MS Windows, basta con seguir las indicaciones de su sitio para lograrlo, lo bueno es que si sirve, lo malo es que sólo sirve con Gtk# 1.0, o al menos mis pruebas rápidas de 10 minutos me lo demostraron pues al intentar usar Gnome# 2.0 se queja del glue, luego con más calma se puede probar y buscar una solución. Creo que sin duda es un buen paso, un poco tarde, pues ahora Cairo esta más impulsado y Gnome.Canvas se ha quedado obsoleto, pero bueno es nostálgico.

Gnome.Canvas in MS Windows

jueves, septiembre 01, 2005

¡Uff!

Bueno, por fin... creo que fin terminaré este proyecto que ya me tiene loco, creo que al terminar podré decir que he aprendido muchísimas cosas, muy pocas tecnológicamente hablando pero muchas socialmente hablando, he aprendido hasta que punto de explotación puede llegar una persona, y el grado máximo de tolerancia, en fin, ahora a cualquier otro proyecto proveniente del mismo "lider de proyecto" sin duda responderé con un rotundo NO, ni siquiera pediré más información mi respuesta será un NO, y que pena, pues a veces crees algo de las personas cuando las escuchas hablar, contando buenas historias y diciendo cosas muy interesantes, pero que tristemente no las aplican, y se desinteresan de todo rápidamente al trabajar en un proyecto en conjunto, ¡¡¡vamos a ganar dinero haciendolo, tampoco es un juego!!! pero claro, se llevan una buena rebanada del pastel, "en casa del herrero cuchillo de palo".

A pesar de que ya pronto terminaré esto debo terminar otro proyecto que tengo atrasado, lo bueno que ese no es tan largo, además necesito dinero, se avecinan gastos y es necesario solventarlos, además ya no quiero que me esten molestando. De ahora en adelante he aprendido que primero se cobra, luego se trabaja, si quieren, si no, pues a conseguir otro, al menos en proyectos independientes, pedir una fianza por cada proyecto ahora será lo principal, eso de que te paguen cuando quieran no es útil y me molesta, más cuando exigen.

En fin, mientras más rápido termine, más rápido implementaré las cosas que estoy haciendo en MonoUML, además tengo que prepararme para la presentación ahora cercana y la presentación en mi U en Octubre, lo bueno es que después de septiembre podré dedicarme de lleno a prepararme tecnologícamente, pronto termino estudios y me gustaría certificarme, he visto varías cosas por ahí, me interesa muchísimo la de UML de la OMG, lo triste es que como siempre ando corto de dinero, pero bueno tendré que ahorrar para lograrla, y por supuesto estudiar mucho (Rodolfo me dijo que estan algo particulares las preguntas, por eso hay que ponerle todo el empeño). Además en Octubre se acerca una buena fecha, y también quiero salir de viaje, esa es una de mis motivaciones para seguir trabajando y aguantando, intento no desesperarme.

Lo bueno de todo esto es que entre otras cosas, ahora despierto temprano, aprovecho el día y ya no me duele la cabeza, lo malo es que no avanzo en cosas que me interesan y tengo que trabajar con MS Windows, no soy purista pero simplemente no me siento a gusto en ese SO, me siento totalmente extraño.

Un día más, un peso más, a continuar trabajando.