lunes, 1 de agosto de 2016

¿Cómo ser programador? ¿Existe alguna guía?

Saber mover las piezas, no te hace ajedrecista; saber tocar el piano no te vuelve concertista... y saber programar no te convierte en programador. ¿Cómo se aprende, entonces, a ser programador?

Programador junior tirándose a la piscina del mercado laboral

Aterrizando en el mercado laboral


Cuando llegué a España, en el 2008, no sabía nada del mercado laboral español. Vine a trabajar en una Universidad, por un tiempo corto de 3 meses que se extendió a 4 y, después, tuve que enfrentarme a un entorno desconocido: tenía 7 años de experiencia laboral; pero era un programador que no sabía cómo buscar trabajo de programador pues el entorno universitario no tiene absolutamente nada que ver con la realidad fuera del campus.

Durante un tiempo, fui a entrevistas con una vestimenta inadecuada, con currículos penosos y con una idea nula de cómo acometer ese proceso de auto-venta que es la entrevista de trabajo.

Después de leer muchos artículos y recomendaciones sobre el tema fui haciéndome una idea de qué y cómo debía hacer las cosas. Las lecturas y los consejos de amigos fueron dando forma a mi proceso de búsqueda de empleo; pero lo que me marcó, profundamente, fue una antigua oferta de trabajo titulada "Sorpréndenos", que pasó a ser para mi como un manifiesto: el manifiesto de "Me importa un carajo tu currículo", aún accesible aquí, gracias al proyecto de Internet Archive.

Así que entre consejos, lecturas y la repetición del probadísimo método de prueba-error-corrige-y-vuelve-a-probar, conseguí mi segundo trabajo en España y el primero en el libre mercado de oferta y demanda de trabajo.

Pero un tiempo después resultó que saber programar y venderse en una entrevista, fueron solo el comienzo. Mantener el puesto y evolucionar como programador, eran habilidades que no me habían enseñado en la escuela y que tuve que adquirir, sobre la marcha.

Ayudando al que sigue


Un año después, podría decirse que estaba asentado y tenía algo de know how. Conocimiento que algunos con experiencia podrían considerar elementales; pero para mí, que era un recién llegado, fue como para un niño su primer día de colegio: maravilloso y abrumador.

En septiembre del 2009, un amigo con muchos años de experiencia como desarrollador, se encontró en la misma situación que yo: recién llegado a un mercado laboral desconocido, tenía los conocimientos técnicos requeridos, pero le faltaba el entendimiento del mercado. Así que mis conocidos errores y el poco de experiencia adquirida le sirvieron para saber que no hacer y orientarse sobre qué hacer. Y con eso, sus conocimientos, un currículo pulido por "El Manifiesto", una orientación clara y preparado para las entrevistas consiguió trabajo un día antes de cumplirse el mes de empezar a buscar.

Después de éste, vinieron otros y cada vez, la transmisión oral del qué, cómo y dónde buscar trabajo se fue regularizando y tomando forma hasta transformarse en un correo con consejos y direcciones Web.

Ocho años después


A estas alturas ya perdí la cuenta de cuántas entrevistas he hecho y todo para cambiar una sola vez de trabajo, en todo este tiempo. De mis entrevistas y después de conocer a otros programadores en reuniones, eventos, cursos, hackathons e incluso, después de haber entrevistado a algunos, comprendí que mis carencias del 2008 eran más frecuentes de lo que pensaba. Al parecer:

En muchos lugares pueden enseñarnos a programar, pero en pocos nos enseñan cómo ser programador.

Y aunque parezca lo mismo no lo es: ser programador es mucho más que saber programar porque el oficio de programador no es una profesión desconectada. El programador encerrado en su garaje, cambiando el mundo, en solitario... es un mito.

Por eso, después de conversar con varios recién llegados y evolucionar esa guía por e-mail, he pensado que, tal vez, sea útil escribir un poco más sobre el tema, creando una guía práctica con instrucciones paso a paso, que describa los perfiles actuales y cómo prepararse para obtener un empleo.

Una guía para aprender a ser programador 


Si mi impresión es correcta y una buena parte de los recién llegados al mercado del trabajo del sector TIC necesitan más conocimiento del oficio, entonces una guía bien concreta podría complementar los conocimientos técnicos adquiridos en escuelas, cursos y libros.

Llegados a este punto, me gustaría saber si:
  • ¿Sabes de alguien que quiera ser programador y no pueda ir a la Universidad o a una escuela técnica?
  • ¿Conoces a algún programador que le cueste encontrar empleo?
  • ¿Sabes de algún programador veterano que se sienta desactualizado y le preocupe su futuro?

Si conoces de alguien así y crees que una guía como ésta pudiera serle útil, coméntamelo y hazme todas las sugerencias que creas. Igualmente, si sabes de la existencia de algún recurso o lugar donde aprender sobre estos temas, compártelo: yo me ahorraré una guía y tú ayudarás a mucha gente.

El debate está abierto.

¿Cuál es tu opinión?

Responde en los comentarios, por Twitter @bellopauste o en Google+

domingo, 12 de junio de 2016

Plantillas para hacer prototipos de aplicaciones en papel

Me gusta dibujar, no lo hago muy bien, ni frecuentemente, pero es una de esas cosas que me entretiene y por eso casi siempre empiezo la concepción de las apps que hago, dibujándolas.

Muchas personas se preguntarán por qué perder el tiempo dibujando la interfaz de una aplicación, cuando hay tan buenos IDEs con los que generar la interfaz, directamente; pero a las interfaces se aplica lo mismo que a los programas: salvo que vayas a hacer un programa que sume a + b, no es buena idea sentarse a programar sin antes pensar y (potencialmente) escribir o concebir cómo atacar el problema... y lo mismo aplica a las interfaces: es mejor pensar un poco antes de ponerse manos a la obra.


Plantillas para hacer prototipos


Por supuesto, hay discimiles herramientas para prototipar o diseñar apps móviles y Web: desde plantillas en distintos formatos para aplicaciones como Photoshop, Ilustrator o Sketch, hasta software más rústico pero de uso específico como Pencil. Sin embargo, el acto de garabatear mientras pienso, me ayuda a generar y organizar las ideas mientras me pongo en contexto.

No obstante el disfrute del dibujo, hacer cuadrados y círculos no es lo más divertido del mundo, así que luego de buscar muchísimo, encontré dos plantillas de distintos fabricantes para ayudarme con las partes más monótonas o que requirieran más precisión: unas de acero cortado a láser, con muy buen aspecto y calidad, pero caras y otras de acrílico, más ligeras y baratas.

Un ejemplo de prototipo de una pantalla muy simple


Los que siguen son un par de vídeos que ilustran el uso de ambas plantillas para hacer ese diseño básico de una pantalla muy simple.




Conclusiones


Las dos plantillas generan unos resultados muy parecidos y, aunque es verdad que las de acero son un gustazo para trabajar con ellas, el precio juega en su contra: con lo que cuesta una sola plantilla de acero, puedes comprar casi el pack completo de las plantillas de acrílico.

Por otra parte, si vas a viajar y solo llevarás equipaje de mano, es probable que las plantillas de acero te den algún problema para pasar un control de aeropuerto.

Así que si quieres tener un pack completo gastando poco, la mejor opción es la ofrecida por mobilestencil.com. Por otra parte, si te quieres dar un capricho o hacerle un regalo de calidad a un amigo ;-) entonces las plantillas de uistencils.com son la opción.

martes, 10 de mayo de 2016

Retomando el blog... casi 2 años después

Han pasado casi 2 años y muchas cosas desde el último post: varios libros leídos, nuevos frameworks aprendidos, algún premio en metálico en un hackathon ;-)... y hasta un cambio de empresa.

Debí haber escrito sobre todo esto pero la inercia me llevó a esta sequía por pereza: cada vez los post se hacían más largos y más tediosos de escribir. Así que en lugar de ser más escueto, terminé no escribiendo nada.

Pero como el ejercicio de escribir en este blog es, sobre todo, un ejercicio de memoria para dejar escrita las lecciones que he aprendido que, si sirven a otros, ya valen el doble... he decidido que intentaré retomar la escritura.

Así que, para ser consecuente y aplicar la última lección aprendida: seré más escueto y terminaré aquí.

Peeero... termino con un adelanto de lo que viene: retomaré los temas técnicos pero introduciendo algunos temas no "tan" técnicos pero que me han ayudado con algún proyecto o a mejorar mis relaciones profesionales.

Y aquí va un adelanto: desde septiembre del 2015 he comenzado a trabajar en Tuenti y estos son algunos de los dibujos que me ayudaron a "socializar" en las charlas técnicas que se suelen hacer los viernes.

Apuntes en tinta, en vivo, de los conferencianes en las "Tech talks"
Viendo el adelanto... ¿Crees que hago bien tratando otros temas o debería mantenerme en la línea más "técnica"?