Cuando muchas personas empiezan a estudiar programacion, es obvio que lo primero que quieren aprender es a escribir codigo en un lengujae de programacion, el que sea, pero aunque esto les suene raro, el escribir codigo en un lenguaje de programacion no los va a convertir en desarrolladores.
De hecho yo conozco a muchas personas de distintos rubros, y aunque conocen algun lenguaje dificilmente desarrollan software.
asi que si tienes la tendencia a ver videos de 10 horas de python, 10 horas de Java y lo unico que aprendes es bucles, condicionales, funciones, clases, y asi, pues dejame decirte que no es suficiente, y hasta puede que estes perdiendo el tiempo.
Y no lo digo a mal, yo tambien he pasado mucho tiempo estudiando lenguajes solo porque queria aprender mas de codigo, pero con los años ayudando a personas a iniciar en codigo, me he dado cuenta que hay una ruta mas corta y de eso es lo que quiero hablarles el dia de hoy.
En este video voy a mencionarles 5 pasos para realmente entender como se crea software y como iniciar una carrera prospera en programacion.
1. Investiga un Area Tech que te apacione
El titulo de Desarrollador, ingeniero de software, programador, son terminos muy genericos, porque no dicen que es lo que hace en su trabajo. Y aqui esta el detalle real, en un trabajo de verdad estos profesionales puden hacer todo tipo de tareas, como diseñar Interfaces graficas de usuario, solo escribr consultas de bases de datos, logica para videojuegos, programas para hardware o dispositivos electronicos, aplicaciones de red, y asi. Es decir el area tech es muy grande y si quieres aprender a desarrollar en mi opinion es mejor investigar un poco a que area te vas a dedicar.
En lo personal yo te recomendaria las areas mas populares como son:
- Desarrollo web, en las que creas aplicaciones web, estas son paginas donde usuarios se registran por una funcionalidad, y hasta pagan por su uso
- Desarrollo de apps moviles, que son las apps que tipciamente usas desde tu telefono, y que tiene similitud con el desarrollo web
- Desarrollo de videojuegos, que es un area donde no todo es codigo sino que requiere mas creatividad para crear una historia y darle una experenica unica al momento de entrener una persona, aqui tambien podria llevar algo de diseño, graficos, audio y mucho mas
Y estas no son las unicas areas, hay muchas mas complejas, mejor pagadas, mas especializadas, es decir que hasta necesitas un titulo para usarlas en un entorno laborarl real (electronica, robotica), pero con estas puedes iniciar.
La idea en este punto a mi modo de ver es que muestres interes, que te enteres de que es lo que podrias crear cuando ya conozcas mas de esta area.
2. Aprende las bases de tus herramientas
Una vez ya escogiste el area que te interesa, lo siguiente es aprender tus herramientas y para esto estan los lenguajes de programacion, hay muchos y no todos sirven para lo mismo, es por eso que yo lo veo como un kit de herramientas, por que dependiendo de tu trabajo escoges un lenguaje u otro.
por ejemplo si quieres ser desarrolaldor web, lenguajes como Javascript serian una opcion real porque todo la web usa este lenguaje principalmente Si escogiste apps moviles, lenguajes como Swift o Kotlin son opciones modernas y te llevaran a crear aplicaciones actuales y si escogiste desarrollo de videojuegos lenguajes como C# o C++, serian un excelente opcion debido motores de videojuegos como Unity o Unreal Engine los usan.
Pero esto lo averiguaras cuando ya hayas investigado tu area, por eso el paso previo.
En este paso puedes dedicarle cuantas horas quieras a tu lenguaje, pero algo que debes saber es que intentar saber todo del lenguaje es una perdida de tiempo.
De hecho esto es comun, muchas personas creen que aprender a programar es como un proceso secuencial estricto, en el sentido que primero tienes que saber todo de tu lenguaje, luego todo de un framework, luego saber todo de base de datos y asi. Pero en la vida real esto no lo es tanto, de hecho lo correcto seria decir, que solo necesitas saber lo necesario.
Por ejemplo si vas a estudiar programacion, y ya entendiste como crear un programa basico que acepte entradas de usuario, proceso usando controles de flujo como condicionales, bucles, luego conoces como organizar en funciones, y modulos, pues ya es suficiente para pasar a otro tema.
Esto es lo que yo hago cuando tipicamente aprendo un nuevo lenguaje, estudio las bases del lenguaje, conozco estas bases y a partir de alli empiezo a crear algunos ejemplos practicos simples, que justamente este es el siguiente paso que les quiero menciuonar.
3. Practica con tus herramientas
Una vez escogido tu lenguaje de programacion lo siguiente que debes hacer es empezar a usarlo y para eso tienes que crear algunos ejemplos basicos para lo que fue hecho,
por ejemplo si escogiste Javascript, create una aplicacion sencilla de tareas, una calculadora, un formulario que capture datos Si escogiste Kotlin o Swift pues basicamente es crear lo mismo pero en aplicacion movil y si escogiste C# para videojugos, podrias crear un escenario basico donde se mueve un personaje y colisiona con objetos y asi.
es decir que la idea es que empieces a usarlo al menos de forma basica tu lenguaje, solo con este te daras cuenta que no solo se trata del lenguaje sino del entorno donde se usa.
Pero no solo eso sino que tambien notaras que sabiendo solo cosas basicas no puedes crear programas como los que usas a diario, por lo que necesitas el siguiente paso.
4. Domina las APIs y Frameworks o SDKs
Quizas has escuchado que un buen programador dominar los algoritmos, estructura de datos y muchas veces en mis otros videos los he mencionado, y si. Un buen programador eventualemnte se encuentra con esos temas. Pero aqui no estoy hablando de alguien que ya programa sino de alguien que empieza, y si tu estas empezando y hasta este punto solo has creado programas simples, no te va a servir de mucho el uso de estrucuras de datos complejas o algoritmos de busqueda avanzados.
Sini necesitas mas practicidad a este punto, es decir necesitas crear cosas que alguien pueda usar, y para esto estan las APIs. mas especificamente REST APIs
tanto si eres un desarroloo web, movil o de videjojuegos te las vas encontrar, estas basicamente son servicios de internet que te dan URLs y que puedes usar con tu lenguaje de programacion permitiendole a tu program desde subir archivos, cobrar a tus usuarios, guardar datos en la nube, comunicar a tus usuarios en tiempo real, enviar mensajes de texto, procesar sus datos con IA, y mucho mucho mas.
Aprender como se usan estos servicios te ayudara a enteder como añadir funcionalidad a tus aplicaciones sin tener que implementarla tu mismo, y si lo ideal es que un programador conozca todo esto, pero cuando empiezas esto te puede ayudar a entender que si unes muchas partes de codigo puedes crear un software mas complejo.
5. Busca un problema y plantea tu solucion
Usando las APIs, creando unos proyectos basicos, y sabiendo las bases de tu lenguaje, lo unico que te ha dado son habilidades, sabes hacer algo, pero no sabes en que usar tus habilidades. Bueno aqui finalmente entra la habilidad individual de cada quien, que es resolver un problema a su modo.
Alguna vez se han preguntado porque hay tantos tipos de software para resolver lo mismo, bueno la respuesta esta en este paso, porque cada persona ve el mundo distinto o al menos desde un punto de vista que no es exactamente igual a otra.
Por lo que si planteo un problema y dos personas tratan de resolverlo, su forma de pensar genera dos soluciones que pueden variar.
y esto en software se nota.
yo conozco desarrolladores que tipicamente dicen algo como, me gusta usar tal programa, pongamos de ejemplo Notion, y dicen, pero no me gusta como hace las cosas, asi que voy a crear una alterantiva que ofrezca una mejor solucion a esta caracteritica que mas uso. y por esta razon no tenemos una sola aplicacion sino una varidad de alternativas como Obisidian, Evernote, Coda, Clickup, Nimbus Note, y estoy seguro que muchos programadores incluyendome en un punto hemos pensado en hacer otra alternativa mas.
Pero esto lo aplicas en todo, vez que un negocio en la vida real es lento en atencion por colas, quizas puedes crear un sistema de atencion al cliente basado en tickest, quizas ves que comprar un producto pro el movil toma muchos pasos, tu podrias crear un solucion mas simplifcada, y asi.
al punto que quiero llegar es que en esta etapa este proceso de ver al mundo como problemas que puedes solucinar con software, es basicamente lo que te convierte en un desarrollador, porque puedes plantear slucuones usando las habilidades de escribir codigo.
Conclusion
En fin como pueden ver no es complicado si lo piensan, obviamente no quiero decir que sea facil aprender a progarmar, tienes que estudiar, practicar, darle horas de estudio diarias, hay cosas dificiles que tienes que aprender, pero el proeceso para convertirse es este que te menciono, es el proceso que te pone en camino para ser desarrollador, a partir de alli ya depdne de ti estudiar mas afondo temas mas especializados o hasta complejos, como pueden ser esturucta de datos, algoritmos, flujos de trabajo en equipo, herramientas de automatizacion, lenguajes nuevos, y mucho mas, pero para ese entonces dificilmente ya necesitarias ver este canal.
Espero haberte dado una idea y si estas empezando no te desanimes, si realmente te interesa esta area, eventualmente solo con prctaica y constancia lo puedes dominar. Nos vemos en un siguiente video.