Una pregunta muy común entre aquellos que están pensando aprender a programar es con qué lenguaje empezar o qué frameworks aprender.
Quizá una manera que parecería razonable para acercarse a esta pregunta es ver una lista de ofertas de trabajo y fijarse en cuales son los lenguajes y los frameworks con mayor demanda; pero esto desde mi punto de vista es un error.
¿Por qué un error? mas que nada por un hecho ineludible que me extraña lo poco que se menciona:
Los frameworks y los lenguajes de programación cambian todo el tiempo
... espero haberlo resaltado lo suficiente, y es que en parte me inspiré para escribir sobre este tema debido a un video de alguien que aprendió a programar de manera autodidacta usando Youtube y del montón de malos consejos y vendehumos que se encontró.
La realidad es que si empiezas a aprender a programar ahora mismo, es bastante posible que tardes varios años en poderte dedicar profesionalmente a programar y para ése entonces las herramientas de moda habrán cambiado.
Algunos podrán señalar que lenguajes como JavaScript, C++ y Java llevan ya décadas utilizandose ampliamente, pero ésa es una afirmación bastante engañosa, puesto que aquellos lenguajes han cambiado radicalmente a lo largo del tiempo.
Muchas cosas que eran prácticas comunes dentro de ésos lenguajes, ahora se han vuelto reliquias del pasado que todas las guías de estilo recomiendan evitar (de C++ puedo citar el new, el delete o el typedef entre otros, y de JavaScript recuerdo que antes ni clases tenía y lo que se hacía era crear copias de un objeto y pegarle nuevas funciones a las copias para simular herencia), debido a que los lenguajes han incorporado cosas nuevas que ya funcionan mejor.
... y hablando de Java, ése lenguaje originalmente era ampliamente utilizado para correr en el navegador, y actualmente es una pesadilla encontrarnos con una página web que requiere utilizar Java.
Además, también hay lenguajes que pasaron de ser muy populares a infames o a desaparecer, ejemplos: PHP y ActionScript.
Espero que ya haya dado suficientes ejemplos para convencerlos.
Creo entonces que la pregunta obligatoria debería de ser ¿qué conviene aprender en lugar de frameworks y lenguajes?, y la respuesta a ello creo que se puede dividir en varios puntos:
- No es mala idea aprender lenguajes de programación, pero sólo dedica tiempo a aprender aquellos que estés usando frecuentemente.
Si apenas vas a empezar a programar no importa tanto por cual empieces; si alguno te resulta muy complicado puedes pasar a otro más simple y reintentarlo cuando ya tengas más experiencia.
Lo más importante es practicar, en este caso no vale la pena ser perfeccionista en qué lenguaje elegir para iniciar ni cual pueda ser el mejor libro. - Lo mismo aplica para los frameworks, aprende sólo los que vayas a utilizar activamente. Puedes iniciar proyectos personales y decidir qué frameworks aprender sobre la marcha.
Mas allá del conocimiento de un framework en específico, la habilidad de aprender y adaptarse en crucial. - Para los que ya estén un poco curtidos en la programación, conviene también conocer patrones de diseño(hay varios libros que los describen, pero el clásico es Design Patterns: Elements of Reusable Object-Oriented Software), principios de código limpio(recomiendo leer Clean Code) y algoritmos (este es un tema muy amplio, pero en una publicación que subí hace poco menciono qué cosas de los algoritmos son más útiles).
No hay comentarios.:
Publicar un comentario