[#OPINION] Sobre los expertos, como mejorar como developer y muerte al Hard Code !!!

image

imageBuenas.

Los dichos populares son increíbles, por ejemplo dicen que “al que madruga Dios lo ayuda”, y es casi siempre cierto. Mi madre se ha despertado por más de 40 años antes de las 0600AM y le ha tocado un hijo de lo mejorcito. Hay otro que también es buenísimo “la práctica hace al maestro” y en el caso de los programadores, este si es 100% real. En mi caso durante los últimos años cada vez dedico menos horas reales a la programación y lo voy notando.

Sigo teniendo maratones quedándome hasta las 0200 AM para terminar algo, o para probar algo, pero no tengo el día 100% dedicado a programar. Esto se nota, muchas veces cuando me enfrento con un problema me doy cuenta de que me falta práctica, tal vez no para resolverlo, pero si velocidad para implementarlo. Por eso es que la frase “la práctica hace al maestro” es 100% cierta. Los mejores profesionales son los que realmente trabajan con una tecnología o herramienta.

Note 1: Aprovecho para aconsejar que desconfíes de los gurúes que escriben de temas que no conocen o que solo transcriben cosas que han leído por el internet ese. Las personas que más saben, son aquellas que están en las trincheras.

Note 2: También es importante destacar que si bien puedes estar delante de alguien que se tira 14 horas diarias con un martillo, en la mano, eso no significa que sea un experto en martillar. También hay mucho inútil por ahí che.

 

Volviendo al tema del músculo para programar; para practicar lo mejor es programar, programar y … programar. Como la base de la programación es resolver problemas, es tan importante saber encontrar una respuesta como conocer tus herramientas.  Yo intento dedicar mínimo un pomodoro diario a resolver un problema que no tenga nada que ver con mis tareas diarias del trabajo (tengo la suerte de que me gusta más mi trabajo que mis hobbies 😉

Lo mejor para esto son los Code Katas (Juan Carlos Quijano hizo una muy buena intro aquí), que son ejercicios para resolver problemas independientemente de la herramienta o el lenguaje. Yo semanalmente hago una búsqueda en internet para encontrar alguno interesante, o sino me voy directamente a http://codekatas.org/ e intento resolver el que esté de moda.

Otra técnica que encuentro que me ayuda es aprender un nuevo lenguaje de programación. Para esto desde hace unos meses me he apuntado a Code Academy (http://www.codecademy.com) y sitio excelente donde puedes seguir tutoriales interactivos para aprender nuevos lenguajes. En mi caso he optado por un lenguaje que seguramente no utilizaré nunca: RUBY, pero que me sirve para probar un sitio que posee algo parecido a un Code Kata: http://codegolf.com/

image

Nota 3: Hace un tiempo recomendaban aprender un lenguaje cada año para ser mejor programador. Actualmente pienso que es más importante aprender una nueva plataforma que un nuevo lenguaje … pero para gustos, colores.

 

Ahora bien y para finalizar, otra cosa que hay que hacer para ser mejor profesional es enseñar. Cuando comienzas a explicarle un tema específico a alguien, es un momento excelente donde tu cerebro comienza a hacer un análisis real del nivel de conocimiento que tienes sobre ese tema. En ese momento se disparan dudas internas que en otro momento no te plantearías, también se afianzan los conocimientos y es un ejercicio excelente para aprender a comunicar (durante 3 años pasé a máquina trabajos de estudiantes de psicología … tema para otro post). Es por eso que cierro el post con un consejo en forma de enseñanza:

CORTA LOS DEDOS A LOS PRACTICANTES DEL HARD CODE !!!

Voy a las bases, pero a las bases. Seguramente a muchos se les habrá escapado una constante o un string con un valor hardcodeado que luego en producción trajo bastantes problemas (a mi me ha pasado). Una forma de intentar evitar esto es con DOLOR. Si, el dolor ha resultado ser uno de los mejores métodos para la enseñanza desde hace años. Pero, ¿cómo logras infringir dolor en un developer? pues a través de los ojos con los siguientes pasos:

1. Accede a las opciones de Visual Studio. Menú “Tool // Options”

2. Selecciona la opción “Fonts and Colors”

3. Selecciona el item “String (C# @ Verbatim)” y cambia el color de fondo y del texto,  por algo que duela. En mi ejemplo es fondo Lima con color de fuente amarillo.

image

4. A partir de ahora el código hardcodeado se verá asi

image

5. ¿A qué duele?

 

 

Lecturas recomendadas

 

Saludos @ Home

El Bruno

image image image

10 thoughts on “[#OPINION] Sobre los expertos, como mejorar como developer y muerte al Hard Code !!!

  1. “Las personas que más saben, son aquellas que están en las trincheras.”
    Totalmente de acuerdo, por ello es que cuando necesito aprender algo o que preparar un curso para mi gente trato de ir a los contactos que trabajan en el tema día a día y trato de armar algo con ellos, que ellos nos enseñen, ya me cansé de escuchar frases dichas en forma de robot por alguien que las leyó de algún lado y cuando le haces una pregunta seria no saben para donde mirar.
    Un abrazo Bruno

    Like

  2. Podría decir que me ha encantado tu post, que así ha sido, pero lo que realmente me ha encantado es todo lo que hay detrás: la actitud, pasión, forma de pensar, y de actuar, por supuesto.
    Y con respecto a lo de cortar dedos a hardcoders… te he visto con un cortapuros en las manos xD Me apunto el verde lima para cuando tenga ocasión de usarlo!

    Like

  3. como ya te he dicho en ocasiones anteriores. no eres gracioso, así que déjalo. por otro lado si esto te gusta, cuando pruebes lo que hace el resharper, vas a flipar.

    Like

  4. Cuanta razón!!!!

    Por muchos tutos y blogs de MVCs, jquerys, etc etc que practiques, si el día a día en tu empresa es mantener una oxidada y “mal parida” (arquitecturalmente) aplicación en winforms, al final te vas quedando igual de oxidado que tu aplicación.
    ¡ La práctica hace al maestro !

    Saludos y buena reflexión.

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.