Como ser programador fullstack de 0 a 100 – part 1

Algo muy común en el área de programación es que te pidan ser un desarrollador fullstack, que seas un prodigio programando y de paso que sepas cocinar.

fullstack

pero que tan alejado estamos del ser fullstack, anteriormente hablaba que no existe el programador elegido, el dios de la programación, solo somos humanos con curiosidad de todo.

pero cada día se hace mas común buscar fullstack y buscando un poco en Internet veo que te digan que debes dominar, php, nodejs, .net, ruby, go, python java para ser backend y en el front angular, react, vuejs, ember usar webpack git y tfs desarrollo de app en android y ios.

anteriormente decía que es imposible ser especialista en tantos lenguajes pero si estas acá leyendo es que tu objetivo es ser fullstack entonces, si no sabes nada vamos a ver los siguientes puntos.

Aprende teoría de programación para ser fullstack

Parece ridículo, pero el primer paso es aprender bien programación, y no hablamos un lenguaje, si no las bases de esta profesión, aprende que es la programación orientada a objetos, como se encapsula, que es polimorfismo, que son los modelos porque poo.

Aveces odio admitir que me hace falta mas teoría, he aprendido a golpes a programar, pero entre mas tiempo pasa mas te das cuenta que lo teórico y aburrido sirve mucho.

Resultado de imagen para programacion

A partir de esta teoría, sale todo los lenguajes que conocemos, es decir que si vamos a hacer un encapsulamiento de x objeto, servirá en la mayoría de lenguajes de programación.

también a partir de lo mas básico como los bits, numero hexadecimales y teoría que podemos decir absurda, en algún momento les hará entender como funciona todo.

por ejemplo, cuando llevaba electrónica decía que para que me servia aprender ensamblador, hoy no programo en ensamblador, pero entiendo como funciona todo, como se transpila el código a unos y ceros y como funciona en el procesador.

Aprender como funciona tu entorno de trabajo

Para ser un buen programador fullstack, esta es la clave, conocer el entorno de trabajo, esto implica que tendremos una lista de tecnologías a usar.

no es lo mismo programar una app para windows a una en mac, android o ios, cada uno tiene sus limitaciones tecnicas, esto hace que sepas hasta donde llegar y no morir en el intento.

cuando enseño sobre android, siempre digo que conozcan las diferencias entre algunas versiones, que se aprendan cual es el numero de version compatible y un largo etc.

vamos a dar un ejemplo sencillo

si quiero ser fullstack web, voy a aprender a usar back y front, este tiene un servidor en común, así que hay que aprender que tecnología cusa el servidor.

si es linux, debemos saber que versión de php soporta, que versión de apache tiene, que gestor de contenido si soporta alguna libería especial, y esto es porque no podemos correr un servicio asp.net en linux (no hablo de net core) o querer instalar nginx cuando puede ser incompatible, al igual en el front, tal vez queremos usar Django, pero no funciona por incompatibilidad.

como dije unos párrafos antes, al conocer nuestro entorno nos dará una lista de que tenemos que aprender o mínimo comprender para llegar a nuestra meta de fullstack.

Aprende 2 lenguajes distintos (como mínimo)

Yo soy de la idea que podemos aprender 2 lenguajes de programación completamente distintos, es decir enfocados en el back y en el front.

para uso mas practico y fácil de pagar, podemos aprender PHP para backend y Web (javascript,html,css) para web, no hacer paginas con php, si no dividir servicios (webservices) y front cliente.

Estos dos lenguaje comparte lógica de programación, algunas funciones entre otras cosas, así que aprendes como usa el cliente y el servicio.

esto queda de cada uno como aprender, si aprenden dos lenguajes al mismo tiempo o primero uno y luego el otro, hay que recordar que no necesitamos ser master en cualquiera de estos lenguajes, simplemente conocer lo básico y lo especifico que vamos a usar.

Lee e infórmate más

En el mundo de la programación todo los días hay algo nuevo, ya sea una actualización de algún lenguaje especifico o un nuevo lenguaje en tendencia, así que mi recomendación es leer, esto para no quedar des actualizado, para saber mas sobre el contexto y seguir aprendiendo.

Para no hacer tan largo el tema voy a dividir en 2 o 3 post este podría considerar como lo mas básico

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.