V congreso Olivares2000

El pasado fin de semana se celebró el V Congreso de la Asociación de Programadores xBase Olivares2000 bajo el título de «Presente y futuro de la programación xBase». Yo no se si José Alfonso tiene una bola de cristal, pero no ha podido acertar más.

En el congreso se presentaron herramientas que están a la vuelta de la esquina y que van a constituir el camino a seguir por los programadores xBase en los próximos años. Todos estábamos expectantes ante la evolución de Harbour y xHarbour, pero lo menos que puedo decir es que C3 irrumpió como un elefante en una cacharrería. Bruno Cantero nos dejó a todos pasmados con su trabajo y sus conocimientos. El sólito ha hecho su propio compilador compatible con Clipper y tiene a punto de terminar su propio enlazador. C3 es capaz de generar código de 16 y 32 bits y además no va a necesitar herramientas externas. Bruno ha marcado la última semana de Agosto como la fecha en que tendrá terminado C3 al 100{480d580d36768405d93963bdd82c570c8132a231e8d2b870ef0b18322d1f72b2}, RDD CDX nativo incluido. Tremendo. Pero es que además Bruno ha comenzado su propio GUI para C3 y mostró una versión preliminar de lo que será su IDE. Atentos a C3 que la cosa promete.

El otro protagonista estelar del congreso fue Xailer, que es un nuevo GUI que pretende soportar cualquier compilador xbase de 32 bits y convertirse en la herramienta de desarrollo lider de este entorno. Conozco Xailer porque formo parte del equipo de desarrollo y lo único que puedo decir es que tiene una pinta estupenda. El GUI está muy bien hecho, y digo esto desde mis limitados conocimientos ya que el nivel del grupo principal de desarrollo – José Gimenez, Ignacio Ortiz y José Lalín – tienen un nivel que parecen de otro planeta. Xailer apuesta muy fuerte por el desarrollo con herramientas visuales y ya hay desarrollado un editor de código que incorpora gestión de proyectos y que se integrará en el IDE. Algo realmente bueno.

El resto de conferencias fueron realmente buenas y el nivel de los ponentes muy alto. Me gustó especialmente la de Manuel Calero sobre Programación Extrema, que es una metodología que considero que aporta una visión distinta y válida a la Ingeniería de Software tradicional. Pude compartir dos estupendos dias con colegas que ya son amigos y tuve la oportunidad de conocer por fin a René Flores.

Sin embargo el congreso me dejó un regusto amargo. Hay dos herramientas poderosas a la vuelta de la esquina, que son C3 y Xailer, pero si los dos equipos de desarrollo llegaran a un acuerdo para acercar sus posturas y los dos GUI confluyeran en uno, estoy convencido de que tendriamos una herramienta a la altura de las mejores. Creo que el sentir de todos los asistentes ha sido el mismo: el futuro es bueno, pero si José, Ignacio y Bruno se sentasen a hablar y decidiesen unir fuerzas estoy seguro de que el futuro de los programadores xbase sería mucho mejor.

el marketing del enfoque

Via el foro de debate de JoelonSoftware, auténtica mina de oro para los desarrolladores de software, y despúes de dos piruetas en Google:

La fórmula vieja de hacer cosas diferentes, servir a muchos segmentos de mercado -o no tenerlos bien definidos- y tener un enfoque abierto, ya dejó de funcionar. El futuro será para los que hacen una sola cosa diferente al resto, sirven a pocos segmentos de mercado y tienen un enfoque definido.

El marketing del enfoque

el editor de código ideal

Desde hace bastante tiempo uso MED como editor de código. Es un editor ligero, potente y configurable. Antes de dar el salto a Windows usaba Multiedit con Evolve y tengo que decir que este duo era una auténtica maravilla. La verdad es que deje de usar MultiEdit por una tontería, no me gustaba nada su look para Windows y no conseguí una demo de Evolve, además de que era bastante más caro que otras herramientas.

Mirando herramientas para Delphi a raiz de un enlace a un editor de recursos en un foro de FWH he visto una suite de componentes para el IDE llamada castalia que hace Structural Highlighting, que es algo como esto:

castalia.gif

¡ Que pasada !

volcado de enlaces

La semana que viene estaré en Burgos por cosas de trabajo y veo difícil publicar desde allí, así que os dejo unos cuantos enlaces a documentos interesantes para que os entretengais un poquito.

Sobre gestión de proyectos:

  • Gestionar proyectos IT con éxito – PDF 34 páginas.

Sobre programación extrema y metodologías ágiles:

  • La teoría del caos y la XP – PDF 9 páginas.
  • Ventajas económicas en la limitación horaria en el desarrollo de software – PDF 8 páginas
  • Aprendiendo del desarrollo de software ágil, parte 1 – PDF 12 páginas.
  • Aprendiendo del desarrollo de software ágil, parte 2 – PDF 11 páginas.

Y por último recomendaros uno de mis weblogs preferidos: hiperespacio. No sólo de software vive el programador.

comentarios y foro de debate

Esta última semana he estado personalizando un foro de debate similar al de Joel on Software que me bajé de John’s Adventures. Espero tenerlo listo y ponerlo pronto en marcha.

Creo que un foro de debate en un weblog juega un papel muy importante, ya que permite a los visitantes del blog interactuar entre ellos al margen de los post que se vayan publicando en el blog. De hecho el foro anima mucho el blog ante la ausencia de post. En Joel on Software pasa algo asi. Hay veces que Joel está semanas sin publicar nada, pero muchos nos pasamos por allí para leer el foro. Algunos de los hilos son superinteresantes, te recomiendo encarecidamente que visites el foro de Joel regularmente.

Por otra parte los comentarios a los post permiten a los visitantes comentar directamente lo que se escribe en el blog, cosa que tambíen está muy bien.

Así que no tengo claro es si quitar los comentarios de los post y remitir siempre al foro o dejar las dos cosas en marcha. Tu que harías ¿ mantener foro y los comentarios a los post ? ¿ quitar los comentarios y dejar unicamente el foro de debate ? ¿ no poner el foro y seguir unicamente con los comentarios ?

Se aceptan sugerencias.

¿ dónde ponemos los botones ?

dónde adv. interrog. ¿ en qué lugar ? Diccionario del español actual

Dedicado a Jaime Irurzun Graña

Uno de los principales objetos de un interfaz gráfico de usuario son los botones de comando. Suelen tener forma rectangular con una etiqueta descriptiva y al pulsarlos el programa ejecutará una acción determinada. Pero… ¿ dónde los ponemos ?

La ubicación de los botones en una ventana secundaria es algo fundamental, pues normalmente son los elementos más importantes de la misma. Pensemos en cualquier dialogo de un mantenimiento: el botón Aceptar nos permite almacenar la información introducida y el botón Cancelar nos permite descartar la información introducida en el diálogo y salir de allí sin grabar nada.

Uno de los principios del diseño de interfaces dice que una ventana debe leerse como se lee un libro, en las lenguas occidentales esto supone leer la ventana de izquierda a derecha y de arriba abajo. Pensemos lo que debe hacer un usuario en un diálogo de mantenimiento: deberá recorrer el diálogo introduciendo sus datos y una vez finalizada la introducción de datos deberá guardar esta información. Los botones de comandos finalizan el dialogo por lo que parece claro que su ubicación es en la parte baja del diálogo. Además, si nos fijamos en cualquier diálogo de Windows, veremos que cuando los botones aparecen abajo se ajustan a la derecha.

20030523a.gif

Debemos fijarnos en los detalles. El botón Aceptar siempre va a la izquierda del botón Cancelar, y si hay más botones normalmente se situarán a la derecha del botón Cancelar.

Pero… ¿ qué pasa si necesitamos más botones ? Lo que no debemos hacer nunca es poner dos filas de botones. La solución pasa por ponerlos en vertical a la derecha del diálogo. Algo como esto:

20030523b.gif

Aquí estamos siguiendo el principio de leer el diálogo de izquierda a derecha y de arriba abajo. Primero elegiremos la materia que deseemos y luego pulsaremos el botón de comando. Si la materia que deseamos está disponible haremos click en Aceptar, y si no la daremos de alta pulsando el botón Nuevo o haremos cualquier otra acción.

Una cosa que no me parece apropiada es situar botones de comando a la derecha de un diálogo o ventana. Entonces ¿ el siguiente formulario está bien diseñado o está mal ?

20030523c.gif

Pues… mitad y mitad, me explico. La secuencia correcta debería ser interactuar primero con la rejilla de datos y luego con los botones de acción, por lo que estos deberian estar a la derecha. Sin embargo en ventanas que ocupan toda la pantalla – como el Explorador de Windows – estamos acostumbrados a tener las rejillas de datos a la derecha. El caso del Explorador es diferente de una ventana de un mantenimiento pues lo que tiene el Explorador a la izquierda es un árbol que va desplegando el contenido de las ramas a la derecha, y ahí si se respeta la lectura de izquiera a derecha. En el caso que nos ocupa, muchos programas de gestión – creo que el primero de todos fue Microsoft Money – usan interfaces de este tipo, con lo que constituyen un estandar de facto y los usuarios de este tipo de software esperan encontrar el menú de acciones a la izquierda.

Yo unicamente uso botones a la izquierda cuando los agrupo en una barra de botones. Si tengo que poner botones sueltos, como en el diálogo de selección anterior, siempre los pongo a la derecha.

Conclusión:

  • Aceptar y Cancelar abajo a la derecha y en este orden.
  • Si los botones de un diálogo no te caben abajo, ponlos a la derecha, nunca pongas dos filas de botones.
  • Si vas a agrupar los botones en una barra, ponlos a la izquierda.

escritorio gorilla en XP

Una de las cosas que más me gustan es la personalización de escritorio. Muchas veces voy a ver a mi amigo Emilio a la UA por ver cómo tiene su escritorio, y más de una vez me he muerto de envidia al ver la personalización que admiten los escritorios de Linux. Uno de los que más me ha gustado siempre es el escritorio gorilla de Jimmac.

Después de muchas vueltas, mucho buscar en Google, rebuscar en muchos foros de debate he conseguido que mi escritorio tenga este aspecto:

20030517.gif

El port del tema está muy bien conseguido, sobre todo usando iconos grandes en una pantalla de 1024*768. En la imagen se ve que las aplicaciones de 32 bits – como Colossus – toman el tema perfectamente. Sin embargo el precio a pagar es alto: hay que cambiar unas DLL del sistema y un ejecutable – el explorer.exe – y no se yo lo estable que será esto. Ya lo contaré, pero de momento estoy contento.

Si alguien quiere experimentar, aquí dejo los enlaces para que se pueda instalar el escritorio gorilla sobre Windows XP:

Voy a enviar un correo a Emilio para que lea este post…

De Vannevar Bush a la WWW

De Vannevar Bush a la WWW
Núria Almiron
Edicions 3i4
ISBN 84-7502-630-3
Idioma: Catalán

En este libro Núria Almiron hace un recorrido por la historia de las interfaces hombre-máquina desde la primera concepción del las conexiones no lineales de información hasta la WWW. De esta manera va narrando los origenes de todos los hitos y logros importantes de la humanización de los interfaces, acercándonos a sus autores y remarcando la importancia de cada uno de ellos.

Personajes como Vannevar Bush, Douglas Engelbart, Ivan Sutherland, Ted Nelson, Alan Kay o Jef Raskin. Máquinas como el Alto, Star, Lisa, Mackintosh, Atari ST y Commodore Amiga. Todos ellos han contribuido de manera sobresaliente a la humanización de nuestra relación con los ordenadores y son auténticos desconocidos para la inmensa mayoría de usuarios y profesionales de las Tecnologías de la Información.

Este libro es una auténtica joya. Está escrito en catalán, lo que limita ciertamente su difusión, pero espero pronto verlo editado en castellano pues realmente estamos ante un libro fundamental para entender un poco mejor la evolución de una de las materias fundamentales de las Tecnologias de la Información: la HCI o interacción hombre-ordenador.

III Congreso de Olivares2000

La Asociación de programadores Xbase Olivares2000 va a realizar su III Congreso anual los próximos dias 14 y 15 de Junio en Madrid. Se van a presentar diversas ponencias sobre actualidad del entorno Xbase, de las que destacan la presentación de C3 por Bruno Cantero y el debate sobre GUI para [x]Harbour, que espero que ayude a clarificar el horizonte a todos los asistentes. Y la ponencia de Manuel Calero sobre Programación Extrema, que no me la pierdo…

Espero poder asistir y ver a muchos amigos, ponerme al dia de proyectos y hacer conversaciones de pasillo, que es donde te enteras de las cosas importantes.

Si estás interesado en asistir tienes más información en la web de Olivares2000.

la práctica de la programación

Además de saber programar en un determinado lenguaje, la práctica de la programación requiere otra serie de habilidades para enfrentarse a la realización de un programa.

En Como NO realizar una práctica de programación se aborda en tono jocoso algunos malos hábitos que podemos tener a la hora de programar. Aunque el texto va dirigido directamente a alumnos universitarios de asignaturas de programación, si eres un programador experimentado también harás bien en leerlo. Te aseguro que pasarás un buen rato leyéndolo.

réplica de Antonio Linares al post ‘atando cabos…’

El pasado 10 de Marzo escribí un post en software* sobre la ruptura de la relación entre Antinio Linares e Ignacio Ortiz. Hoy me ha llegado un correo de Antonio que reproduzco literalmente a continuación:

Hola Jose Luis,

Estaba leyendo algunos artículos y comentarios tuyos
en tu nuevo site y el anterior cuando he encontrado esto 🙂

>>
10.mar.2003

Estaba yo este fin de semana dándole vueltas a la cabeza acerca de la
situación actual en que nos encontramos la comunidad de programadores
[x]Harbour. Tras la ruptura de A.L. con O.Z., el acuerdo de A.L. con Grupo
SP es lo peor que nos podía pasar: significa que vamos a tener más de lo
mismo durante mucho tiempo. A.L. dice que eso significa la continuidad del
producto, pero yo pienso que si A.L. tiene unos ingresos fijos de SP se va a
dedicar a vender humo otros 5 años y no va a hacer ni puñetero caso de las
demandas de nuevas funcionalidades para FWH asi como támpoco va a aparecer
por los grupos de news – que siguen alojados en el servidor de I.O.Z.,
válgame Dios -.
>>

Las conclusiones a las que llegas no son correctas, ya que partes
de premisas erróneas:

1. «el acuerdo de A.L. con Grupo SP es lo peor que nos podía pasar»

Desde que se firmó ese acuerdo, Grupo SP ha detectado más bugs en FWH
que ningún otro usuario de FWH. Es por esto que ya he publicado una
nueva actualización del FTDN para Mayo (_puntualmente_, algo que OZS
nunca hizo). En dos meses escasos FWH ha mejorado muchísimo gracias al uso
intensivo de FWH por parte de Grupo SP.

Y no solamente se está beneficiando FWH (y los usuarios de FWH), sino
que tambien han detectado bastantes bugs críticos de Harbour que ya
se han solucionado (en tiempo record).

2. «yo pienso que si A.L. tiene unos ingresos fijos de SP»

Aunque no tengo porqué dar detalles, estás equivocado.
En mi acuerdo con Grupo SP no hay ningún tipo de ingresos fijos.

No voy a publicar el acuerdo que hemos firmado, pero si vienes
por Marbella, gustosamente te lo mostraré para que lo leas.

Y precisamente la decisión de no cobrarles nada ha sido mia,
porque estoy convencido que las mejoras para FWH y Harbour van
a compensar con creces «un sueldo», a la vez que mantengo mi
libertad y mi independencia al no ser un «asalariado» 🙂

3. «A.L. … se va a dedicar a vender humo otros 5 años»

No creo que FWH sea humo, ni que el proyecto Harbour (gracias
al cual nace xHarbour, de paso) sean humo. Son el resultado de
mi trabajo (junto al de otros) y de mi iniciativa. Ha costado
mucho trabajo construir Harbour y FWH.

4. «támpoco va a aparecer por los grupos de news»

En los últimos meses he aparecido mucho más, y no solo en los
de FiveWin, sino en los de Harbour (la lista de correos) y en
el de xHarbour.

5. «que siguen alojados en el servidor de I.O.Z.»

No tengo culpa de haber topado con un alguien que se ha adueñado
no muy eticamente de www.fivetech.com y de news.fivetech.com
asi como de otras cosas… Eso tiene ciertos calificativos
obvios, pero no los voy a decir. Que cada cual saque sus
propias conclusiones.

Lo que si te digo es que desde que terminé mis relaciones
con I.O.Z., me siento mucho mejor y a mi empresa tambien
le ha sentado mucho mejor, en todos los sentidos.

p.d. Te agradecería que publicases el contenido de este
mensaje en tus foros como contestación (derecho a replica)
a tu artículo. Gracias!

saludos,

Antonio Linares
www.fivetechsoft.com

Publicado queda.

Reconozco que el post fue bastante duro con Antonio, quien al fin y al cabo es el autor de Fivewin que es mi librería preferida para hacer ejecutables Windows, y tampoco quiero que esto sea una nueva guerra mundial. Asi que vamos a dejar así las cosas. Me alegro de que el tono de la contestación haya sido atento y cordial y espero ver a Antonio en la próxima reunión de Olivares2000 y podamos charlar de estas y más cosas tranquilamente.