¿10 consejos para un joven programador? Espera. Primero te cuento.
Hace días recibí un mensaje de los que siempre me hacen ilusión: un joven protofriki de 18 años me pedía consejo sobre el camino hacía la sabiduría. No sé si sentirme halagado o preocupado, cuando la juventud empieza a pedirte consejo… 😉
Más sabe el diablo por viejo, que por diablo
También me preguntó sobre el hardware idóneo: ¿Qué te parece el MacBook Pro con pantalla Retina de 13 pulgadas? Me irá bien para programar? Manda huevos, chavalín. Si supieras con qué empecé yo a programar… Teniendo en cuenta que algunos empezaron a programar con tarjetas perforadas, creo que un MBP Retina debería ser aceptablemente adecuado. Qué juventud… Vayamos a lo serio, es decir, a aquellos consejos que de verdad me hubiese gustado haber aceptado en mis años mozos.¿Qué encontrarás en este post?
Toggle10 Consejos para un programador novato
1. Inglés, el lenguaje de programación más importante de todos
- Aprende Inglés. Es de lejos lo más importante. Para ti no es opcional. Si no eres capaz de seguir una película en versión original, tienes un problema gravísimo.
- Si estás en la Universidad, haz un Erasmus en algún país de habla inglesa. Es vital.
- Vete de vacaciones a RU, EEUU o Malta para practicar.
2. La experiencia laboral no es opcional
En ningún lugar del mundo resulta aceptable que alguien salga de la Universidad sin haber hecho prácticas en una empresa…excepto España. No caigas en ese error, no es casualidad que el 50% de los jóvenes estén en el paro o mal empleados. No llegues a tu primera entrevista de trabajo con sólo tu diploma en la mano.- Haz prácticas en alguna empresa de informática. No termines la facultad sin experiencia laboral, bajo ningún concepto.
- Participa en Google Summer of Code y proyectos similares.
- Crea un perfil en LinkedIn y en gitHub.
3. Demuestra interés por tu profesión
Una de las cosas que más candidatos descarta es la falta de interés. Son aquellos que solo han aprendido lo que les obligaron en la Universidad. Si no te interesa lo que estudias, dedícate a otra cosa. Seguro que hay algo en lo que destacas, pero no dediques tu vida a algo que no te apasiona.- Participa en algún proyecto de software libre. Asegúrate de ser el más torpe del equipo, así aprenderás más.
- Acude a conferencias, conoce gente. Si puedes ir como ponente, mejor.
- Escribe en un blog, o publica en tu perfil de Linkedin.
4. Programar es mucho más que picar código
- Aprende todos los años un nuevo lenguaje que te aporte una nueva visión sobre la programación: erlang, clojure, Haskell, go, javascript, scala, smalltalk.
- Haz al menos una vez al año algún curso, en nuestra plataforma online puedes encontrar los mejores cursos online completos y material gratuito para tu formación como programaador.
5. Aprende tecnologías que estén despuntando
En la Universidad te van a enseñar lo que tuvo éxito hace 20 años. Es inevitable, ya que un curso de Informática dura 5 años y se tardan muchos años en preparar un programa de estudios. Esto está muy bien para areas del conocimiento relativamente estáticas. Si estás estudiando Filología Clásica, no será un problema, pero nuestra industria se reinventa a cada 5 años. No puedes quedarte parado y no puedes depender exclusivamente de lo que te enseñan en la Universidad. Prepárate para lo que piden las empresas.- Big Data y Machine Learning.
- Ciberseguridad
- Desarrollo Mobile
- Desarrollo Web
- Devops
- Aprende algún lenguaje de script y automatiza tus tareas más comunes. Python es una excelente opción.
6. Aprende Unix
Es un hecho: Unix ha ganado. Está presente en todas partes, desde los servidores, hasta los desktops, tabletas y teléfonos. Si todavía usas Windows, pásate a un Mac (un Unix para seres humanos), Linux si vas de macho ibérico o FreeBSD si eres un macho ibérico. Tómate el tiempo de aprender a manejar bash y la linea de comandos unix.7. Aprende Git
El control de versiones es vital para el desarrollo en equipo, y en solitario. Deberías de estar cómodo usando git y gitHub.8. Desarrollo Profesional
- Desarrolla algunas aplicaciones del principio hasta el fin. Intenta comercializarlas. Tómatelo como un negocio. Preséntalo a Wayra. Aprenderás horrores y será tu mejor portfolio…y a lo mejor una startup de éxito.
- Acude a Startup School.
9. Herramientas
Tómate el tiempo para elegir un editor de texto que te guste. Una vez elegido, sé un defensor fanático del mismo. Ningún programador te tomará en serio si no tienes una opinión fanática sobre tu editor 😉 La herramienta más compleja de dominar son tus compañeros de trabajo. Los seres humanos son los periféricos más complicados y anti-intuitivos que existen. Claramente al Sumo Hacedor la experiencia de usuario le importaba un pepino. Afortunadamente, hay manuales de usuario. Léete The Mythical Man Month y Managing Humans.10. Lee, lee y lee.
Sobre programación existe mucha literatura. Devora libros de programación. Te recomendamos algunos libros y artículos imprescindibles :- “Structure and Interpretation os Computer Programs” (El Antiguo Testamento)
- “Concepts, Techniques and Models of Computer Programing“. (El Nuevo Testamento) Cambiará para siempre tu forma de ver la programación. No serás un programador hasta que hayas leído al menos uno de los dos, sino tan solo un pica códigos.
- 500 lines or less: Observa como los mejores programadores resuelven un problem complejo en 500 lineas de código o menos.
- Hackers and Painters
- Founders at Work.
- Cómo buscar trabajo como desarrollador en EEUU
- La Universidad es de Marte, las startups de Venus.
- Un caso práctico de un desarrollador que ha emigrado al Silicon Valley
- Turismo Geek en el Silicon Valley
- Enseñando iOS en Facebook