Entre todos la matamos (I)

Published 71 weeks, 1 day ago
Fri Feb 23 2007
Para mí, el software es una labor de amor. Es una profesión muy hermosa, pero que entre todos estamos matando lentamente. Quiero dedicar una serie de entradas a todos los que, en mi humilde (y perfectamente rebatible) opinión, veo como culpables de este crimen.

Empecemos por nosotros mismos: los técnicos.

Y es que a veces me encuentro muy solo entre mis teóricos compañeros en ese amor a la profesión que he mencionado antes: conozco montones de informáticos, carrera incluida, que hicieron la carrera porque "tenía muchas salidas" y siguen en ella por una única y exclusiva razón: la pasta.

No voy a sugerir siquiera que los programadores debamos trabajar sin cobrar, o que el dinero no es un factor importante, porque lo es. Pero no debería ser el único. Uno debería trabajar en esto porque le gusta lo que hace: la nuestra, como policía, bombero o cura, debería ser una profesión estrictamente vocacional. Y, ojo, todo esto no tiene absolutamente nada que ver con tener o no "la carrera": la mera posesión de un diploma no hace a un informático.

Un informático se hace. Y se hace con esfuerzo y dedicación a lo largo de los años, y de los distintos proyectos, aprendiendo lo que puede de cada una de sus experiencias en el sector. Se debería empezar por la Universidad, por qué no, pero lo que no se debe hacer nunca es pensar que la mera posesión del título nos hace informáticos. Ni mucho menos.

Si eres de los que haces tu ocho horas de curro y al salir no quieres ni ver un teclado, ¿qué haces programando?

Si eres de los que sabes las cuatro características básicas de tu lenguaje para hacer los típicos programas de gestión; es decir ni más ni menos que lo que te exige el día a día, y no coges un libro de programación, ni quieres aprender nada nuevo, ni lees técnicas para mejorar, ¿qué haces programando?

Si tu estilo de programación es el copiar y pegar código encontrado en Google, sin intentar entenderlo, sin saber cómo modificarlo para tus usos, ¿qué haces programando?

Si los usuarios finales no te importan (o peor, los desprecias) y piensas que lo que estás haciendo es un ente abstracto que no va a usar nadie que te importe y tú te dedicas a tirar código (o peor, a fingirlo) durante ocho horas exclusivamente para que te paguen a fin de mes, ¿qué haces programando?

Hazte una pregunta a tí mismo, examinándote fríamente y con tranquilidad: ¿de verdad quieres ser programador? Si la respuesta es negativa, haznos un favor a todos y dedícate a cualquier otra cosa. Hazte actor, abogado, camarero o taxista. Cultiva margaritas en el campo. cualquier cosa que realmente te sirva para realizarte como persona y sentirte feliz. Pero no nos jodas a los que hemos elegido esta profesión para realizarnos y ser felices.

Y no me valen las excusas de tipo si a mi me gusta lo que hago, pero es que me pagan una mierda, o todo el mundo a mi alrededor es un chapuzas, o yo lo que quería era programar juegos, no aplicaciones de gestión. Si te pagan una mierda, exige una subida de sueldo o cambia de empresa. Si todo el mundo a tu alrededor es un chapuzas, pon tú el ejemplo. Si tú lo que querías era programar juegos, ¿quién te lo impide? Ponte por las tardes, o las noches, o los fines de semana. Únete a los cientos de esfuerzos Open Source que hay para hacer juegos: aprende y hazlo. Pero no dejes que esa insatisfacción afecte a la calidad de tu trabajo diario, que es el espejo en el que nos reflejamos todos.

Dejémonos un poco de quejar sobre el sempiterno ¿Qué hay de lo mío? y pongamos algo de nuestra parte. Que no, señores, que no nos pagan sencillamente por aparecer por la oficina y encender el equipo. ¿Cómo se puede tener el cuajo de reclamar una mejor posición y de decir que se está descontento cuando todo lo que uno hace al cabo del día es clasificar fotos de las vacaciones? ¿Cómo puede uno desproticar contra una empresa que te paga para que programes, y tú te dedicas a jugar al Street Fighter en la oficina? ¿Cómo se puede decir que una es ingeniero, trabajar media hora al día atendiendo una llamada y estar todo el santo día mirando foros en Internet, mientras se usa el PC como reposapiés? Todos estos son casos sangrantes, recientes y no ficticios que este asombrado picacódigos ha visto con sus propios ojos.

Yo he exigido al Departamento de Sistemas de mi empresa que me monten un PC como servidor de base de datos y control de código fuente. Porque sin eso no trabajo, es así de simple. Bueno, pues soy el único de toda mi planta que utiliza una herramienta de control de código fuente. Soy el único de mi planta que se ha preocupado de automatizar los procesos de backup de su código, documentos y bases de datos. A veces me parece que soy el único de mi planta que se preocupa de lo que hace, más allá de la próxima nómina. Y así, señores, no vamos a ningún sitio.

Y ya que estamos abroncando: señores Ingenieros de Primera, precisamente una bronca así es lo que hecho de menos en su página web. ¿Cómo se atreven a exigir sus derechos y no mencionar ni siquiera de pasada sus deberes? ¿Cómo se atreven a sugerir siquiera que la solución al problema son los colegios profesionales y evitar el intrusismo, cómo se atreven siquiera a sugerir que el corporativismo y la mafia de un colegio profesional va a mejorar la situación? ¿Cómo se atreven a llamarme a mí intrusista, por el mero hecho de que me falta un papelito? ¿Cómo tienen el rostro de afirmar que la falta de dicho papelito me imposibilita ejercer esta profesión que amo y respeto posiblemente más que ustedes? Evidentemente, lo que yo no voy a hacer nunca es ponerme a diseñar un sistema de telecomunicaciones militar, o un nuevo protocolo de red, o cualquiera de esas grandes empresas arquitectónicas que ustedes defienden con tanto celo, y que son en este país el pan nuestro de cada día como todos sabemos. Pero para diseñar sistemas de gestión informática, software, me basto y me sobro con mi experiencia y mis conocimientos autodidactas. Así que vivan ustedes y dejen vivir a los demás.

Estoy muy de acuerdo en que esta profesión está infravalorada y menospreciada; pero lo que todos deberíamos tener muy clarito es algo muy sencillo: si queremos que nos traten como profesionales, debemos comportarnos como tales.


Actualización 01/03/2007 07:22.- Se han cerrado los comentarios. Se estaba elevando el tono de forma innecesaria y se ha llegado a un punto en el que las posturas son inamovibles.

Estela

Published 71 weeks, 1 day ago
Thu Feb 22 2007
La que se ha montado. Resulta que, por si alguno de mis lectores anda despistado y no se ha enterado de nada, un programa informático llamado Estela, producido por la consultora alemana Software AG y que tendría que estar en funcionamiento desde Diciembre de 2006, no sólo se encuentra a un 80% de funcionalidad según el Director General de Patrimonio, sino que además lo poco que funciona es incompatible con el resto de sistemas bibliotecarios, es lento y propenso a bloqueos, colapsando las bibliotecas municipales de Madrid. Vamos, una joya de software.

Personalmente, me alegro.

Y no es que le tenga especial tirria a Software AG, ni mucho menos al equipo que ha desarrollado la aplicación: personas de las que nadie se acuerda y que deben estar pasándolo fatal. Creedme, lo sé. He vivido situaciones muy similares (aunque por suerte con mucha menos publicidad) y a nada que tengas un mínimo de orgullo profesional momentos como éstos son muy amargos. Y sin necesidad de que ningún jefe te eche la bronca, ya te abroncas tú solito lo suficiente.

Pero me alegro, repito, a ver si este desastre y muchos más que se producen a diario hacen abrir los ojos a consultoras y clientes sobre una verdad fundamental en el mundo del desarrollo del software patrio: seguimos un modelo abocado al desastre.

Y la culpa es de TODOS.

MS Virtual PC 2007

Published 71 weeks, 3 days ago
Tue Feb 20 2007
Y ya que hablábamos el otro día de programas de virtualización, una grata noticia: Microsoft Virtual PC 2007 está disponible de forma gratuita para su descarga, tal que aquí.

Cajón de herramientas

Published 71 weeks, 4 days ago
Mon Feb 19 2007
Respondiendo a los comentarios de hace algunas entradas, lo prometido es deuda. Aquí tenéis la lista de mis herramientas favoritas para .NET. salvo que se indique lo contrario, todas las herramientas que menciono son gratuitas y la mayoría son Open Source.
  • Resharper.- Tuvo su propia entrada no hace mucho, así que no voy a añadir nada más. Sólo que, si sois usuarios de este fantástica herramienta, os interesará saber que Joe White ha iniciado una serie-tutorial al respecto que está francamente interesante. No, por desgracia no es gratis.
  • Data Dictionary Creator.- Creado por Jon Galloway y esponsorizado por la compañía en la que trabaja (Veloc-IT, cómo molaría trabajar en una empresa que no sólo alentase sino que promoviese los pet projects, eh? Pero esto es España, muchachos! Que investiguen otros!!). Se trata de un documentador de bases de datos, simple pero funcional. Open Source.
  • Reflector.- Sigue siendo EL visor de clases por excelencia de .NET.
  • WinMerge.- No es estrictamente una herramienta .NET, pero más de una vez me ha venido de perlas para comparar diferencias entre ficheros web.config, por ejemplo. Open source.
  • Inno Setup.- Desde 1997, uno de los mejores programas para crear procedimientos de instalación para aplicaciones Windows de escritorio. Los instaladores son creados mediante el uso de un sencillo lenguaje de script, pero si no queréis ni siquiera esa mínima complicación siempre podéis usar ISTool, una herramienta también gratuita que nos permite crear y modificar scripts de Inno Setup.
  • Xml Notepad 2007.- Para la creación y modificación de ficheros XML, permitiendo especificar esquemas XSD o transformaciones XSLT. De Microsoft y gratuito, para pasmo de algunos.
  • SlickEdit gadgets.- Colección de plugins para Visual Studio, que incluyen el Command Spy, fantástica utilidad que cuando la activas puede decirte qué atajos de teclado se corresponden a las acciones que vas realizando con el ratón; el un analizador de objetos, un explorador de archivos integrado, un analizador de SLOC que te dice el total de líneas tiradas en la solución, desglosándolas por líneas en blanco, líneas de código y comentarios, y unas cuantas utilidades más para la ventana de edición de código de VS 2005, incluyendo la posibilidad de poner una imagen de fondo a nuestra ventana de código, lo que siempre queda muy bien :)
  • SmartPaster.- Simplemente, una idea fantástica: un plugin para VS que nos permite pegar el texto previamente copiado en el portapales como texto normal, o texto comentado, o como un string builder, o como una región. Sencillamente genial.
  • TimeSnapper.- Aunque en esencia no es una herramienta de programación, TimeSnapper permite controlar lo que hacemos al cabo del día y optimizar nuestro rendimiento, quedándose residente en memoria y haciendo capturas de pantalla de nuestro escritorio a intervalos configurables, para después reproducirlos todos y ver en qué nos ha cundido (o no) el día. Versión lite gratuita, existe una versión profesional por $39.95.
  • CodeColorizer, la herramienta que uso para poner colores al código fuente que copio y pego en este mismo blog. Por cierto, debo ser el único que lo usa (o que respeta sus reglas), porque si buscáis en Google "CarlosAG.CodeColorizer" salgo justo detrás de la web correcta, y varias veces. =)
  • Snippet Compiler, de Jeff Key. Impresionante herramienta para testear pequeños fragmentos de código .NET, sin necesidad de tener que crear una solución completamente nueva cada vez que se te ocurre una idea.
  • StickyNotes. No confundir con Sticky-Notes, que es otro programa para lo mismo, pero no es el mismo programa. Hay muchos más programas de este estilo, pero éste es mi favorito: lo uso para guardar copypasteos, para apuntarme recordatorios, poner alarmas, etc... La verdad, no podría vivir sin él, al margen de la programación.

Y ya está. He probado otros muchos, pero estos son los que uso prácticamente todos los días. Si tenéis alguna sugerencia, me he olvidado de alguno o queréis publicitar vuestra herramienta entre mis cuatro o cinco lectores :), vuestros comentarios son bienvenidos.

Actualización 23/02/2007.- Corregida la entrada para añadir las StickyNotes, y enmendar así una gran injusticia...

Web 2.0

Published 72 weeks, 5 days ago
Mon Feb 12 2007
Impresionante vídeo de Michael Wesch, un profesor de Antropología de la Universidad de Kansas State. Explica, para cualquiera, qué es realmente la Web 2.0 sin dejarse llevar por palabrejos técnicos o de márketing.

The Machine is Us/ing us.

Imprescindible.