¿Cuántos de ustedes sintieron ganas de darse por vencidos mientras aprendían primero cómo codificar / programar, y cómo combatieron exitosamente este sentimiento?

Sabes qué, la respuesta está en tu pregunta: éxito. Cuando empiezas a tener éxito, te quita el desaliento.

No me desanimé sobre la programación en general, pero cuando empecé a aprender C, tuve muchos problemas con las fallas de segmentación, etc. Hasta ese momento había aprendido BÁSICO, lenguaje ensamblador y COBOL, y nunca tuve los problemas de aprendizaje de los idiomas que aprendí C. Tuve un período en el que pensé que no debía ser lo suficientemente inteligente como para aprender C.

Superé el problema aprendiendo Pascal, un lenguaje muy similar al C que tenía un nivel un poco más alto, de modo que pude aprender los fundamentos de un lenguaje estructurado en bloques sin tener que preocuparme por todos los pequeños detalles. Hice eso durante uno o dos meses, luego pude regresar a C desde una posición más fuerte.

Así que si tienes desaliento, intenta algo un poco más simple. ¿Sabes cómo cuando conduces un auto de cambio estándar, y cambias accidentalmente de 2 ° a 5 ° en lugar de 3 °, el motor del auto realmente tiene problemas? Lo más probable es que haya perdido uno o dos pasos entre lo último que aprendió y lo que está aprendiendo ahora, y está luchando. Retroceda uno o dos pasos, obtenga algunos éxitos y vuelva a intentarlo.

Realmente nunca he tenido ganas de rendirme. Desanimado a veces, pero, siempre persistió.

En el aquí y el ahora, después de 16 años, a menudo pienso en dejarlo todo para hacer otra cosa, simplemente me disgusta la industria del software y las actitudes desagradables que promueve.

Estoy más inclinado a alentar a alguien nuevo en la programación, que está desanimado y con dificultades, que las personas que piensan que escribir un “Hello World” básico o una página web básica los convierte en un programador capaz de trabajar. La razón interna detrás de este pensamiento es que aquellos que luchan a menudo se vuelven mejores que aquellos que se autopromocionan. Por lo tanto, persistir tiene más méritos que la preocupación por cualquier lucha.

Yo diría: No combates el sentimiento de desaliento. Encuéntralo de frente. Excavar más hondo. Sumérgete en lo que sea que te esté frenando. Resolver el problema. O, a veces necesitas dejarlo ir y trabajar en otra cosa más interesante, volver más tarde.

Algo relacionado: cuando está cansado, el error de sintaxis más pequeño puede eludir incluso al programador más experimentado. Sé que si he estado en ello por un tiempo, podría necesitar dormir. Despiértese por la mañana o por la tarde, y comprenda que solo fue un error de sintaxis simple / básico. Así que lo dejas ir y regresas a él, ya sea descansado o habiendo aprendido algo nuevo, y es algo simple que te estaba frenando. No es gran cosa.

La otra trampa que no debe caer, o ceder, son estas percepciones falsas de convertirse de inmediato en un programador estrella de rock o ninja. Al igual que los deportes profesionales, hay un número limitado (si no más limitado) de posiciones abiertas para la fama de tipo “estrella de rock”. Lo mismo ocurre con la programación. La mayoría de las personas no lo son (estrellas de rock o ninjas). Hay personas que han estado en la industria desde los años 60 y 70 que aún trabajan (aunque a menudo se enfrentan a la discriminación por edad), un conocimiento y una experiencia profundos, sin reconocimiento de nombres. No te conviertes en un gran programador de la noche a la mañana o en un par de días o meses: lleva años y trabajo. (Igual que la distribución de genios entre la población: la mayoría de la gente tiene que trabajar y luchar, hay muy pocos genios verdaderos).

Lo mejor que tengo. Espero eso ayude.

Tenía ganas de renunciar a muchas veces en el primer mes. (Intente aprender Java como su primer lenguaje de programación, sin conexión a Internet, usando libros que supongan que usted es un gran programador de C / C ++ que quiere probar Java en su lugar y me dice que no tiene ganas de rendirse).

Pero mi orgullo me detuvo. Había ido en contra de los deseos expresos de mis padres y algunos consejos de los profesores y elegí “Aplicaciones de computadora” (que era esencialmente la programación de Java) como electiva. En la India, ir en contra de cualquier persona mayor que tú es un gran negocio. ¿Va contra todos ? ¡Guauu! Afortunadamente, mis padres no hicieron mucho alboroto (solo estaban realmente preocupados de que no pudiera manejar la carga. Su objeción no tenía nada que ver con ” debes escucharnos”) y mi padre salió y compró El primer libro de Java que alguien le vendió. Y así tuve que aprender Java. Por mi cuenta, porque mi escuela no encontró un profesor para enseñar la materia durante unos meses.

Sí, mi arrogancia me ayuda a veces. (Además, después de la frustración inicial, me enamoré de la programación).

Si te metes en una rutina con un gran proyecto o una gran lección, da un paso atrás y obtén una “victoria fácil”. Codifique algo simple que se vea bien, sea divertido y ponga una sonrisa en su cara. Esto debería ser algo pequeño pero útil y “realmente limpio”.
Una vez que haya disfrutado de la gloria de su victoria, tómese un minuto para celebrar y luego abordar el problema con el que está teniendo problemas. Lo abordará con un nivel totalmente nuevo de confianza en sí mismo y una actitud positiva. La mayoría de las veces solo caerá en el camino 🙂

Siento que el hombre de todos los días nunca se rinde, es difícil, pero vale la pena cuando reúnes tu primera pieza de software funcional. También recomiendo unirse a fb groups, dreamincode comunicarse con otros para obtener un mentor. Si está aprendiendo Java o SQL, no dude en ponerse en contacto conmigo para obtener ayuda, si es que lo necesita. Tenga en cuenta que todos los programadores siguen aprendiendo todos los días. Nunca hay un fin para aprender, especialmente si desea aprender a codificar. Hay tantas técnicas diferentes que soy una persona que es mejor planificando que escribiendo el código real. A veces tengo que sentarme y escribir el plan completo de cómo abordaré el problema. Hay muchas maneras de no rendirse “Tienes que estar listo para sacrificar quién eras por lo que estás a punto de convertirte”.

Me he sentido así tantas veces como todavía me siento así a menudo. Estoy en el nivel de principiante-intermedio de codificación en ese momento. Cada vez que enfrentaba algo complejo y me encontraba incapaz de superarlo, me desanimaba y renunciaba, pero conseguía superarlo preguntándome constantemente por qué. Esto me llevó a tener una comprensión mucho mayor de lo que está haciendo el código y cómo lo hace.
Comprender la lógica detrás del código hace que la codificación sea mucho más fácil.