Copy
La nueva entrega de La Bonilista, la lista de correo de bonillaware.com. El newsletter de noticias relevantes para personas importantes ¡Bienvenidos!

 
La masturbación y el buen software


En agosto del año pasado apareció Handmade Dev, una iniciativa que pretende recordar a los programadores que el código que desarrollan se ejecuta en ordenadores reales, y afirma que todo software que se ejecute sobre una capa de abstracción lógica, que se interponga entre él y el procesador, es lento y peor.
 
Por el contrario, el software “hecho a mano” es mejor y más rápido. Software que raspa el Sistema Operativo, que prescinde de frameworks y librerías. Software que “respeta el tiempo de sus usuarios”.

 
El problema es que la rapidez del software “hecho a mano” está en la ejecución, no en el desarrollo. En los comentarios del video donde anuncian la iniciativa, un usuario pregunta cuando estarán disponibles sus foros y le responden que… cinco meses después del lanzamiento. Un foro. En pleno Siglo XXI. En cinco meses. Con dos cojones.
 
El problema es que no parecen haber reflexionado ni un segundo sobre el tiempo que realmente importa a sus usuarios y, cuando olvidamos las necesidades que intentamos satisfacer, dejamos de construir buen software para entrar en la pura masturbación técnica.

 
Masturbación Técnica

Si de verdad creemos que el usuario medio prefiere esperar cinco meses antes de poder publicar mensajes en un foro a cambio de que sus páginas se carguen en 200 milisegundos en vez de 500, es que no hemos entendido a quien servimos ni para qué servimos.
 
Si tu también lo crees, si piensas que completar hazañas técnicas intrascendentes para los usuarios de tu software es la única manera de conseguir el carnet de “buen programador”, te recomiendo la imprescindible Software Economics, de Luis Artola y Guillermo Gutiérrez. Aunque debes tener cuidado. Es probable que los conceptos expuestos a lo largo de las 186 diapositivas y la presentación en castellano hagan que te estallé la puta cabeza. No todos estamos preparados para tomar la pastilla roja y descubrir el mundo real.


Es normal que los impulsores del software “hecho a mano” sigan viviendo en Matrix -el más veterano tiene 23 años- pero eso no quiere decir que sean estúpidos, sino que son inexpertos. De hecho, han demostrado tener más iniciativa y visión que la que teníamos la mayoría a su edad. Porque, aunque su planteamiento se equivoca al identificar las principales necesidades del usuario medio ¿de verdad están tan equivocados?

Muchos programadores crean aplicaciones web con Spring desde hace años, sin saber qué es el DispatcherServlet ni haber implementado jamás la clase Servlet que este ultimo extiende. Son aún más los que desconocen los distintos métodos HTTP y sus peculiaridades ¿Es completamente necesario para desarrollar una aplicación web? No, pero si es recomendable. Si no dominas tus herramientas, si no entiendes la MAJIA detrás de Rails o jQuery, las herramientas te dominaran a ti.

 
Cuando eso sucede, es fácil caer en la sobreingeniería y hacer software de mierda. Esta misma semana, Drew Hamlett publicó un divertido rant sobre el triste estado del desarrollo web. Y, como todos los buenos rants, entre troleo y troleo contiene algo de verdad. Por ejemplo, el uso –y abuso- de librerías para funcionalidades que podrían resolverse con un par de líneas de código… si sabes que dos líneas debes escribir.
 
Por eso no creo que haga falta escribir software “a mano” para mantener el contacto con la realidad física detrás del mismo, sino no contentarte con la simple MAJIA. Ser lo suficientemente curioso como para dominar los trucos creados por otros y crear los tuyos propios.

 
El buen software no es el software más rápido, ni el más documentado, ni el más probado, ni siquiera el mejor programado. Buen software es aquel que cumple las expectativas, plazo y presupuesto sin hipotecar su propia evolución. Lo otro, simplemente, son las practicas que empleamos para intentar crearlo.
 
 
La III edición del KEEPCODING STARTUP ENGINEERING MASTER BOOTCAMP patrocina esta Bonilista (y te hace un descuento de 500€)

Conozco a Adriana y Fernando desde hace mucho tiempo. Les he visto currarse y hacer crecer Keepcoding, desde prácticamente la idea inicial hasta verles vestidos de cocineros repartiendo publi en MadridJS ya hace años. No son flor de un día surgidos al calor de la "moda developer".

El Startup Engineering Master Bootcamp pretende reciclar a programadores veteranos, enseñándoles a programar apps móviles y desarrollo web con lenguajes modernos como NodeJS o Python, y también convertir a muggles sin poderes mágicos en auténticos desarrolladores. Pero, al contrario que otras academias, Keepcoding no promete enseñarte a programar apps en pocas semanas, sino después de 10 meses de duro trabajo.

Doy fe de que, el que trabaje, encontrará resultados. Lo sé porque yo aprendí a programar en un curso similar en el ya extinto CDTI de la calle Almirante.

El curso empieza en abril y vale 5.000€, pero si les escribes a cursos@keepcoding.io y les dices que eres un tarugo apuntado a la Bonilista, conseguirás un 10% de descuento.


El claustro de profesores habla por si solo, pero si estáis interesados en hacer el curso, lo mejor es que os paséis por su web o lo les escribáis directamente. Yes we can!
 

¿Te ha gustado este texto? Ayúdale a llegar a más gente:

Like La masturbación y el buen software en la #Bonilista on Facebook share on Twitter Google Plus One Button


5.501 tarugos han recibido esta Bonilista.

(Ilustración original cortesía del dibujolari Hugo Tobio)

¡Apoyar a la Bonilista es fácil! Sólo tienes que hacer ejerciciocomer empanadas y jugar con tus videojuegos favoritos.

Copyright © 2016 Bonillaware, Todos los derechos reservados.
Email Marketing Powered by Mailchimp