domingo, 16 de octubre de 2016

Convirtiéndose en un programador

<<Becoming a developer>>




Para esta entrada haré un pequeño comentario crítico sobre el artículo Becoming a developer de Alan B. Smith.

Un artículo cuyo objetivo explícito es guiar al lector a conocer si la programación es una práctica adecuada para este. A veces Smith se desvía un poco para intentar convencer al lector de darle una oportunidad a la programación. 
Es un artículo de buena intención intenta que se evite esta conversacion que seguro muchos de mis lectores han tenido con algún personaje:

-No Programador: ¿Y tú que estudias?
-Programador: Sistemas computacionales
-No programador:¿Qué?
-Porgramador: Informática, computólogía, el que escribe códigos, "hacker".
-No Programador: ¡Ay eso no me gusta! Cuando iba en la secundaria me hicieron usar Raptor...
-Programador: desvía y desenfoca la mirada

 La programación es una actividad que a veces carga con prejuicios, y realmente me he encontrado con muchas personas que pensaría que les encantaría la programación pero no lo hacen a causa de estos prejuicios. Estoy de acuerdo con Smith, si disfrutas los desafíos y rompecabezas, probablemente tienes perfil de programador, y me entristece un poco conocer aspirantes a ingeniería que repudien programar por prejuicios.Un prejuicio que menciona el autor es el de las matemáticas. Mientras que es cierto que necesitas algunas bases matemáticas para la programación, realmente el nivel de conocimientos necesarios es bajo. Es cierto. Alguien no muy brillante en los números puede arreglárselas programando con pensamientos intuitivos y lógicos hasta donde yo sé.

El autor también da algunos nconsejos pára que su lector ideal se ayudase a odiar un poco menos la programación. Una idea con la que me identifico es la de darse cuenta de que no es siempre posible desarrollar óptimamente y a tiempo y un programador debe de estar consciente y dispuesto a aceptar estos factores de riesgo. Personalmente una de mis cosas favoritas de programar es el simple hecho de que tus resultados son binarios y explícitos. Tu programa logró lo que querías usando los recursos que querías. Es un sí o un no que la computadora te hace saber. Y a pesar de que puedes pasar noches recibiendo no´s, es , más cónveniente que hacer un ejercicio de física una vez y esperar retroalimentación por parte de un instructor. Esto hace que la programación sea muy didáctica en mi opinión.

Personalmente me ha agradado el artículo y me gustaría que aquellos que les gustan las cosas cercanas a esta disciplina lo lean.

miércoles, 5 de octubre de 2016

Aprenda a Programar en 10 años

<<Comentario: 

Aprenda a programar en 10 años>>

 

El artículo de Peter Norvig surge a partir de sus sentimientos propios al entrar a una librería y ver que algún autor le promete que podrá aprender Java en 24 horas. Expresa Norvig que estó estremeció su corazón de informático, decidió buscar cuantos libros encontraba en de cosas que se el autor promete a sus lectores aporender en poco tiempo. Ecnontró que 9 de los 10 primeros resultados eran libros que intentaban enseñar algún lenguaje de programación. ¿Es que todos quieren aprender a programar? ¿Acaso es así de fáci programar?
Norvig inmediatamente expone sus argumentos, muchos de los cuales encuentro muy ciertos. Primero comenta que es posible aprender la sintaxis de C++. Pero de que sirve aprender la sintaxis de C++ en 24 si uno no es capaz de sacarle provecho a este lenguaje. Es como aprender a balbucear palabras en Húngaro sin conecer las complejísimas reglas gramaticales del idioma, tal vez sea útil en pocas situaciones pero en general no se puede decir que has aprendido Húngaro. En especial C++ me parece un ejemplo excelente porque no hay punto en enseñar este lenguaje si el lector no comprende sus ventajas con respecto al manejo de la memoria y compilación de C. No existe ventaja alguna en aprenderlo rápidamente. Cuando estudiaba en Toronto tenía un profesor que se negaba a enseñarme algo más que Python. Decía que programar es como aprender a cruzar la calle, el cruze de Python tenía semáforo y un oficial que te tomaba de la mano, los otros lenguajes no tenían esas facilidades, pero para que querría cruzar esas calles si aún no necesito llegar a esos otros lados.
El segundo argumento importante que me parece muy bueno son las investigaciones que dicen que toma al menos 10 años el ser dominante en diversas actividades aún cuando eres un prodigio de nacimiento para dichas actividades. Mencionó natación, operación de telegrafos (que me pareció fascinante) y piano. Yo he tocado el piano desde muy chico y honestamente no logro tragarme mi orgullo cuando escucho que alguien dice saber tocar y sólo sabe tocar el intro de Clocks o The River flows in you. Ni yo mismo considero que se tocar a un nivel alto y eso que el piano es aparentemente sólo consiste en presionar teclas de la manera correcta en el orden correcto.
Resultado de imagen para ego ratatouille 
Norvig finaliza exponiendo las maneras en las que el recomienda aprender a programar. Muestra un camino de automotivación, aprender de otras personas y sobre todo práctica. Creo que no puedo estar más deacuerdo con este autor. No hay ninguna disciplina que se pueda aporender sin realmente hacerla una y otra vez hasta que se logren tallar todos los errores fuera. Me gustan mucho sus frases sacadas de Ratatouille y me gustaría leer más artículos suyos más adelante.