¿Hay algo que ganar al hacer un software intencionalmente complejo y técnico?

La seguridad laboral es probablemente la principal. Si solo tienes código, puedes entender que es más difícil despedirte

Mas serio .

A veces tiene que hacerlo por razones técnicas, de velocidad o de espacio. Escribí un motor de sprites y mosaicos en el ensamblador Z80 para una calculadora gráfica TI y es una codificación increíble; auto modificante. Sin embargo, era necesario hacerlo funcionar lo suficientemente rápido. Si lo hubiera escrito ‘bien’ hubiera funcionado, a 3 cuadros por segundo.

Recientemente escribí un gestor de arranque para una computadora sin ROM, que habría que ingresar laboriosamente. Del mismo modo, lo quiere lo más pequeño posible, lo que significa que escribe código gobbledegookish hasta cierto punto.

Sin embargo, si * necesita * hacer esto, no hay nada que detenga los comentarios pesados ​​de dicho código; De hecho, deberías.

Cualquier cosa que se pueda obtener al hacer un software intencionalmente complejo y técnico

  1. Si hay una * Revisión de código / * Recorrido de código, sus colegas lo amenazarán porque les resulta difícil entender su código
  2. Estarás cavando tu propia tumba si incluso TÚ no puedes mantener este código complejo que escribiste
  3. Los errores menores serán difíciles de depurar, incluso para ti
  4. Las personas que hacen la documentación de su código lo maldecirán
  5. Los desarrolladores antiguos y senior solo hablarán contigo: “Hijo, sabemos que eres inteligente, pero queremos a alguien que escriba código que pueda ser entendido por todos. ¡No vas a ganar puntos de brownie aquí por hacer que las cosas simples sean extremadamente complejas!
  6. Un día, su jefe puede decir: “Hoy es su último día en esta oficina. Gracias por su arduo trabajo y contribución a mi equipo ”.

PD: Hacer un código complejo generalmente lo hacen desarrolladores jóvenes e ingenuos. Es como los conductores jóvenes que conducen a una velocidad increíblemente alta en las autopistas: es una emoción que seguramente matará.

[* Revisión de código / Recorrido de código es una forma de revisión por pares del código fuente en la que otros miembros hacen preguntas y detectan errores con su código. Esto se hace para garantizar la calidad del código y hacer cumplir los estándares de desarrollo de una organización.]

More Interesting

¿Por qué las páginas web enumeran varias fuentes (Ej: font-family: 'Helvetica', 'Times', 'Times New Roman', serif;) en lugar de una sola?

¿Por qué es más divertido jugar videojuegos que programar?

¿Qué debo hacer cuando mi jefe solicita una tarea de edición de imágenes mientras estoy enfocado en una tarea de programación como desarrollador de software?

Cómo comenzar a trabajar independientemente en la programación de software mientras estoy en la universidad, para ganar mi dinero de bolsillo

Estoy haciendo todo el trabajo en mi departamento de DevOps y los ingenieros superiores no tienen idea, ¿qué puedo hacer para ascender en la escalera?

Soy un ingeniero de software que pasa a la gestión de productos en la misma empresa. ¿Cuáles son algunos de los escollos iniciales que debo buscar? ¿Cuáles son algunas cosas que puedo hacer para tener éxito a corto y largo plazo?

Consulta única con paginación

¿Cuál es un buen software para transcribir el lenguaje hablado en símbolos fonéticos?

¿Qué conjunto de habilidades debe conocer cada PMP?

¿Qué piensan los expertos en más de cinco lenguajes de programación sobre el comportamiento de tipo religioso exhibido por los programadores que cuentan con un idioma (su idioma) es mejor que otro? ¿Qué causa esto? ¿Por que sucede? ¿Es esto saludable?

¿Cuáles son algunas de las razones por las que un 'Tech Lead' evita cualquier contacto con su programador mejor capacitado?

¿Son diferentes los roles de ingeniero de software y diseñador de producto?

¿Qué factores deben tenerse en cuenta al contratar el desarrollo de software? ¿Especialmente en la India?

¿Qué es un 'grupo' de nodos en un sistema distribuido?

¿Puedo realizar prácticas en los programas Google Engineering Practicum o Facebook U si me especializo en ingeniería de software en lugar de ciencias de la computación?