¿Los desarrolladores de software inteligente cometen errores en sus primeros días?

¡Gracias por la solicitud!

He estado restringiendo mis horas de Quora recientemente porque estoy demasiado ocupado y agotado, pero me detuve para responder esta pregunta tan pronto como vi un correo electrónico sobre la solicitud. Así de importante creo que es.

Esto es algo que las generaciones más jóvenes deben entender para prosperar en la industria tecnológica (o la mayoría de las industrias). Recientemente he descubierto, en muchas fuentes, que esto también es algo con lo que muchas mujeres tienen problemas cuando intentan ingresar a STEM, debido a cómo la sociedad tradicionalmente educa y ve a las niñas (más sobre eso aquí: Enseñe a las niñas a ser valientes). , no la perfección).

Entonces, para responder a esta pregunta: No, los desarrolladores de software inteligente no cometen errores en sus primeros días. Constantemente cometen errores durante toda su carrera, desde los primeros días hasta el final.

Esto se debe a que los desarrolladores de software, ingenieros de software y arquitectos de software inteligentes, excelentes y competentes están aprendiendo constantemente cosas nuevas o formas nuevas y más eficientes de hacer las cosas viejas. Todo ser humano comete errores al aprender algo o hacer algo nuevo. Es parte del proceso, y cuanto más innovador sea, más errores cometerá, ya que está haciendo algo que progresivamente menos personas hicieron y tiene un BoK menos consistente para aprender.

Cometer errores es natural y es la forma más rápida de aprender algo, si estás interesado en aprender y no solo en presumir. La vida es un gran laboratorio. Si tienes miedo al juicio, tengo 2 consejos:

  1. Las personas que lo juzgarán probablemente hicieron lo mismo o peor que usted, a pesar de las apariencias. Puede parecer que este no es el caso, pero así es como funciona nuestro cerebro y nuestra cultura. El grano es mucho más relevante que la habilidad (ya que la habilidad depende en gran medida de la arena);
  2. Si aprende a usar el juicio como combustible para el crecimiento, será un 300% más feliz y mejor en todo. Esto viene para alguien que fue intimidado y juzgado durante toda su corta edad (lo que puedo recordar al menos), así que sé de lo que estoy hablando;

Habiendo dicho todo eso, por supuesto, hay advertencias importantes. Obviamente, un desarrollador muy bueno y experimentado no comete los mismos errores (o el mismo número de ellos) que los principiantes. Esas son las cosas que creo que siempre debes recordar:

  1. Hacer los mismos errores (o similares), constantemente y / o sin probar nuevos enfoques es malo. Muy muy mal. Identifique esto tanto como pueda y evítelo (en comportamientos y entornos);
  2. Esto es un poco personal para mí, pero en mi experiencia creo que he visto suficientes pruebas de su importancia en la industria de la tecnología: no endulzar los problemas y errores. Tienes que aceptarlo como algo natural y aprender con él, pero nunca consideres (o digas) que es algo menos de lo que realmente es. Si descubre que es su error, asuma la responsabilidad, reflexione sobre ello, corríjalo y continúe. Y no te involucres demasiado en entornos donde la gente no hace esto, es como un veneno. Si por alguna razón no puede evitarlo, manténgase lo más claro posible y desintoxica constantemente (en entornos donde la sinceridad es la norma, probablemente lo tenga en su vida personal).

Espero que esto te ayude de alguna manera, ¡y solo deseo lo mejor para tu carrera!

Einstein era bastante inteligente, sin embargo, cometió errores tanto en los primeros días como en los no tan tempranos.

Ser inteligente y cometer (o no) errores solo está vagamente relacionado. En realidad, el proceso de aprendizaje consiste en experimentar, descubrir que parte (o la mayoría) de la solución encontrada es incorrecta y solucionarlo.

Este proceso es tan común que tiene su propio nombre: “prueba y error”.

Cometer errores, en cambio, tiene una correlación directa con el estrés.

Entonces, tómalo con calma, sonríe ante los nuevos desafíos, no te estreses hacia ellos. Estoy desarrollando cosas desde 1983, ¡he visto todo bajo el sol y todavía me encanta, mucho amor, escribir código! ¡Usted también puede!

Es normal que cualquier ser humano cometa errores 🙂

Lo que distingue a las personas que se estancan en su desarrollo y las personas que desarrollan sus habilidades / experiencia, es la forma en que manejan los errores que cometen:

  • Algunas personas se enojan mucho consigo mismas y gastan mucha energía en esa emoción, pero no hacen nada más con eso.
    Simplemente no se permiten cometer errores
  • Algunas personas son realmente buenas y creativas al culpar a otros o circunstancias de los errores que han cometido. De alguna manera tienen un sentimiento de inseguridad dentro de sí mismos que no les permite ser abiertos sobre sus errores.

Irónicamente, las personas que eligen cualquiera de los dos anteriores, siguen cometiendo los mismos errores una y otra vez.

  • Algunas personas saben / son conscientes de que cometer errores es parte de estar vivos.
    Son honestos sobre sus errores (especialmente hacia ellos mismos) y tratan de aprender de ellos.

Esas personas desarrollan su habilidad y su experiencia. No cometerán los mismos errores una y otra vez (quizás más de una vez) y cometerán otros errores en su camino de desarrollo que los desarrollarán aún más.

Si crees que el código que escribes es dorado, entonces estás delirando. Aunque me he ganado la vida como ingeniero de software desde 1986, todavía puedo ver el código que escribí hace dos o tres años y decir: “Bueno, eso no es tan bueno”.

Los mejores desarrolladores son aquellos que adquieren una mejora continua de sus técnicas.

También está olvidando el ingrediente más importante para producir una aplicación exitosa: Dominio del conocimiento. El hecho de que haya emitido recientemente (BS, MS, PhD) en Ciencias de la Computación NO significa que sepa algo sobre comercio electrónico, flujos de trabajo comerciales, informática sanitaria o cualquiera de una docena de otras disciplinas que se utilizan para hacer aplicaciones del mundo real. Eso tampoco es culpa del plan de estudios, es pura arrogancia pensar que una licenciatura en Ciencias de la Computación es algo más que un pase para llevarte al mundo real donde resolverás problemas difíciles Y aprenderás el dominio del conocimiento a medida que avanzas.

Creo que los desarrolladores de software cometen muchos errores, sin importar la experiencia. La prueba de ello es que todos tenemos áreas o departamentos de control de calidad o al menos un tipo de control de calidad.

Los errores más grandes que he visto en realidad son de desarrolladores experimentados. El mejor desarrollador que he contratado pasó una semana en un problema que debería haberle tomado 30 minutos resolver. La razón, había terminado de pensarlo. Hay un episodio de anatomía de Grey donde, como castigo, el mejor cirujano cardíaco está programado para realizar un procedimiento básico. Ni ella ni su jefe recordaban cómo hacerlo.

Muchos de los errores de los principiantes se deben a la ignorancia, por ejemplo: crear una función que ya existe. Muchos de los errores de los expertos se deben a que piensan que lo saben todo. El primer paso para evitar errores es saber que va a cometer errores … muchos de ellos y por eso necesita retransmitir a las personas de control de calidad y las pruebas de unidad (los odio).

Todos cometemos errores. Especialmente al principio de su carrera y especialmente con la programación. No es un signo de inteligencia … lo importante es que aprendas de tus errores y entiendas por qué.

A veces paso horas tratando de entender la explicación o el razonamiento detrás de algo que hice mal. Mucha gente simplemente corta y pega desde stackoverflow sin investigar por qué se vota una respuesta particular.

Odio decírtelo, pero los desarrolladores de software inteligentes nunca dejan de cometer errores. Los haces, aprendes de ellos e intentas dejar de cometer el mismo error una y otra vez. … pero de vez en cuando lo haces de todos modos.

En los primeros años, fue mucho peor. Durante los primeros tres años más o menos, miré hacia atrás a lo que sabía un año antes y me sorprendió que incluso pudiera ser empleado en mi nivel de conocimiento en ese momento.

Es bueno que estés agonizando por tus fallas. Siga haciendo eso, como un medio para encontrar formas de eliminar y compensar sus errores. Nunca los eliminarás por completo, pero mejorarás mucho.

Suponiendo que trabajas para alguien familiarizado con los desarrolladores en lugar de algún banco, saben exactamente qué esperar de los nuevos desarrolladores y saben lo que los principiantes precoces pueden y no pueden hacer. Es poco probable que los sorprenda con cualquier error que pueda cometer.

Tan a menudo como sea posible, haga que revisen su código para aprender de lo que ven, y revisen el suyo para ver de qué se preocupan y aprendan cómo se ve un buen código.

Trabajar en errores es una manera más fácil de comenzar que escribir código nuevo, porque tiene un estilo de código existente para mirar.

Espero que esto ayude,

Tim.

More Interesting

¿Cómo es trabajar para Epic Systems en Madison, WI?

¿Por qué los desarrolladores de software generalmente subestiman el trabajo de los probadores? ¿Qué se puede hacer para mejorar esta relación?

¿Cuál es la experiencia más desafiante que encontró como desarrollador de software?

Cómo obtener asignaciones de desarrollo de software o contratos de TI

¿Qué tan difícil es hacer un servidor web completo con todas las características necesarias por ti mismo?

Cómo planear ser arquitecto de software junto con mis actividades de desarrollo de software

Estoy entrevistando para un desarrollador principal / CTO para mi puesta en marcha. ¿Qué preguntas debo hacer?

Cómo convertirse en un 'freelancer ingeniero de software' o un 'freelancer desarrollador web'

Microsoft acaba de lanzar PowerApps (potencia tu negocio con aplicaciones). ¿No crees que una tecnología así es una amenaza para las empresas de TI y los desarrolladores de software?

¿Dónde está el mejor lugar para encontrar desarrolladores investigados que hagan las cosas?

¿'The Zone' es realmente malo para la productividad del equipo de desarrollo de software?

¿Qué puedo hacer para demostrarme que soy un gran desarrollador de software?

¿A qué edad un desarrollador de software no podrá obtener un aumento?

Me gustaría saber sobre trabajos de desarrollo de software en Lituania para un extranjero con una larga experiencia en C # que no habla lituano.

¿Pueden las personas perezosas convertirse en desarrolladores de software?