¿Cuánta programación puedo aprender en un año estudiando 14 horas al día?

Soy programador profesional (más de 30 años de experiencia).

Seamos realistas: simplemente no puedes pasar 14 horas al día aprendiendo algo. Eso es simplemente imposible. Especialmente algo tan mentalmente agotador como la programación. Puedes intentarlo, pero perderás tu tiempo, no es eficiente. Aprende más inteligente

Hay investigaciones que muestran que trabajar más de unas pocas horas al día es inútil porque las siguientes horas son en su mayoría contraproducentes. He visto los resultados de primera mano.

Ahora, si lo que realmente quieres decir es cuánto puedes aprender si te dedicas al aprendizaje y lo haces todos los días, podemos discutirlo.

Dado que haces esa pregunta, deduzco que eres un principiante, que realmente no sabe de qué se trata la programación (¡eso es normal! También he estado allí).

Encontrará muchas explicaciones sobre cómo aprender idiomas, etc. en Quora (y en otros lugares). Pero me gustaría darle algunas sugerencias (basadas en una respuesta que di en otra pregunta):

  1. La mayoría de las veces, aprender un lenguaje de programación no es difícil, generalmente es la parte fácil . Lo que consume mucho tiempo (y algunas veces es difícil) es aprender las bibliotecas (las cosas que hacen posible usar el lenguaje sin escribir todo desde cero, un buen ejemplo es la GUI libray, que se utiliza para crear programas con interfaces, como su navegador). ).
  2. Otra parte difícil es aprender los conceptos utilizados cuando estás programando, en el sentido más amplio,. Eso es estructuras de datos, algoritmos, diseño, etc. Sin embargo, si está comenzando, esto no es un problema real. Simplemente comience a experimentar con el idioma, luego encontrará problemas y preguntas y poco a poco se dará cuenta de que muchos de ellos se contestan en libros / tutoriales, etc. No es necesario que los analice al principio, excepto si está estudiando Ingeniería de Software o Ciencias de la Computación.
  3. Comenzar con Python es una buena opción. Es fácil de aprender, muy potente y versátil. Y, sobre todo, tiene toneladas de material didáctico en forma de libros, tutoriales en línea y foros donde se discuten casi todos los aspectos.
  4. Al contrario de lo que piensa la gente, la programación no es simplemente saber cómo “decirle” a la computadora lo que debe hacer. Nuestro trabajo es traducir una necesidad (de un usuario) de manera que la computadora pueda “entender” (código). En un equipo grande, ese paso a menudo lo realiza alguien que luego entrega al programador un documento técnico que describe el programa que se debe crear. Pero no se equivoquen: el primer y mayor problema es la comunicación . Comunicación con el usuario, sus compañeros de trabajo, su gestión. No subestime eso, es la falla más grande de la mayoría de los programadores que he conocido.
  5. También hay muchos otros trabajos involucrados: diseño, arquitectura, pruebas, etc. Pero entenderás que mientras aprendes, comenzarán a aparecer obvios después de un tiempo.

Entonces, ¿cuánto puedes aprender en un año de arduo trabajo?

Supongo que usas Python para comenzar.

Si sigue un tutorial, debería tener una idea aproximada de lo básico en un día o dos (bucles, cadenas / números, condicionales, funciones, etc.). Ya debería poder hacer algunas cosas extremadamente simples (como imprimir en el defina los números impares entre 1 y 1000).

Después de una semana , debe tener suficientes elementos para sentirse frustrado, cuando se dé cuenta de que lo que realmente quiere es jugar con un programa “real” con elementos de la interfaz de usuario (como su navegador, Word y similares). Tendrá que aprender a administrar interfaces (ventanas, botones, etc.) Luego entenderá lo que quise decir cuando dije que el idioma en sí es la parte fácil

Por supuesto, tus primeros programas serán muy simples. Puede ser un poco frustrante al principio, pero entienda que programarlo como cualquier otra actividad: toma tiempo y práctica …

No se desanime, dentro de unas semanas debería poder hacer cosas simples pero gratificantes.

Después de un mes , debería poder entender cómo funcionan las GUI, al menos para las partes más usuales (las GUI están llenas de posibilidades muy complejas que no se usan con tanta frecuencia).

Después de 2 meses , si lo tomas en serio, debes comenzar a sentir realmente que te estás perdiendo algo. Ahí es cuando realmente debes darte cuenta de que necesitas trabajar en lo básico (la teoría ). ¿Recuerdas cuando escribí sobre estructuras de datos, algoritmos, diseño, etc.? Ahora, debe tener suficiente experiencia práctica para ver el interés de aprender sobre ellos en lugar de intentar reinventarlos. Debería comenzar a estudiarlos, encontrará mucha documentación y tutoriales en línea; busque Quora y stackOverflow para comenzar, o use un motor de búsqueda (YouTube también contiene muchos videos geniales sobre ellos).

¡No subestimes la teoría! Es una cosa que no cambia mucho, no importa qué proyecto quiera hacer, no importa qué tecnología use. No es una pérdida de tiempo. ¡Confía en mí en esto!

Ver videos y leer + practicar (¡muy importante!) Durante los próximos 10 meses (más o menos) debería darle las bases suficientes para comenzar a hacer programas realmente útiles (varias pantallas, conexión a bases de datos, o usar servicios web, administración de estado interno, etc.) ).

Qué tan bueno (competente) serás entonces depende de tu dedicación y habilidades (algunas personas son más rápidas que otras).

Coraje y buena suerte.

Primero, estarás perdiendo unas 10 horas al día. Hay una diferencia entre estudiar y aprender o retener. Más de 2 sesiones de 2 horas cada una, con unos minutos de descanso cada 15 minutos, no se van a hundir en la mayoría de las personas.

En cuanto a cuánto tiempo tomará, pruebe la primera parte de Teach Yourself Computer Science. Dependiendo de qué tan bien pueda pensar analíticamente (si no puede, elija un campo diferente, no aprenderá la programación, que es el análisis), debería tomar de 100 a 200 horas, lo que significa unos 50 a 100 días. Permitir que los fines de semana (todos necesitan tiempo libre para estudiar), eso significa alrededor de 2–1 / 4 meses a 5 meses.

entonces tendrás que aprender algunos lenguajes de programación. (Aprender un lenguaje de programación no es aprender programación ).

Depende de si ya tiene alguna experiencia con al menos un lenguaje de programación (mejor si es un lenguaje de programación orientado a objetos). Practicar el idioma llevará tiempo, pero debería poder cubrir / aprender los conceptos básicos, junto con las prácticas básicas en esas 14 horas. Tomará tiempo para convertirse en un profesional. ¡Todos lo hacen!

Todo lo mejor.