¿Por qué es tan difícil convertirse en un buen desarrollador de software?

El desarrollo de software tiene que ver con la complejidad. Y realmente, solo se trata de eso. Para todo lo que la gente habla sobre ellos, los lenguajes de programación no importan mucho. Lo cual, paradójicamente, es la razón por la cual hay tantos. No hacen tanta diferencia, por lo que uno nunca ganará contra todos los demás. La gente seguirá pensando que uno u otro es el Santo Grial y resolverá todos los problemas, pero nunca lo hacen.

Porque el problema subyacente es siempre la complejidad. Por supuesto, hay problemas que no son complejos. En ese caso, puede activar un programa rápidamente que resuelve el problema y luego olvidarlo. Pero los problemas que pasas tu vida resolviendo son los complejos. Aquí, fuera de mi cabeza, hay algunas de las razones de la complejidad:

  • Los usuarios quieren muchas cosas
  • Los usuarios quieren cosas imposibles y no aceptarán un no por respuesta
  • Los usuarios no saben lo que quieren.
  • No sabes lo que quieren los usuarios
  • El hardware se rompe de manera predecible, lo que se espera que maneje
  • El hardware se rompe de manera impredecible, que todavía se espera que falle con gracia
  • No existen estándares en el área relevante.
  • Hay demasiados estándares
  • Los estándares son ambiguos.
  • Otras personas no entienden los estándares
  • Los estándares han sido implementados de manera diferente por diferentes personas
  • Requisitos heredados
  • Las constantes no son
  • Las variables no
  • Tus colegas son estupidos
  • Eres estúpido
  • El marketing es estúpido.
  • El mercado es estúpido y el marketing tuvo razón al decírtelo
  • El mercado tiene razón, pero no puedes entender por qué
  • El número de interacciones bidireccionales aumenta a medida que el cuadrado del número de partes que interactúan
  • Las interacciones son a menudo más de dos vías, con el consiguiente aumento exponencial de la complejidad.
  • Las soluciones simples no escalan, por lo que debe usar soluciones complejas
  • Internet hace que todo sea más complicado
  • La gerencia sigue escuchando palabras de moda y quiere que las implemente de inmediato sin tomarse ningún tiempo
  • La seguridad hace que todo sea más complicado y más lento

Estoy seguro de que otras personas considerarán muchas otras razones

Es difícil ser bueno en algo a menos que practiques. Los primeros días de programación definitivamente son un poco difíciles y frustrantes. Es posible que no entiendas por qué las cosas funcionan de esa manera. Toma un tiempo antes de que te des cuenta. Nadie entendió la programación la primera vez que alguien los pensó o la primera vez que leyeron sobre ella. ¡Sigue intentándolo hasta que algo entre en tu cráneo! Hay muchos recursos gratuitos disponibles en Internet.

Porque es complicado

Realmente no hay otra respuesta que esa.

Es la misma razón por la que es difícil desmontar un motor de combustión interna y volver a armarlo.

Es complicado.

Algunas cosas son complicadas por naturaleza, simplemente lo son.

Ninguna cantidad de hacer lenguajes de programación como el inglés, o hacer herramientas de arrastrar y soltar va a cambiar eso.

Si no quieres un trabajo complicado, no seas programador.

Si no te importa que las cosas se compliquen, quítate el culo de Quora, elige un idioma y comienza a aprender a programar.

No es difícil, solo necesita mucha práctica, más de 3 años de experiencia en ingeniería de software te influyen fuertemente para avanzar en tu carrera

More Interesting

¿Cómo puede un desarrollador de software comenzar a aprender e implementar Machine Learning?

¿Dónde se almacenarían los lenguajes de programación en el cerebro de un desarrollador?

Me han ofrecido $ 23 / h como desarrollador de software para posponer mi graduación y continuar trabajando a tiempo completo. Estoy a un año de graduarme y tengo dos años de experiencia en el campo. ¿Qué tengo que hacer?

¿Cuál tiene más alcance, desarrollo aeroespacial o de software?

¿Qué debo estudiar para convertirme en desarrollador de software financiero? ¿Qué son los cursos? ¿Son las principales finanzas y programación?

¿Qué te hará salir de una entrevista de desarrollo de software?

¿Cuál es la razón para que una compañía de software de EE. UU. Externalice el desarrollo de proyectos?

Como desarrollador de software con 1.3 años de experiencia, ¿cómo puedo obtener un trabajo como analista de negocios? ¿Qué herramientas necesito para dominar? ¿Qué tipo de preguntas de entrevista puedo esperar?

¿Es Sabre una buena compañía para realizar prácticas como desarrollador de software?

¿Qué tan importante es para un probador o desarrollador comunicarse entre sí?

¿Gayle Laakman McDowell ha trabajado alguna vez como desarrollador de software práctico? Si es así, ¿cuál fue su mejor código?

¿Debería unirme a una empresa de desarrollo de software que declare contractualmente la propiedad sobre la propiedad intelectual que podría producir en mi propio tiempo?

Cómo convertirse en programador de computadoras o desarrollador de software

¿Qué habilidades como desarrollador deberías conocer para conseguir un trabajo en el mercado?

¿Por qué algunos desarrolladores dicen que no son TI?