¿Hay un camino para aprender programación?

¿Hay un camino para aprender programación?

Desde que empezó la pandemia a explotado la demanda de mas programadores y eso a llevado a que muchas personas entren en este mundo del desarrollo.

Claro, aprender esta profesión no es igual que otras donde ya hay un camino marcado de forma específica por el cuál toda persona debe ir. En este caso no parece estar tan bien delimitado y muchos no se ponen de acuerdo. Generalmente nos dejamos llevar por quienes tienen más experiencia en el tema y dan sus sugerencias, pues bien...este artículo no será la excepción. Te hablaré desde mi experiencia, no solo como aprendiz sino también como mentor.

Antes que nada, la programación como la informática en general, te da la posibilidad de elegir en que tecnologías especializarte y de esa manera invertirás el tiempo en aprender lo que te interese más. Eso significa que debes determinar que área de la programación te llama más la atención, por que dependiendo de eso elegirás un camino de entre tantos que hay. Por ejemplo, si quieres dedicarte a Data Science entonces el lenguaje de programación que deberás aprender es Python o R, si en cambio quieres crear páginas o aplicaciones web javascript seguramente será tu elección inicial. Entonces, primero define para que te gustaría programar y será un poco más claro el camino a seguir.

En mi caso, empecé muy chico haciendo un curso de computación. En ese tiempo hacías una “carrera” en un instituto donde comenzabas como operador de PC y luego seguías como Programador de PC y Analista. La programación de aquel tiempo era más compleja porque los lenguajes corrían en terminales y no había entornos visuales ni tantas herramientas de aprendizaje...osea...Internet ni pintaba. Una vez terminado el curso, me alejé de la programación porque era muy chico y mis prioridades eran otras.

Pasaron varios años y me decidí por estudiar la carrera de programador universitario en la Facultad esperando tener contacto con el código durante mi primer año, pero me equivoqué. Mucha matemática, álgebra y cálculo...hasta el paquete Office aprendí, pero nada de programación, sin embargo tengo que rescatar que me sirvió mucho la materia de algoritmo.

Por temas personales dejé la universidad, pero como me interesaba la programación me pagué un curso de “programación visual”, como se les llamaban a los cursos de Visual Basic y Visual Fox. Hice un par de aplicaciones personales y para algunos clientes con lo que aprendí; básicamente eran aplicaciones de escritorio y usaba como base de datos Microsoft Access (si, ya sé...Access no es una base de datos propiamente dicha, pero sirvió).

Avanzando el tiempo se puso de moda la programación web con PHP como lenguaje preferido, así que me pagué otro curso, pero esta vez online, para aprenderlo. Tengo que decir que me fascinó lo que aprendí, ya que no solo podía ver mis aplicaciones funcionando en cualquier computadora gracias a Internet, sino que también usaba Mysql como base de datos (ahora sí...una base de datos real).

Una vez inmerso en el mundo del desarrollo web me fue más fácil saber por donde ir. Luego de un tiempo programando con PHP descubrí que lo que estaba haciendo era cargar mis aplicaciones desde un servidor, osea...cada vez que quería mostrar algo al usuario este debía esperar la respuesta desde el servidor, lo que no era lo más óptimo. Investigando en internet entendí que había dos ramas bien marcadas del desarrollo web, Frontend y Backend y que el lenguaje que me permitiría desenvolverme entre ambas era javascript. No tuve que pensarlo mucho, así que me dediqué a aprender los fundamentos del lenguaje y perfeccionarme.

Desde ese tiempo estudié diferentes tecnologías, además del lenguaje en sí, como frameworks de estilos (Material UI, Bootstrap) y de interfaces de usuario (AngularJS, ReactJS, VueJS), además de herramientas para backend (NodeJS, MongoDB).

¿Porqué hice este resumen de mi experiencia? Para que veas que también pase por diferentes caminos hasta encontrar lo que me gusta y me motiva a programar.

Por lo tanto, desde mi experiencia, si deseas aprender desarrollo web (programar aplicaciones y páginas web) lo puedes hacer como frontend siguiendo el siguiente camino:

  • Aprende HTML y CSS: No es necesario que le dediques demasiado tiempo, pero si el suficiente para poder maquetar sitios web que se vean bien y se adapten a distintos tipos de pantallas. Recuerda que el 90% de las personas navegan en internet o usan aplicaciones en sus teléfonos o dispositivos portátiles.
  • Aprende un Framework de estilos: Es una herramienta que te puede facilitar el trabajo y te permite en poco tiempo tener una aplicación que se vea bien y sea responsive (se adapta a los dispositivos). Hay varios muy conocidos como Tailwind, Bootstrap, Material UI, Ant Design, etc...investiga y aprende el que más te guste.
  •  Aprende algoritmos y pensamiento lógico: Este paso es sumamente importante antes de meterte de lleno a aprender un lenguaje de programación, no importa cual sea. Si no sabes razonar un problema y entender como resolverlo el tiempo que inviertas en el siguiente paso habrá sido un desperdicio. En mi caso lo aprendí en la universidad, pero puedes buscar información o cursos en internet.
  • Aprende Javascript: Es el lenguaje por excelencia en la web y te permitirá darle funcionalidad a tus aplicaciones web. Te servirá tanto para el frontend como para el backend y su curva de aprendizaje es bastante accesible. Si me preguntas a que temas darle mayor importancia, te sugiero: Variables y operadores, Condicionales y bucles, Arreglos (Métodos), Funciones y scope, Objetos, Asincronismo y peticiones HTTP (consumo de API), Módulos
  • Aprende un framework o librería para interface de usuarios: Hay varios en el mercado, por ejemplo React, Angular, Vue, Svelte y la lista sigue. Si me preguntas a mi, te sugiero React porque es una de las más demandadas o Vue porque lo considero uno de los mejores.

Una vez dominada estas tecnologías puedes seguir el camino para convertirte en un Backend orientado al desarrollo web. Te sugiero aprender lo siguiente:

  • NodeJS: Si bien al aprender una librería o framework de interface de usuarios ya estuviste interactuando un poco con el, la idea es que aprendas como crear un servidor virtual para montar tus aplicaciones o crear una API Rest y conectarte con bases de datos. Una librería que te ayudará con eso es Express.
  • Bases de datos: Aprende la diferencia entre una base de datos relacional y no relacional, luego estudia la que más te interese. En mi caso te sugiero MongoDB porque es muy usado y fácil de manejar.

Con todos estos conocimientos sabrás manejarte con un stack de tecnologías que te permitirá desarrollar una aplicación completa. En la industria se conoce a este tipo de desarrolladores como Fullstack.

Lo que acabas de leer son sugerencias desde mi experiencia para que tengas un camino más definido, pero no significa que si te orientas para otro lado esté mal...cada uno debe buscar lo que le gusta y aprender eso, porque solo así disfrutaremos de lo que hagamos.

En fin, cualquier consulta o duda puedes escribirme y trataré de orientarte.

Muchos éxitos en el camino que elijas y recuerda que, en esta profesión, los caminos no nos llevan necesariamente a un destino, sino a nuevos horizontes.

 Extra: Te dejo documentación que puede ayudarte en tu aprendizaje.

Inicia sesión para ver o añadir un comentario.

Otros usuarios han visto

Ver temas