Creo que su premisa es defectuosa: que puede convertirse en un gran desarrollador sin pasar mucho tiempo en ello.
Probablemente necesite pasar casi 10,000 horas de práctica enfocada para ser grandioso, si cree en los estudios.
Dicho esto, aquí hay algunas tareas que completé para convertirme en un gran desarrollador:
- ¿Cuál es el siguiente paso después de aprender HTML, PHP, JS y CSS?
- Soy un estudiante de Ingeniería Electrónica pero quiero tener una carrera como Desarrollador de Software (no TI). ¿Qué debo hacer? ¿Cuál debería ser mi estrategia?
- ¿Para qué año en ingeniería debería uno involucrarse en la codificación para aterrizar en Flipkart o compañías similares?
- Pronto obtendré un doctorado en geología, y mi especialidad de pregrado también está en geología. ¿Es posible obtener un puesto de facultad en Informática?
- ¿La programación es solo para chicos jóvenes? ¿Puede un viejo como yo aprender programación y conseguir un trabajo?
- Lea cualquier libro o artículo de programación que pueda tener en sus manos y que atraiga su atención.
- En el idioma que elija, escriba programas cada vez más complejos escritos por otros y haga todo lo posible para comprender cómo funciona cada uno. (El método “Aprender Python de la manera difícil”).
- Escriba un juego basado en texto donde el usuario pueda pasear por una ciudad virtual y hacer cosas interesantes en cada ubicación. Agregue soporte de red para que alguien pueda conectarse a su aplicación como servidor y explorar la ciudad. Luego, reescribe todo el juego para que varias personas puedan iniciar sesión a la vez y se vean mientras deambulan.
- Escriba código que manipule gráficos: cargue una imagen, realice alguna transformación en ella y guárdela de nuevo.
- Escriba un lenguaje ensamblador que pueda activar una llamada al sistema para escribir texto en la pantalla. Luego cargue un archivo desde el disco.
- En lenguaje ensamblador, escriba un juego completo, manejando la entrada, los eventos, los gráficos y cualquier física usted mismo. Comuníquese directamente con el hardware cuando sea posible, pero realice llamadas al sistema cuando lo necesite. Para obtener puntos de bonificación, hágalo en una plataforma de 8 bits. Para obtener puntos de bonificación adicionales, prueba el Game Boy.
- Lea acerca de cuánto tiempo lleva cada instrucción en lenguaje ensamblador (probablemente en Pentium o anterior, o 68000, o una CPU de 8 bits). Optimice su código de gráficos según lo que aprendió.
- Escribe un analizador en C ++. Luego escriba otro, y luego escriba un compilador de C en C ++. (Esta fue mi primera exposición a C ++; ¿prueba de fuego?)
- Lea sobre la metaprogramación de plantillas. Aprendí de http://www.amazon.com/Modern-Des…. Usa algunos de los conceptos más avanzados.
- Aprende a codificar en LISP. Escribe un juego en él.
- Aprende el idioma Lua. Tiene mucho poder de LISP con una sintaxis mucho mejor. Escribe juegos usando Lua.
- Aprende Python, si aún no lo has hecho. Vale la pena tenerlo en su caja de herramientas.
- Juega con algunas de las herramientas de aprendizaje automático en Python.
- Escribe una aplicación. O tres Elija las herramientas que le parezcan adecuadas.
- Aprende Arduino y escribe aplicaciones para esa plataforma.
- …
Y, sobre todo, no haga preguntas, ni a mí ni a nadie, sobre cómo definir cualquiera de estas tareas. Parte del aprendizaje es la investigación. Hacer preguntas en el camino es hacer trampa.
O ignora la lista completa y simplemente ponte por tu cuenta y encuentra cosas que parezcan interesantes, y aprendelas. Ese es el verdadero secreto: debes inspirarte en el viaje, y no puedes caminar en los zapatos de otra persona y esperar estar inspirado de manera similar.
Leer blogs Lea los subs de programación en Reddit. Lea las noticias del pirata informático. Leer libros. Aprende lo que parece interesante. Establece tus propias tareas. No le pidas inspiración a la gente. Estar inspirado. Y luego aprende un poco más.
Sí, aprendí lenguaje ensamblador joven. Era la única forma de escribir un juego en aquel entonces. Y me da una gran comprensión intuitiva de cómo funcionan las computadoras. Pero hoy ni siquiera sé que ayuda: el ajuste manual que una vez tuvimos que hacer para que los juegos funcionen parece pintoresco en una época en la que tienes procesadores gráficos integrados en la CPU que pueden empujar píxeles más rápido que el ensamblaje mejor ajustado idioma. Y cuando puede ser flojo y simplemente enviar su aplicación en una descarga de 4 gb en lugar de tener que descubrir cómo encajarla en 128k de RAM.
Lo importante ha cambiado. Encuentra tu pasión y síguela. No intentes seguir a alguien más, porque el suyo podría no ser el camino correcto, ya sea porque los tiempos han cambiado o simplemente porque eres una persona diferente.
Buena suerte.