545 - Mama quiero ser full stack developer
¿Que es full stack developer?Te cuento mi experiencia como full stack developer de medio pelo en #linux y que es lo que estoy implementado por si te ayuda
Llevo todo el fin de semana escribiendo código como si no hubiera un mañana. Y, en uno de esos momentos de lucidez, o no, me he dado cuenta que estaba haciendo de full stack developer. Vamos, que estaba trabajando a lo Juan Palomo. Y eso que el front end es algo, que me gusta mucho, pero con lo que realmente no me siento cómodo, porque, seamos sinceros, tengo la estética donde termina la espalda, para que nos vamos a engañar.
Mama quiero ser full stack developer
Un paseo por el pasado
Como sabes, hace un tiempo, con la llegada de Elon a Twitter, se produjeron determinados cambios, consecuencia de la necesidad de rentabilizar la inversión realizada. Uno de estos cambios, tiene que ver directamente, con los bots de publicación. Esto ha llevado a que muchas publicaciones automatizadas murieron ocasionadas por las limitaciones impuestas.
En la red de Sospechosos Habituales, a la que como sabes pertenece este podcast, tenemos automatizado la publicación de los nuevos episodios en el grupo de telegram. Esto, lo implementé en su día implementando un plugin de WordPress.
Con lo sucedido con Twitter, se planteó realizar la misma operación. Es decir, automatizar la publicación mediante un plugin de WordPress. Sin embargo, debido a razones que no vienen al caso, la cuestión es que me decidí a realizar una aplicación, que permitiera realizar tanto las publicaciones en Telegram como en Twitter, ademas de otras cosas… Y esto es lo que me ha llevado a donde me encuentro a full stack developer.
¿Que es eso del full stack developer?
Si no sabes lo que es un este nombre tan rimbombante de full stack developer, decirte que se refiere a un desarrollador que tiene conocimientos tanto del front end, como del back end.
¿Me considero un full stack developer? Para nada. Hasta la fecha, la mayoría de mis desarrollos o han ido dirigidos al back end directamente, o han ido dirigidos a aplicaciones de escritorio. En raras ocasiones me he dedicado al front end, mas que nada por lo que he comentado anteriormente. Tengo bastante poco gusto estético.
¿Es posible ser un full stack developer? Desde mi punto de vista, lo veo muy complejo por dos razones fundamentales. La primera de las razones, es que necesitas unos grandes conocimientos, y son muchas las tecnologías que puedes encontrar tanto en el back como en el front. Pero si esto no fuera poco, está la otra razón, la velocidad con la que se actualizan todas las tecnologías intervinientes. Si durante un tiempo te dedicas únicamente al front, es posible que cuando vuelvas al back, la tecnología que estabas utilizando se ha quedado obsoleta y te necesites reciclar, y lo mismo se puede decir del front.
¿Es interesante convertirse en un full stack developer? Suponiendo que fuera posible eso de convertirse, la verdad, es que no tengo claro que fuera la mejor estrategia. Creo, que la mejor estrategia es la especialización ya sea en el front o en el back, pero además centrarte en una tecnología concreta.
Esto no quiere decir, que te olvides del resto, y que dejes de aprender o estudiar. En esta profesión dejar de aprender o de estudiar, es simplemente, quedarse obsoleto a la velocidad de ya.
¿Porque digo lo de full stack developer?
La aplicación que estoy desarrollando es una aplicación web. Con lo que algo de eso hay. Desde el punto de vista técnico,
- El back end lo estoy haciendo con Rust, utilizando el framework axum y plantillas jinja con un crate llamado minijinja.
- El front end lo estoy haciendo con un framework de css que se llama pico.css y con vanilla JavaScript.
Por supuesto, y como te puedes imaginar, todo esto lo he metido en un contenedor Docker.
jinja
Sin lugar a dudas, algo que me está viniendo fantástico es jinja. Esto de jinja, es un motor de plantillas que es realmente rápido, y que te permite generar texto de forma eficaz y sencilla.
Lo cierto es que estoy utilizando Jinja, tanto para generar las páginas web al vuelo, como para los mensajes que hay que enviar tanto a Telegram como a Twitter.
¿Para que necesito web?
Lo cierto, es que cuando empecé con todo esto, en ningún momento pensé en hacer un frontal web. Para nada. Yo me apaño perfectamente en la terminal. Abro un archivo yaml y introduzco allí la configuración y me quedo mas ancho que largo.
Sin embargo, esto no es para mi solo. No seré yo el que lo gestione, o al menos no el único. Con lo que recurrir a la terminal, evidentemente no es lo más práctico. Así que se hizo necesario un frontal, donde introducir tanto la configuración, como cada uno de los podcast que participan en la red. Incluso, tener la posibilidad de darlos de alta y baja, o activarlos y desactivarlo.
Además era necesario, establecer usuarios y contraseñas, dado que podemos ser varios los que lo editemos.
Más información,
Mamá, yo también quiero ser full stack developer, lastimosamente mis conocimientos si están bien bajos, he querido seguir aplicando Python pero no he podido hacer mucho e igualmente a tu persona soy mas de back-end que de front-end (ahí literalmente me ves copiando y pegando lo que encuentre a ver si logro entenderlo), pero si puedo al menos tener un comienzo para ser un junior, no me caería mal aunque mi diseño posiblemente esté al mismo o peor nivel tuyo