Blog jubilado de Paco Ros

Fue bonito mientras duró

Archive for 29 marzo 2006

How good code goes wrong

Posted by Paco Ros en 29 \29\UTC marzo \29\UTC 2006

He leído este post en javaHispano y lo iba a menear, pero, no. Creo que se merece antes una reflexión.

Apenas hace unas semanas que Ricardo publicó un post (y luego este y este otro) sobre lo que, según él, debía ser un buen programador. Dice algunas cosas como que el programador es un privilegiado, que no hay dinero que iguale la satisfacción de hacer feliz a un usuario y que tienen un alto reconocimiento social.

Impresionante el aluvión de críticas que recibió de un post bastante inocuo, sobre todo con el hecho de que muchos de los que comentan en él se sienten atrapados en su empresa, en unas reglas de negocio y plazos de entrega muy ajustados que hacen que su labor de programadores no sea, para nada, tan romántica como propone Ricardo.

No voy a entrar a valorar esas afirmaciones, aunque sí pienso que el hecho de ser buen programador o no no tiene nada que ver con la remuneración obtenida a cambio del trabajo o con el reconocimiento social obtenido, incluso con la felicidad obtenida por el desarrollo del software en sí.

Lo que sí me ha llamado mucho la atención es la cantidad de quejas recibidas de personas descontentas con su puesto de trabajo alegando: problemas físicos por la falta de ejercicio, problemas familiares por la falta de tiempo que dedicar a los seres queridos, problemas de calidad del software debido a los plazos ajustados… En definitiva: problemas porque están puteados en su empresa.

Gregor Hohpe, arquitecto software de Google, habla en el ServerSide Java Symposium en Las Vegas de lo fácil que es que un buen código se deteriore, se vuelva lento, buggy e ilegible.

Propone escribir código para las personas y no para las máquinas como solución conceptual a este problema.

Más allá de que tiene más razón que un santo, me sorprende la cantidad y tono de los comentarios vertidos en el enlace que publican en TheServerSide y en el propio enlace de javaHispano.

La mayoría de programadores se quejan de los mismos dolores que en el artículo de Ricardo: problemas con la dinámica del negocio, problemas con jefes incompetentes, problemas con horarios y agotamiento físico… que hacen imposible la limpieza del código, hacen imposible que el software tenga calidad.

Es decir, resumiendo, que ser programador implica necesariamente hacer más horas que un tonto sistemáticamente, hacer malos programas, pasar del usuario (el enemigo), dejar de ver a la familia, dejar de hacer deporte, dejar de tener vida social, cobrar poco y tener jefes inútiles.

Si alguien ha leido hasta aquí e iba asintiendo con la cabeza mientras leía el último párrafo, un consejo: cambia de empresa.

Reconozco que trabajar de programador para ganarse la vida (inclúyase en la definición de programador cualquier otra profesión relacionada que implique tener que tocar una línea de código aunque sea muy de vez en cuando) dista de ser tan romántico como Ricardo comentaba en su artículo.

La mayoría de personas trabajan a cambio de una remuneración económica y el reconocimiento que obtienen aparece más como consecuencia del alcance y beneficio social del trabajo realizado que por el simple hecho de tener esa profesión.

Ahora bien. La calidad del trabajo es inversamente proporcional a la desfachatez del sujeto que realiza el trabajo, y eso no tiene nada que ver con ser programador o no. Si el código es nefasto, arréglese. ¡Pues no he dedicado horas de trabajo en hacer refactoring y en mejorar, generalizar y documentar código que puede ser utilizado en otros sitios!

La satisfacción de un trabajo es el trabajo bien hecho. Los que echan horas, también lo saben y conozco a mucha gente que trabaja 10 horas de tirón porque disfrutan con lo que están haciendo. ¡Vamos! ¿Quién no se ha quedado pegado a la pantalla un rato más porque estaba a punto de terminar aquella cosa que ha estado pensando con detenimiento hasta encontrar la solución perfecta?

Claro, que, para darse cuenta de estas cosas, hacen falta años. Hace falta haber estado puteado, hace falta haber programado mal y peor, hace falta haberse retrasado, hace falta haber mantenido el código de otros. Luego, después de tanto tropezón resulta que la carrera sí servía para algo y que el mejor código es, de verdad, el que se escribe para que lo lean otros y no una máquina.

Posted in Software | 10 Comments »

Portátil con GNU/Linux instalado

Posted by Paco Ros en 29 \29\UTC marzo \29\UTC 2006

Esta vez no es una iniciativa en algún estado americano, ni un acuerdo de Linspire con Wal Mart. Ni siquiera se trata de la iniciativa de un gobierno con pocos recursos económicos o un proyecto del MIT.

En España, a la venta en esta famosa tienda on-line, Fujitsu Siemens Amilo Pro V2060 con Pentium M 1.7GHz, 512 MB de RAM, 60 GB de disco, Gigabit, WiFi, GMA900 y los típicos componentes de la plataforma Centrino en una carcasa de 2.8Kg con pantalla de 15″ (1024×768) por 737,69¤ + IVA en el momento de escribir este post y Fedora Core Linux preinstalado.

Página del producto aquí.

El mismo modelo, pero con Windows XP Home cuesta 778,15¤ + IVA. ¿Y tú? ¿Todavía pagas por las licencias que luego no usas? ;-)

Posted in Hardware, Libre, Linux, Software | 8 Comments »

Otra más de XGL

Posted by Paco Ros en 24 \24\UTC marzo \24\UTC 2006

Al final, aprovechando que tenía una Ubuntu Dapper actualizada, me metí a hacer funcionar el famoso Xgl.

Nada importante que decir de la configuración. El método que seguí está aquí. En resumen, se instalan los paquetes adecuados y se retoca la configuración de gdm.

Usé el método de crear el fichero thefuture con la salvedad de que le añadí el xmodmap al final. El fichero /usr/bin/thefuture hay que guardarlo en algún sitio (yo lo puse en /usr/bin) y darle permisos de ejecución.

Este mismo fichero se puede marcar para ejecutarlo al inicio de la sesión con Gnome (lo siento por KDE. No encontré la manera de que funcionara sin estropear el borde de la ventana) añadiéndolo en System – Preferences – Sessions – Startup Programs.

Fijaos en que le he añadido el xmodmap al final y no abriendo antes una consola como dice el tutorial. El problema es que el xmodmap.es que viene con Dapper es del año de la pera y no incluye el símbolo de euro, los céntimos de euro o las tildes graves que se usan en catalán.

Para eso he hecho unos pequeños cambios en el /usr/share/xmodmap/xmodmap.es que deberían hacer compatible el mapa con cualquier teclado español/catalán.
Ahora sí. Funciona a la perfección. Me he fijado en que al arrancar Xgl se deshabilita el Direct Rendering. Aún así el procesador está de lo más tranquilo.

Pongo este post para acordarme de todo el proceso. No os pongo imágenes. Está muy visto ya. Si queréis echarle un vistazo, tenéis capturas y vídeos (esto hay que verlo en movimiento) en la web de Novell.

Posted in Libre, Linux, Software | Leave a Comment »

Gorrón

Posted by Paco Ros en 15 \15\UTC marzo \15\UTC 2006

Hace tiempo que estoy buscando una tarjeta Wireless que se pueda poner en modo monitor y que tenga un pigtail. Si fuera una Prism2 mucho mejor.

También estoy buscando una antena direccional de la máxima ganancia posible.

Sí, necesito alcanzar un par de puntos y con mi Prism54 PCMCIA no “llego”.

Tengo pensado comprar una PCMCIA del estilo de esta o y una direccional (cualquiera de estas que apmplifique lo suficiente), pero antes querría saber qué potencia me haría falta, ya que hay bastante diferencia de precio entre unas y otras.

Suki_ me ofreció amablemente su omni, pero no tenía ninguna PCMCIA con pigtail y, además, con la omni (que es un pedazo de antena) no puedo saber exactamente qué potencia me puede hacer falta.
Si alguien me las puede prestar, con una semana o dos tendría suficiente y luego se las devuelvo. En cualquier caso, le debería unas cervecillas a esa generosa persona ;-)

Posted in Internet, Varios | Leave a Comment »

Beers & Blogs

Posted by Paco Ros en 15 \15\UTC marzo \15\UTC 2006

Hoy, B&B en Palma con Diego (minid) y Ricardo. 21:30 en el Ocimax. ¡No faltéis! Si os perdéis o no encontráis, dadme un toque al móvil.

Actualizado: Hoy (15/03) en el Restaurant La Mar de la Indiotería a las 21:30 hay otra b&B con Diego (minid) y Ricardo. Más referencias en sus respectivos blogs.

Posted in Varios | 5 Comments »

Meme: 5 Webmasters que deberían dimitir

Posted by Paco Ros en 4 \04\UTC marzo \04\UTC 2006

Hoy me ha dado por abrir un meme (con lo que me costó saber qué cojones era un meme, tanto hablar de memes en otros blogs :-)). La verdad es que el título es un poco agresivo, pero así consigo que los que me leéis vía RSS os animéis a seguir leyendo ;-)

El título “políticamente correcto” podría ser: “5 webs que deberían cambiar su diseño”, pues no es mi intención que nadie vaya a perder su puesto de trabajo y menos por una chorrada como esta, más bien pretendo que me dejen visitar su web tranquilo.
Ahí va mi lista:

  • Por diseño: Oracle y Microsoft. El primero se lo podría currar un poco más y al otro se le podría pegar algo de sus competidores. Son feas, pero es una opinión muy subjetiva mía :-)
  • Por funcionamiento: Air Europa. Si me cuentas que tienes billetes a 30¤ ¿Por qué al final me dices que son 300? Además, funciona fatal con cualquier cosa que no sea Explorer 6.
  • Por usabilidad: Audi. Ya sé que les parecerá increíble, pero yo ya sé usar un scroll “de toda la vida” y no, no tengo internet explorer. Por cierto ¿Han oido hablar alguna vez del bloqueador de popups? NOTA: BMW tampoco se salva de la quema, pero por lo menos me dice cómo tengo que configurar mi navegador para poder abrir las ventanas emergentes de los c…
  • Por compatibilidad: Endesa on Line. ¿De verdad es tan y tan difícil que me digáis cuánto he gastado en electricidad? Ah! Y para vosotros, tampoco tengo explorer

Sé que los hay mucho peores, mis bookmarks son bastante sanos en cuanto a webs y no tengo porquerías.

Tampoco he incluido bloggers, particulares y altruistas que, muchas veces, hacen sus pinitos en la web y nos les quedan del todo finas.

Esos que he puesto, creo que podrían gastarse unos euros en unas mejoras.

Posted in Internet | 8 Comments »