¿Cuánto aprendiste en tu primer año de codificación?

Introducción

Considero que mi primer año de programación de aprendizaje se divide en 2 etapas: pre- Piensa Python y Think Python .

Pre- Piensa Python

Comencé con Python (y es el único idioma que conozco por mucho). He visto algunos videos, leí algunos tutoriales de texto, leí algunos capítulos de libros al azar, e hice algunos programas que pensé que eran excelentes, estaban bien escritos y eran dignos de elogio (no lo tenían). Pensé que había estado aprendiendo, y realmente lo he hecho: he estado aprendiendo malas prácticas, malos hábitos y arrogancia. Pensé que había aprendido mucho, pero desafortunadamente no.

Piensa en pitón

Después de eso, me he encontrado con un libro muy bueno llamado “Think Python: Cómo pensar como un científico informático”. Empecé a leerlo y me sorprendió lo poco que realmente sé. Descubrí que no entiendo bien los conceptos, que desarrollé muchas malas prácticas, que tengo muchos conceptos erróneos y que en realidad no sé nada. Con la ayuda de este libro y algunas personas útiles en Internet, desaprendí algunas de las malas prácticas que he desarrollado (seguro que hay algunas que hago, pero no sé si son malas), me he deshecho de ellas. de algunos de mis conceptos erróneos (tengo algunos, pero no sé cuáles son), y he comenzado a entender los conceptos un poco (para estar seguro, no entiendo bien algunos, pero no sé qué son).

El código que he tenido que escribir para resolver los ejercicios ha sido menor que el que escribí antes, pero he aprendido más al escribirlo, porque los ejercicios me han abierto los ojos y he tenido que resuélvalos después de aprender los conceptos generales, y aplicando estos conceptos a los problemas, para resolverlos.

Descubrí que los programas que he escrito anteriormente pueden reescribirse desde cero y hacerse más reutilizables, mantenibles, bien documentados y (¿adivinen qué?) Menos detallados.

Conclusión

Lo que estoy tratando de decir es que su progreso en la programación de aprendizaje no debe medirse solo por la cantidad de líneas de código que ha escrito, cuántos programas ha creado ni cuántos idiomas ha aprendido. Porque a veces escribiendo código, creando programas y aprendiendo idiomas; Es posible que esté aprendiendo algunas cosas horribles que llevará tiempo y esfuerzo desaprender.

Su progreso debe medirse también por lo bien que entiende los conceptos generales y cuánto interactúa con los demás y les permite ayudarlos a descubrir sus malas prácticas y conceptos erróneos y deshacerse de ellos. Aprender de los buenos recursos es importante para garantizar que aprendas las cosas correctas desde el principio.

Nota

No soy un experto; Solo soy un principiante y un aficionado.

Eso parece relativamente impresionante. ¿Dónde pensaste que estarías?

Personas como Zuckerberg pasaron años aprendiendo a codificar antes de construir algo significativo. Además, si bien su destreza en la codificación era un trabajo duro, Facebook, que funcionaba tan bien, tenía elementos de suerte. Por supuesto que la suerte solo lo consiguió hasta ahora, es un líder empresarial brillante y claramente se ha movido más allá de cualquier ventaja que la suerte o la oportunidad podrían haberle otorgado.

Personalmente pasé menos tiempo en proyectos y más tiempo en terminar muchas cosas realmente pequeñas. Después de aproximadamente un año, tuve una comprensión firme de aproximadamente 6 idiomas y había construido todo, desde sitios web hasta CMS pequeños y sistemas operativos simplistas. Y alrededor del 80% de eso me obligó a seguir tutoriales. No se preocupe de tener que copiar y pegar el código en su primer proyecto de AI. O incluso tu cuarto o quinto. Una vez que tenga algunas en su haber y comprenda cómo se juntan las piezas específicas del dominio de AI, tendrá un momento “a-ha” y los cielos se separarán y usted construirá un auto con auto conducción. O algo.

O al menos sabrás cómo lo harías.

Además, ¿cuáles son sus objetivos a largo plazo con la programación? Si desea programar para los próximos cinco a diez años, pase el resto de su vida en puestos de gestión en los que debería concentrarse en la amplitud. Aprende muchos idiomas y cómo resolver muchos problemas. De esa manera, los ingenieros pueden respetarte como gerente y no podrán ponerte la manta sobre tus ojos en lo que respecta a los plazos.

Si quieres ser un rockstar de codificación necesitas especializarte. Elige algo, como AI, y enfócate en eso. Conviértete en el mejor que haya habido. Responde a las preguntas de Quora al respecto. Escribir artículos de blog en él. Escribir libros en él. Conviértase en tan creíble con respecto a su especialización que se convierta en un producto popular.

TL; DR: Lo estás haciendo bien. Enfócate en seguir progresando.

En primer lugar, parece que te estás moviendo bastante bien para ser un programador de primer año. Muchas personas que trabajan en sus títulos en ciencias de la computación ni siquiera han llegado tan lejos en su primer año, por lo que debería sentirse un poco más tranquilo.

La programación es un esfuerzo de por vida. Si bien habrá hitos en el camino, nunca realmente “llegarás”. La tecnología cambia demasiado rápido y usted probablemente será como la mayoría de nosotros, en eso, siempre encontrará algo nuevo que aprender.

¡Aunque son buenas noticias!

Siempre hay algo nuevo a la vuelta de la esquina: un nuevo idioma, un nuevo marco, nuevas herramientas, nuevas aplicaciones, etc. ¡Es emocionante! Esto también significa que se dirige a un campo lucrativo con MUCHA oportunidad. Los salarios de ingeniería de software tienen una tendencia de alrededor de $ 152k / año y los empleos se abren todo el tiempo.

Salarios de Ingeniería de Software en San Francisco, CA

Déjame darte un consejo amistoso. No te compares con los demás. La naturaleza misma de su pregunta es comparativa y es probable que solo quiera medir su progreso, pero no deje que eso lo desanime. Las personas se mueven a diferentes ritmos y usted se moverá más rápido en diferentes etapas de su aprendizaje. Lo importante es mantenerse en ello.

Deberías estar frustrado.

Hay una cosa que se llama curva de aprendizaje .

La curva de aprendizaje es diferente para cada uno. Depende del tema, experiencia previa y conocimiento general.

La programación, en general, tiene una curva de aprendizaje como en la imagen de arriba. Tienes que invertir mucho tiempo al principio. Aprendes mucho, pero en realidad no puedes implementar nada útil o satisfactorio.

Usted va a través de tutoriales, implementando exactamente lo que se dice y tiene la cosa funcionando. ¿Sientes que lo has entendido? Sin embargo, cuando intentas implementar tu gran idea, estás fallando en construir un esqueleto básico. La frustración es algo común en el aprendizaje.

No importa qué algoritmos aprendió o qué idiomas usó. Se trata de tiempo invertido en un campo. Es especialmente cierto si aprendes todo por ti mismo. En este caso, a menudo obtiene muchos datos, pero no puede conectarlos para ver el panorama completo.

Cuando entiendas bien lo básico, eventualmente serás recompensado.

En primer lugar, la codificación se define como “Un sistema de señales que se utiliza para representar letras o números en la transmisión de mensajes. Las instrucciones en un programa de computadora. Las instrucciones escritas por un programador en un lenguaje de programación a menudo se denominan código fuente “. Es imposible determinar la cantidad de aprendizaje en el primer año de codificación, pero lo que puede decir es que lo que pudo lograr en el primer año de codificación en términos de programas, aplicaciones, etc. La respuesta de esta pregunta también puede depende del lenguaje de programación que aprenda si es C #, PHP, C ++, Javascript, el sitio oficial de Microsoft ASP.NET, HTML5, etc. Determine un objetivo, vaya y regístrese en una escuela para obtener el máximo provecho de la experiencia total. Holberton School es el lugar donde conocerá a expertos y profesionales que lo ayudarán a aprender lo que realmente necesita aprender de las habilidades básicas y técnicas para ser un programador perfecto y ganar dinero fácilmente. Holberton School es una de las escuelas más conocidas de la región en la que puede inscribirse. Sus programadores y desarrolladores web profesionales de alto nivel pueden ayudarlo a aprender codificación desde el nivel inicial hasta el nivel más alto. Tienen expertos que trabajan en la industria y tienen una gran experiencia para guiarlo. Al graduarse de la escuela, puede obtener directamente un trabajo en el que a una edad temprana puede ganar dinero. También necesitas trabajar en ti mismo desarrollando tus propios programas y hacer un esfuerzo extra para conseguir un trabajo decente en este campo tan competitivo. Sea único y tenga su propio toque con los códigos que está desarrollando para que los empleadores lo contraten.

Como todas las cosas, aprender lo básico es generalmente rápido, la maestría toma 10,000 horas o más [1]. Entonces, eso es 10,000 horas para dominar Python, luego 10,000 horas para dominar Java.

No he pasado 10.000 horas de codificación en ningún idioma, por lo que definitivamente no soy un maestro en ninguno. Pero sigo disfrutando de la programación y disfruto enseñándola.

Mientras estés aprendiendo y encontrando cosas para disfrutar trabajando, entonces no te preocupes tanto por la rapidez con la que estás progresando.

He estado jugando con Scratch recientemente y es bastante divertido. Ver: la respuesta de Rupert Russell a ¿Cuál es el lenguaje de programación más fácil de aprender para desarrollar programas de Android en el futuro?

Notas al pie

[1] Chicago Ruby on Rails. Aplicaciones web Aplicaciones de iPhone. Aplicaciones para iPad.

Buena pregunta. Aprendí mucho sobre RPG IV, la gente, los compiladores, algo de historia del lenguaje RPG y el hardware en la tienda (por ejemplo, la computadora AS / 400). pero lo mas importante…

El gerente es el Todo. No solo te retiene, sino que luchará para que consigas un aumento en la sala de juntas. El programador principal es muy importante para aprender. El líder tiene toda la experiencia en el idioma y probablemente haga las revisiones del código por usted. Escucha y sigue sus consejos. Incluso otros programadores son buenos para aprender. Son buenos para la resolución de problemas singulares y por lo general son un problema singular. Aprenderá sobre la jerarquía en una tienda de software exitosa.

Desde mi experiencia, cada programador tiene una historia. Todos venimos de diferentes orígenes. A medida que avanzas, aprendes un poco sobre eso. Usted será el más exitoso si satisface todos y cada uno de los requisitos que le piden y mantiene su lugar.

Los mejores programadores están ‘encadenados al escritorio’ por lo general. No tome descansos largos, y no intente días libres a menos que sea necesario. El proyecto de software en cuestión es todo el negocio, y debería pensar en completar.

El primer trabajo es solo el comienzo. No es el próximo trabajo. No ganarás mucho dinero en el primer trabajo. El siguiente trabajo es donde comienza el dinero. Probablemente cuando llegue el momento de la comparación, la tienda original ni siquiera coincidirá con lo que pagará la próxima tienda. Y, quedarse por 2 años o más. Entonces el próximo empleador creerá en ti. Aprende todo sobre el lenguaje y todo sobre la jerarquía. No trates de saltar. No se verá bien. Los jugadores de equipo no saltan excepto cuando cambian de trabajo.

Sí, esto es normal.

Comencé desde el cero, sin conocimientos sobre programación o incluso con la computadora. Mientras que en el primer año de la universidad aprendí algunas cosas, pero mi progreso fue muy lento. Al final del primer año, no empecé a solucionar problemas, no Me dieron la idea de la programación, aprendí a pensar como un científico informático, aprendí cuáles son las capacidades de las computadoras, qué puede hacer una computadora.

En el segundo año tuve algo de energía adicional, así que usé la pasión que recibí en el primer año para hacer un buen trabajo, algunos buenos proyectos y pasantías, así que pensé que mi progreso no fue malo en este año.

En el tercer año comencé con la misma pasión y llegué a mi punto más alto allí, pero comencé a concentrarme en algunos temas difíciles diferentes del desarrollo, temas como el aprendizaje automático y el procesamiento de imágenes, por lo que mi progreso se detuvo durante el resto del año.

En mi cuarto año (el año pasado), comencé a continuar con estos nuevos temas para mí.

Puede tener este aspecto:

También puedes ver otras respuestas aquí:
¿Cuál es la forma de la curva de aprendizaje de la programación? ¿Cuáles son algunos de los puntos importantes para lograrlo?

Para cada idioma que aprendes, hay, en la práctica, una curva de aprendizaje.

Por una vez, “perdería” un poco de tiempo pero entrando en detalles, y luego perdería una gran cantidad de tiempo una vez que no pueda predecir.

¡Sus futuros clientes lo apreciarán seguro!

Si me acerque a usted y le diga: “Oye, puedo enseñarle cómo convertirse en neurocirujano en un año, de forma gratuita, y no es necesario que haya visto un episodio de Grey’s Anatomy”, ¿qué le diría a ¿yo? Si tuvieras algún sentido, no dirías nada, solo te reirías.

No tengo ninguna duda de que el alcalde Bloomberg tiene buenas intenciones. (Tengo dudas de que él realmente haya tomado esa resolución y siga adelante con ella, pero ese es un tema aparte). En una economía en declive, donde millones de personas siguen sin trabajo y cientos de miles más solicitan asistencia por desempleo cada semana. Los trabajos informáticos siguen siendo una panacea plausible (e incluso importante). Después de todo, no importa lo que pase en cualquier otro sector, la tecnología sigue avanzando. Y a medida que lo haga, seguirá necesitando mucha más gente detrás de escena, instruyendo adecuadamente a las computadoras sobre cómo mantener todo en funcionamiento y, con suerte, seguir adelante.

Para su primer año, un programa de 2000 líneas es bueno.

Sé que debemos decir que los programas deben ser cortos, etc., pero la realidad es que muchos necesitan ser largos, y es bueno que estés trabajando en programas no pequeños.

No recuerdo mi primer año, hace mucho tiempo, pero lo estás haciendo mejor que en mi primer año.

Creo que lo estás haciendo bien, sigue esforzándote en proyectos más desafiantes.