¿Cómo aprendieron las personas a codificar antes de los bootcamps de desarrollo?

Me gustaría que diera un paso atrás y pensara en el motivo de su decisión de aprender a codificar. Mencionas que quieres convertirte en un desarrollador junior con Python. Pero, ¿qué significa esto realmente? Quieres aprender codificación:

  1. Para desarrollar una idea que tengas en mente (ambiciones empresariales).
  2. Por diversión, es decir, crees que el campo es intrigante y te gustaría experimentar.
  3. Porque crees que es una gran adición a tu currículum.
  4. Porque desea convertirse en un ingeniero de software profesional y encontrar trabajos en el dominio.
  5. Porque usted es un gerente de proyecto / producto que quiere ensuciarse las manos para entender las tuercas y tornillos de sus productos.
  6. Porque hay una gran exageración alrededor del campo y no quieres sentirte excluido
  7. Porque la Informática siempre fue un campo de interés, pero nunca tuvo la oportunidad de estudiarlo
  8. Porque agregar esta habilidad a tu currículum te permitirá avanzar en tu carrera

Estas son las razones por las que podría surgir de la parte superior de mi cabeza que impulsaría a alguien a ingresar al campo (estoy seguro de que hay muchos otros). La razón por la que necesito que pienses en ellos es porque tu elección debe dirigir el camino que tomas para lograr ese objetivo. En otras palabras, no tiene que convertirse en un ingeniero mecánico para renovar un automóvil clásico (aunque este conocimiento definitivamente ayudará). Como tal, no tiene que convertirse en un ingeniero de software profesional para desarrollar un prototipo para una aplicación o un sitio web que tenga en mente.

Cada una de las razones enumeradas anteriormente tiene un camino corto y un camino largo. El camino largo es aprender todo lo que hay que saber sobre la disciplina de la informática y sacar provecho de ese conocimiento para desarrollar sus habilidades de codificación, o simplemente puede aprender lo que sea necesario para lograr el objetivo que tiene en mente.

Con eso dicho:

1, 2, 3, 5, 6, 8 no requiere que profundice en el dominio y simplemente puede tomar un camino más corto para aprender a programar (lo que explicaré a continuación sobre un posible enfoque).

4, y 7 requieren que profundice en los temas fundamentales de Informática, tenga un control firme de ellos (enumeraré las referencias a continuación), y continúe, sin pausa, con paciencia e indefinidamente, actualizando su conocimiento (el aprendizaje no termina cuando te gradúes o te gradúes).

El camino corto

Cursos online. Hay muchos recursos en línea que te permitirán aprender Python para diferentes propósitos y a tu propio ritmo. No tiene que dedicar 10 horas por día para adquirir las habilidades de programación necesarias. Enumeraré algunos de los mejores cursos / recursos a continuación:

https://www.coursera.org/special…

Introducción a la informática

Aprender Python

Aprender a codificar

Cursos gratuitos de desarrollo web (Ruby y Rails not Python)

El largo camino

He escrito una respuesta en Quora que enumera previamente todos los temas que generalmente se tratan en un plan de estudios de pregrado de Ciencias de la Computación además de la programación. Echa un vistazo a los temas que comienzan a profundizar en ellos uno por uno (aunque no estoy seguro de que este sea el camino para ti).

La respuesta de Bassem Dghaidy a Además de la programación, ¿qué aprendes en informática?

Aprendiendo a aprender

Con todo lo dicho, la habilidad más importante que les enseño a mis alumnos es aprender a aprender. Soy un desarrollador de software autodidacta y escribí código a nivel profesional a la edad de 16 años. La información es abundante, el truco es:

  1. Define tu meta final
  2. Encuentre la información relacionada y contribuirá directamente a lograr este objetivo.
  3. Discernir las tonterías de tutoriales / libros / videos y recursos de calidad.
  4. Experimenta como loco (confía en mí, nada se romperá más allá de la reparación). De hecho, es romper cosas que te enseñarán más.
  5. Escribe código como loco (no pierdas la oportunidad de practicar)

Lo siento si sigo haciendo referencia a mis respuestas, pero como ya están escritas, no es prudente volver a escribirlas. Esta respuesta específica sobre el proceso de aprendizaje es muy importante, échale un vistazo:

La respuesta de Bassem Dghaidy a ¿Cómo se realizan los proyectos de codificación lateral?

¡Buena suerte!

De una forma u otra, tienes que hacer tiempo para ello, y no hay absolutamente ninguna GARANTÍA para ningún método.

En los Estados Unidos, hay colegios comunitarios que pueden tener cursos introductorios de programación. Para un adulto, tener una clase programada regularmente algunas noches a la semana es factible. También es útil tener asignaciones regulares y los recursos de un instructor para ayudarlo a superar los puntos difíciles. Al menos obtendrás una calificación de aprobado / reprobado que podría ayudarte a encontrar tu primer trabajo de desarrollador (pero necesitarás mucho más que un solo curso para cubrir todo).

Puede intentar seguir un curso de autoaprendizaje, usar los recursos disponibles en la Web (como los cursos del MIT, etc.) Tendrá que ser mucho más disciplinado y tendrá que comprar recursos que de otra manera serían proporcionados. por una escuela / curso (es decir, una PC moderna capaz de ejecutar máquinas virtuales). Pasaría mucho tiempo extra configurando su entorno de enseñanza, pero eso también sería una experiencia de aprendizaje.

El autoaprendizaje significa que necesitas motivación (s). Si eres como la mayoría de las personas, aprender los aspectos básicos de la informática y Python no es motivador, por lo que la motivación externa de un curso es muy útil. Es posible que un conjunto de proyectos sea lo suficientemente motivador, pero seleccionar esos proyectos también puede ser un desafío y puede implicar más gastos.

Una forma de seleccionar proyectos es mirar su ocupación actual para ver dónde un programa de computadora podría mejorar las cosas de alguna manera. Otra forma es mirar el área de aficionados “hazlo tú mismo / Hacedor” para ver qué proyectos te interesan.

Dicho claramente, había dos formas de aprender a programar el pre-bootcamp. Y ambos, de hecho, lo hicieron bastante parecido a los campamentos de entrenamiento.

  1. Hágalo usted mismo, es decir, consiga libros, ejemplos, tutoriales, etc. Luego, pase varias horas al día durante semanas, meses e incluso años para aprender a codificar.
  2. Inscríbase en un curso por varios meses hasta varios años, pasando al menos un puñado de horas por día.

Casi hice los dos en orden. Pasé alrededor de 5 años aprendiendo solo mientras trabajaba (e iba a la escuela); pasé al menos 2 horas por día en codificación, a veces hasta 18 horas (especialmente durante los fines de semana). Y luego me inscribí en una licenciatura en ciencias de la computación por otros 3 años (aunque lo hice a tiempo parcial mientras trabajaba, convirtiendo los 3 años en 5). Por lo tanto, debe ver que un interés extremo es un requisito: incluso puede ser una obsesión, por lo que “quiere” dedicar tanto tiempo. Y no había garantías … de hecho, ahora estoy trabajando donde mis habilidades de codificación son solo una bonificación secundaria (extra), ni siquiera un requisito para el trabajo.

Desafortunadamente no hay una “manera fácil”. Definitivamente no es una “forma rápida”, ya que tendrás que pasar esas horas. Ya sea que los haga todos en un lote o en varios meses. La regla de oro habitual es de alrededor de 1000 horas para “realmente” aprender a codificar, después de eso comienza a convertirse en “experto”, pero eso es solo una estimación, muchas personas difieren, muchos idiomas ajustarían el tiempo, los conocimientos / experiencias previas pueden influir en tales , etc.

Si no puede darse el lujo de tomarse tanto tiempo libre, busque un curso que dure más tiempo, pero use menos tiempo por día. Tal vez seguir con la idea autodidacta podría funcionar, pero le aconsejo que al menos lo siga con un curso intermedio / avanzado para resolver cualquier “problema” que no haya detectado (la tendencia en el autoaprendizaje es omitir la teoría en lugar de la práctica, ambos son muy importantes).

Lo mejor para el autoaprendizaje es encontrar a alguien que pueda actuar como mentor (incluso si necesita pagarles). Aún mejor sería encontrar un grupo de compañeros que también aprendan lo mismo, por eso los cursos tienden a funcionar más rápido.

Hay muchos tutoriales en línea para aprender los conceptos básicos de casi cualquier idioma. Como expresaste interés en Python, Codecademy tiene un tutorial bastante bueno para ello.

Una vez que aprendas lo básico, puedes comenzar a practicar construyendo aplicaciones. Piense en las aplicaciones que podría usar en su propia vida, como un script que se ejecuta todas las mañanas para descargar cualquier cómic web que le guste en su escritorio o una aplicación web que lo ayude a decidir entre dos películas que usted y su compañero desean. Mira, la lista sigue. Esta es la parte divertida y, para muchos, el punto de programación.

Libros, mentores, ensayo y error …