¿Puedes explicar la ética de programación de la manera más corta posible?

La programación es dos cosas en una:

  1. escriba código que resuelva el problema de la mejor manera que pueda con sus conocimientos y habilidades
  2. escriba el código que alguien que no sea usted podrá comprender, modificar y mantener.

La ética de programación es el comportamiento personal para alcanzar estos objetivos.

Tenga en cuenta que no mencioné el cumplimiento de las especificaciones, ya que las especificaciones, en todos los proyectos en los que participé, son fluidas. DEBE verificar minuciosamente las especificaciones y, si hay algo que contradiga los principios antes mencionados, debe hacer todo lo posible (ingeniería social, persuasión moral y lo que sea) para permitir que se modifiquen.

Tenga en cuenta también que el punto 2 requiere documentación: escribirlo y actualizarlo regularmente es parte de esta ética. Creo firmemente que la documentación no solo debe ser lo que incrusta en su código, que es obligatorio, sino también documentos generales sobre sus decisiones de diseño, las entidades involucradas y sus relaciones, en un lenguaje humano simple, posiblemente en inglés con la frecuencia con la que trabajará en su código no entenderá su idioma nativo.

En mi humilde opinión. Es lo mismo que “La regla de oro” pero en el contexto de la codificación.

La regla de oro es “Haz a los demás lo que tienes que te hagan a ti”

Programación ética definida: pautas de ética de programación

Para resumir, no haga daño, pruebe su código, sea responsable y confíe en su código, reconozca a otros donde ha usado su código, etc.

Sé honesto, sé verdadero y sé responsable.

Creo que el Manifiesto de la artesanía del software lo describe muy bien:

“Como aspirantes a artesanos del software, estamos elevando el listón del desarrollo profesional de software al practicarlo y ayudar a otros a aprender el oficio. A través de este trabajo hemos llegado a valorar:

No solo software de trabajo, sino también software bien diseñado
No solo responde al cambio, sino que también agrega valor de manera constante
No solo individuos e interacciones, sino también una comunidad de profesionales.
No solo colaboración con el cliente, sino también asociaciones productivas

Es decir, en la búsqueda de los elementos de la izquierda, hemos encontrado que los elementos de la derecha son indispensables “.

Los programadores a menudo trabajan con personas o para personas, no solo computadoras.

Si escribí algún código como el siguiente desarrollador que trabaja después de mí (en el mismo código) me maldice mucho, probablemente mi código no fue ético.

Si estoy escribiendo un código que facilita el daño a las personas (por ejemplo, algún código para enviar spam), probablemente mi código no sea ético.

La ética se trata de lo que hacemos cuando nadie nos mira.