16. Empezar desde 0 en la programación

Transcripción

Si me preguntaran qué es lo más difícil de la programación (hasta donde yo sé y he hecho), diría que sin duda, es el comienzo o los primeros pasos. Personalmente, he hecho programación web y de juegos, y actualmente, desde hace ya unos años, hago programación de aplicaciones móviles.

Nada de lo que he dicho anteriormente, me ha parecido más difícil que empezar de cero, que aquellos primeros días en que no tenía ni idea de nada. A priori, tú cuando empiezas a estudiar cualquier tema, cosa o concepto -llámale como quieras-, empiezas aprendiendo conceptos fáciles y poco a poco vas subiendo de nivel.

Por ejemplo, cuando empiezas con las matemáticas, empiezas a sumar y restar, y es bastante fácil. Luego elevas un poco el nivel y aprendes a multiplicar y dividir; ya se complica un poco más la cosa. Dependiendo de hasta donde llegues, harás integrales, derivadas, etc. A mi parecer, cada nivel que vas subiendo, va complicando más la cosa; es más difícil entender el concepto.

Empezar desde 0 en la programación

En la programación, también es así. Obviamente no puedes empezar la casa por el tejado, pero lo que quiero decir es que, a mí, y a muchas otras personas que conozco, los primeros pasos en la programación, las primeras “sumas y restas”, (haciendo la analogía con la programación), fueron los más complicados de entender.

¿Por qué digo esto?, ¿Por qué me enrollo tanto con esta noción de que el principio es difícil? Pues la verdad, tendrá mucho más sentido cuando hayáis escuchado todo el capítulo, pero, mi opinión es que hay dos puntos muy distintos en cuanto a aprender programación o algo.

El primero, es empezar completamente desde cero; no sabiendo nada. Ni que es un “if”, una variable, un “bucle”, nada, cero. El segundo punto, es teniendo ya unos conocimientos básicos.

A partir de estos dos puntos de partida, hay dos caminos distintos o, por lo menos, dos caminos recomendables. Hablo de caminos para aprender algo nuevo. Obviamente, en este capítulo, nos vamos a situar en el punto uno, empezar de cero. Alguien que no sabe nada, pero nada de programación, aunque también hablaremos del segundo punto para dejar clara esta división.

Universidad o formación alternativa

Dicho esto, vamos al título del capítulo. “Quiero aprender programación, quiero ser programador” La pregunta principal es: ¿Universidad o formación alternativa? Son los dos caminos que yo dividiría para aprender algo nuevo.

Digamos que la universidad sería el camino de toda la vida y la formación alternativa sería buscar otras opciones. Dentro de esta última, como veremos, hay muchísimos caminos.

¿Por qué separo universidad de formación alternativa? La universidad, es lo que nos han enseñado desde pequeños que tenemos que hacer: “Estudia la educación obligatoria, el bachillerato, vete a la universidad y buscar un trabajo”. Sin embargo, hoy en día, y sobre todo con la aparición de internet, esto queda, en mi opinión, un poco desfasado.

Ojo, estoy hablando de programación, no de otras profesiones. Obviamente, a un médico no le diría que se formara con educación alternativa; principalmente porque no conozco nada del tema, pero yo creo que tampoco es el mejor camino.

Estoy hablando únicamente de la programación, de lo que yo conozco y he estudiado y, por lo tanto, de lo que puedo hablar.

¿Por qué no elegir la universidad para aprender programación?

¿Por qué digo que está un poco desfasado el camino de la universidad? No voy a recurrir al tópico de que muchas mentes brillantes no tienen universidad, como Bill Gates, Steve Job, Mark Zuckerberg, entre otros. No, las universidades tienen la gran desventaja de que tienes temarios muy cerrados y poco cambiantes. Es una formación que tiene que seguir unas pautas y no es tan sencillo cambiar y actualizar el contenido.

Otra cosa que tampoco me convence de las carreras, es que, aun siendo vendidas como especializaciones, realmente no lo son. Si tienes claro que quieres y vas a ser programador, siento decirte que vas a tener muchas asignaturas que no van a tener nada que ver; hay mucho relleno en esos temarios.

Obviamente, el saber no ocupa lugar; está bien tener cultura general de tu profesión, pero, este tiempo en el que aprendes cosas que no vas acabar utilizando, puedes invertirlo mucho mejor en otras cosas si sabes cómo hacerlo.

Ten en cuenta que, de toda la carrera, podrás aprovechar un 20%. ¿Recuerdas lo que estudiaste cuando tenías 14, 15 o 16 años? Es lo mismo. ¿Cuántas integrales has hecho desde que hiciste la última en el colegio? Sí, está bien, es cultura general pero bueno, llega un punto en el que toca ser más pragmático; de elegir qué es lo que quieres hacer y dejar de hacer lo que te dicen.

Otro punto, es que las carreras duran 4 años como mínimo y depende del momento que tú quieras aprender programación, no todo el mundo tiene tiempo para dedicarlo. Si, son 4 años ¿Sabes lo que da tiempo en 4 años con otro tipo de formación? Mucho.

Por último, y antes de que se me eche encima la gente de las universidades o la que haya estudiado alguna carrera y esté orgulloso de ello, las carreras no dejan de ser un gran negocio; la formación es un gran negocio y como todo gran negocio, tiene su competencia: alternativas que, en el caso de la programación, son mejores.

La formación alternativa

Otra pregunta que quizás te haces y dices “no quiero elegir una carrera universitaria” es ¿Puedo aspirar a un buen futuro laboral sin tener una carrera? Pues yo te digo que sí, sí y sí. Olvídate de la “titulitis”.

En el mundo de la programación importan mucho más los conocimientos actuales o los trabajos hechos, que un simple papel firmado por el Rey de España, en este caso. Cualquier persona que vaya a seleccionar un programador para un equipo, sabe que lo que realmente importa, no es un título, sino algo que demuestre realmente lo que sabe.

Ejemplos de formación alternativa

Vista la universidad, vamos a ver que tenemos en el lado del “mal”, en la formación alternativa. Para alguien que dice Yo no quiero estudiar una carrera, porque no tengo el tiempo, dinero o me parece que hay más opciones, en primer lugar, decirle que, por educación alternativa, no me refiero únicamente a internet; esto tiene que quedar bastante claro.

Con formación alternativa me refiero obviamente a cursos en línea (videos, tutoriales, etc.), cursos presenciales que pueden impartir empresas, libros, o formación reglada que no sea de la universidad.

En España, para los que me escuchan de fuera, existe el concepto de formación profesional que son cursos de 2 años, especializados, mucho más prácticos que la universidad, y que se hacen después de la formación obligatoria.

Vistos los ejemplos de formación alternativa, para este capítulo me gustaría separarlos en dos grupos. Uno serían los métodos que conllevan un autoaprendizaje (que tú tienes que coger ese recurso, y sin ayuda de nadie, aprenderlo todo).

El otro sería el aprendizaje tutelado que, no sé si este es el antónimo de autoaprendizaje, pero yo creo que se entiende: un método que implica acudir a alguien para que te explique y te resuelva cualquier duda; normalmente será un profesor.

Esto, marca una gran diferencia, sobre todo a la hora de aprender programación desde cero ¿Por qué hago la separación? Considero que, si no sabes absolutamente nada, es mejor elegir un método tutelado para acudir a alguien para que te resuelva tus dudas, más allá de lo que ya se está explicando. De esta manera, si hace falta, que te lo repita mil veces.

Sin embargo, si sabes algo, esto ya es totalmente diferente. Una persona que ya sabe programación, que ya tiene los conceptos básicos y que ya ha hecho algo, tiene que buscarse la vida. Tiene que coger información y aprender por su cuenta; a la larga, es lo que vas a tener que hacer como programador: si te encargan un proyecto y tienes que utilizar una tecnología que no sabes, tendrás que aprenderla por tu cuenta; no puedes ir a hacer un curso y que te lo expliquen ya que es totalmente inviable.

Aprender a pensar como una máquina

Si ya sabes programación, tienes que ser mucho más pragmático; si no, estás muerto directamente. Además, cuando sabes de programación, tu mente cambia un poco. La forma en que afrontas nuevos conocimientos de programación, es distinta. No me refiero a que sabes más o menos listo; me refiero a que, en la programación, hay que cambiar un poco la mentalidad con la que miras las cosas.

La programación trata de comunicarse con las máquinas. Pues bien, la mente humana y la de las máquinas son totalmente distintas. Aunque no me creas, nuestra mente es más avanzada que la de las máquinas; para aprender programación, tienes que aprender a pensar como una máquina y eso solo lo puedes hacer a base de práctica y de aprender conceptos nuevos.

Esta mentalidad no la tienes cuando empiezas, de ahí que haga esta gran diferencia. Una vez tu vas aprendiendo conceptos nuevos de programación y tienes una base, pasar a otro concepto nuevo y aprenderlo es mucho más fácil.

¿Qué tipo formación elegir?

Dicho esto, ¿qué formación elijo para empezar? Como he dicho, yo me decantaría por cursos impartidos por alguien a quien puedas preguntar y resolver tus dudas una y otra vez; que te explique todos los conceptos desde el inicio. Con esto, no digo que tenga que ser ya sea presencial u online; es indiferente, me da igual.

Por ejemplo, el caso de la FP en España, considero que es uno de los mejores recursos para aprender a programar. Es lo primero que le recomendaría a alguien y estoy hablando de la FP de grado superior, porque en la de grado medio no te van a enseñar lo suficiente para poder salir y defenderte. Sin embargo, en la superior sí.

No vas a salir siendo un crack, pero vas a salir con una base con la cual vas a seguir tu camino. Es como el niño que aprende a ir en bici y le ponen las ruedecillas pequeñas atrás. Primero aprendes con estas ruedas, después te quitan una y luego la otra, para después ir únicamente con las dos ruedas principales de la bici (por lo menos así me lo enseñaron a mí).

Podríamos decir que con la FP te ponen las dos ruedas pequeñas y te ponen a andar. Cuando salgas, te habrán quitado una de ellas y tendrás solo una. Tú mismo tendrás que quitarte esa rueda auxiliar y aprender a andar únicamente con las dos principales, a base de esfuerzo y seguramente más de una caída; pero, es la manera que hay.

Si tuviera que recomendar otro método además de la FP, diría que los cursos online o presenciales con un profesor encargado, siempre son una buena idea. En todo momento hablo de una persona a la que tu puedas recurrir a preguntar tus dudas. Por ejemplo, un curso online en el que solamente se ofrezca el temario, pero no puedas acceder a nadie, no me parece lo más ideal para empezar a programar. O, también, un libro que básicamente te lo tienes que leer y estudiar tu porque no creo que el autor te vaya a resolver tus dudas, tampoco creo que sea el mejor método.

No hablo de cursos de uno o dos meses; hablo de por lo menos 1-2 años, porque hay muchísimo contenido para iniciarse en la programación y muchos conceptos que hay que aprender. ¿Qué tipo de cursos? Pues aquellos de iniciación a la programación.

Tampoco te diría que, si tienes muy claro que quieres hacer Android, vayas directamente a un curso especializado en Android, porque antes de meterte en este, tienes que tener muchísimos conceptos básicos aprendidos. SI hay un curso de Android de 1-2 años y si realmente vas a empezar desde cero, no creo que sea lo mejor porque seguramente te perderás.

Como digo, hay muchos conceptos básicos que necesitan aprender y que tienen que quedar claro para poder empezar a volar solo. Una vez que tu tengas estos conceptos básicos, a base de autoaprendizaje, podrías aprender Android, iOS, Web, lo que quieras, da igual.

Si te ha resultado útil este artículo puedes hacer que también lo sea para otras personas compartiéndolo en , LinkedIn o .

Como siempre para cualquier duda o sugerencia puedes contactar conmigo y estaré encantado de poder ayudarte.

¡Suscríbete

a la newsletter!

Simple y llanamente te mantendré al día una vez al mes a través de un email con artículos o noticias de interés relacionadas con el mundo de las aplicaciones móviles. ¡Nada de spam!