¿Soy un mal programador o todos tienen este sentimiento? [duplicar]

71

Tiendo a entender las cosas bastante rápido, pero después de 2 años de programación en Python todavía tropiezo con cosas (como Flask hoy) que me sorprenden. Miro el código, no tengo idea de lo que está pasando y luego me siento muy humilde. Me siento como un experto absoluto cada vez que esto sucede, hasta el momento en que sucede. Luego, durante aproximadamente un período de 2 semanas me siento como un principiante absoluto.

¿Ocurre esto con frecuencia o indica que tengo mucho más que aprender antes de que pueda ser considerado un "buen" programador?

    
pregunta orokusaki 19.09.2010 - 04:57

9 respuestas

62

Lo llamo el "sentimiento de primer año". Cuando parece que todos los demás lo tienen juntos, va más rápido, conoce todos los edificios en el campus, no tiene problemas, etc. En programación, estoy desorientado, incómodo, no estoy seguro de cumplir o no la fecha límite. es miedo.

El sentimiento desaparece cuando reconozco el miedo por lo que es, luego lo ignoro, me sumerjo y empiezo a aprender, luchando con cada problema uno por uno.

Lo que pasa es que ahora lo uso como indicador para saber cuándo estoy aprendiendo realmente. Si no lo siento de vez en cuando, sé que no estoy avanzando, estoy estancado.

Uno de los programadores en el trabajo tiene este lema: "La comodidad es el enemigo".

Ese sentimiento del que hablas puede ser tu mejor amigo si quieres mejorar.

    
respondido por el codeyoung 19.09.2010 - 17:50
71

Nunca, nunca, nunca, nunca, nunca en la totalidad de su carrera, estará en una posición en la que comprenda de inmediato todas las tecnologías de programación con solo mirarlas. Simplemente hay demasiado allí. Es la acumulación de investigación y conocimiento de millones de individuos durante muchas décadas. Si alguna vez piensa que está en ese punto, busque un terapeuta para hablar sobre sus delirios.

El rasgo que más necesitas es la capacidad y la voluntad de aprender. Si tienes eso, nada estará más allá de ti.

    
respondido por el GrandmasterB 19.09.2010 - 06:25
31

No, este no es el signo de un mal programador. Siempre debe estar aprendiendo, y generalmente debe asumir que hay algo más que aprender sobre un tema determinado.

El programador malo es el que cree que ya conoce la mejor manera de hacer todo y no está abierto a la posibilidad de que tenga algo que aprender.

    
respondido por el Kirk Broadhurst 19.09.2010 - 05:56
10

La única constante en mi camino como programador ha sido que siempre tengo más que aprender. Suena cliché, pero es cierto.

Eso no quiere decir que no siento en todo momento, incluso ahora, como he aprendido casi todo lo que aprenderé en mi vida. La cuestión es que, el año pasado, al recordar ese punto, claramente todavía tenía mucho que aprender. Lo mismo para el año anterior y el año anterior.

Siempre estás aprendiendo, exponerte a un código realmente bueno y los desarrolladores es una excelente manera de recordarte eso.

    
respondido por el Fishtoaster 19.09.2010 - 05:15
8

Hay un modelo de aprendizaje en el que se mueve a través de cuatro etapas:

  1. Inconscientemente incompetente: no sabes que no sabes.
  2. Conscientemente incompetente: sabes que no sabes.
  3. Conscientemente competente: sabes que sabes.
  4. Inconscientemente competente: no sabes que sabes.

Claramente, el nivel 1 es un problema, pero es donde todos comienzan, pero se mudaron rápidamente. A medida que aprende hasta llegar al punto en el que simplemente lo hace en el nivel 4. Con algo como otro módulo o biblioteca en una plataforma existente, inevitablemente retroceda a 1 o 2 (con suerte 2). Esto es normal .

(Por cierto, la etapa 4 puede ser un problema, demasiado fácil para fallar y mantenerse al día con las últimas técnicas).

    
respondido por el Richard 19.09.2010 - 11:17
7

Pasea por una biblioteca. Si no te hace sentir muy, muy pequeño, no lo estás recibiendo. Si lo quieres en lenguaje nerd, se trata del derivado, no de la cantidad real de tu conocimiento. Está bien sentirse mejor acerca de lo que estás aprendiendo que de lo que sabes, aunque tampoco debes exagerar. Después de haber aprendido algo, es un logro, es que nunca puedes considerarlo completo.

Por cierto, dos años no es mucha experiencia. Tenía más experiencia que antes de salir de la universidad (sin contar las clases), aunque tuve la suerte de tener esas oportunidades.

    
respondido por el Randall Schulz 19.09.2010 - 05:47
4

Hace más de 20 años que escribo el código de forma intermitente, ha habido ocasiones en las que me consideraba indiscutible por su habilidad y experiencia, pero descubrí que siempre hay alguien mejor. Lo que debe tener en cuenta es que hay una multitud que también es peor, mucho peor, que usted. La ingeniería de software no es un campo estático, se están desarrollando nuevos enfoques, técnicas e incluso lenguajes todo el tiempo y sería imposible mantenerse al día con todo.

Lo que normalmente me tiene sentado, mirando estupefacto a un nuevo código que acabo de abrir es el estilo de codificación. Esa es generalmente una función de cuán cómodo estaba el programador con el espacio del problema, más comodidad tiende hacia un código más abstracto en mi experiencia. Si abre un trozo de código y no le ayuda a comprenderlo, no se gane, siéntese, léalo con cuidado, haga notas (sí, en papel) y recorra el código manualmente (si tiene tiempo) . ¡La comprensión vendrá y es necesario que lo entiendas lo que te convierte en un buen programador! :)

    
respondido por el Lazarus 19.09.2010 - 10:38
1

Esto solía pasarme a mí. Entonces se detuvo. No porque dejé de progresar y no miraba el código difícil, sino porque finalmente me volví muy bueno. Esto para usar suceda en C ++ para mí. Boost (código fuente) no me asusta.

    
respondido por el user2528 19.09.2010 - 07:55
1

No sé si eres un mal programador o no, pero me considero un buen programador: D, incluso yo no lo sé todo. Para mí, la diferencia entre el programador bueno y el malo es la capacidad y la metodología para hacer el trabajo. Si tuviera un programador de BASICA, que pueda compilar la aplicación que necesito a tiempo para que funcione bien, y poder mantener su código base para realizar cambios razonables de acuerdo con la solicitud, por lo que lo considero un buen programador. Sólo sabe BASICA y nada más.

Sin embargo, sentirse humilde es también una de las cosas buenas para los programadores: la carrera que necesita un aprendizaje constante todo el tiempo.

    
respondido por el tia 19.09.2010 - 12:04

Lea otras preguntas en las etiquetas