This happens when you are a Jaws developer..

Un poco de Jaws

El día de hoy me dedique a cerrar algunos //bugs// de Jaws para su próxima liberación, de hecho no fueron bugs los de hoy, sino una serie de cosas que platicamos ion, imcsk8 y yo en el Consol 2005, en una plática //express// .

Para aquellos que quieran probar Jaws, pensamos liberar la versión beta dentro de dos o tres semanas y la final una o dos semanas después. La razón por la que no vamos a liberar la versión final de golpe es para que reporten los errores y se hagan las traducciones necesarias, ya que si no lo hacen.. pues la próxima versión sería hasta el siguiente año tongue.png , no, no se crean, pensamos que después de la versión 0.5, las otras versiones saldrán cada dos meses para que tengamos Jaws 1.0 poquito antes o después del Consol 2006.

Los cambios que faltan son mínimos, que es darle una 'pasadita' al gadget //Menu// y ion quiere hacerle unos cambios al gadget de //Faq// (nuevo).

Entre las monerias que tiene Jaws y algunos nos han pedido es la autentificación de usuarios, ahora contamos con unas cositas que se llaman: //AuthScripts// , que no son mas que archivos de una sola función que validan el usuario y password de distintas formas, por ejemplo en el ITESM Santa Fe usamos Jaws en la Dirección de Informática, actualmente estoy desarrollando una serie de gadgets (+-6) para administrar cositas de Cisco con el uso de SNMP. Y para validar a los usuarios usamos LDAP y no la base de datos, lo único que importa de los AuthScripts es que regresen true o false face-smile.png .

Otro de esos //features// es el uso de Omni (nuestro manejador de Sesiones, hecho por imcsk8) para manejar el //LastResponse// , es decir, cada cosa que se hace en el gadget se puede guardar y luego extraerla, es útil, ya que por ejemplo en la versión anterior (0.4) cuando agregabamos una entrada al //Blog// y le dabamos //reload// (F5) en el browser nos volvía a hacer el //request// , con LastResponse ya no sucede pues guardamos la respuesta y luego usamos la función //header// .. así podemos recuperar la respuesta sin cualquier bronca.

Ahora pueden ver que la espera de un año vale la pena face-smile.png . Incluso, le comentaba a ion y a otras personas que yo ya no considero a Jaws un sistema para 'Blogs', pues hemos estado desarrollando Jaws para necesidades generales, así que Jaws pues pasa de ser un sistema de blogs a un //framework// para hacer gadgets de cualquier tipo (administrativos, diversión, entretenimiento, etc) y usar todas las ventajas que Jaws da:

  • Manejo de sesiones compartido (web, webservices, celulares)
  • Un registry muy al estilo de gconf
  • Instalación y UI amigable con el usuario, uno se tiene que dedicar únicamente a desarrollar su gadget y el 'motor' de Jaws lo hará bonito y todo sea con el uso del mouse.
  • Autentificación de usuarios de distintas maneras (Base de Datos, LDAP, POP3, etc.)
  • Y la facilidad que piwi da para el manejo de Widgets sencillos (botones, cajas de texto) o vanzados (hbox, vbox, grids, forms, validadores, fieldsets, etc).

De hecho yo ya consideraría estable a Jaws, pero nos faltan detallitos que hemos ido dejado por el tiempo. Vamos a necesitar unos cuantos beta testers por una o dos semanas para que usen Jaws y estar arreglando los bugs (no nuevos features) que salgan.

Tantos features que sólo falta que alguien nos suelte una lana para hacer Jaws en ASP.NET tongue.png .

Por cierto, mientras le daba commit a todos mis cambios, creo que el script de SourceForge para la lista de commits 'tronó', pues cuando iba por el commit del archivo #23...

Mailing jaws-project-commits_at_lists_dot_sourceforge_dot_net_dotdotdot_
Generating notification message...
Traceback (most recent call last):
File "/cvsroot/sitedocs/CVSROOT/cvstools/syncmail", line 433, in ?
main()
File "/cvsroot/sitedocs/CVSROOT/cvstools/syncmail", line 426, in main
contextlines, fromhost, replyto)
File "/cvsroot/sitedocs/CVSROOT/cvstools/syncmail", line 253, in blast_mail
resp = conn.sendmail(address, people, s.getvalue())
File "/usr/lib/python2.2/smtplib.py", line 654, in sendmail
if not (200 <= self.ehlo()[0] <= 299):
File "/usr/lib/python2.2/smtplib.py", line 384, in ehlo
(code,msg)=self.getreply()
File "/usr/lib/python2.2/smtplib.py", line 335, in getreply
raise SMTPServerDisconnected("Connection unexpectedly closed")

Y casi nada de Debian

El día de ayer por fin encontramos un Debian Developer que estuviera dispuesto a ayudarnos a subir los paquetes mientras que Eduard Bloch termina sus estudios face-wink.png .

El día de ayer subimos XSP a unstable (versión 1.0.5, y la última 1.0.x) y en la semana le toca a libapache-mod-mono y prj2make-sharp, que son los paquetes que mantengo.

De hecho es la última versión que subimos de la saga 1.0.x de Mono. Miguel nos convenció y comentó que la saga 1.1.x es mucho más estable y con más features que la 1.0.x. Así que las siguientes versiones serán de la saga 1.1.x face-smile.png , aparte de hacernos sugerencias y recomendaciones sobre nuestros paquetes y fallas que les ha encontrado.

Me gustó mucho que se haya tomado esa decisión, pues yo no creía que fuera a ser posible pues gran cantidad de debianeros tienen la idea que ellos son perfectos en su trabajo y de cabeza cuadrada tongue.png , así que ya voy a poder probar otras versiones de Mono face-smile.png