Atrás en 2002, cuando Acababa de salir de la universidad y los trabajos eran pocos y distantes entre sí después de la caída de las punto com, me uní a una empresa de servicios que solía crear software personalizado para sus clientes en Java. Tuve que sentarme en la oficina de un cliente (que era una habitación desvencijada en una subestación eléctrica equipada con una CA para mantener los servidores en funcionamiento), compartir sillas/PC con otros muchachos en el equipo. Los otros ingenieros (si puedo llamarlos ingenieros;) en el grupo solían realizar cambios ad hoc al código fuente, compilan los archivos y los ponen en producción.
- No hay forma de averiguar quién hizo qué cambio.
- No hay forma de averiguar por qué se realizó algún cambio.
- No hay forma de ir a la versión anterior del código, a menos que el ingeniero "recuerde" lo que modificó.
- Copia de seguridad: copie los archivos del servidor de producción, que fueron reemplazados por archivos nuevos.
- Ubicación de la copia de seguridad: directorio principal de la copia del ingeniero sobre los archivos al servidor de producción.
Informes de servidores de producción que van abajo debido a los intentos fallidos de copia sobre los archivos al servidor (se perdió un archivo para ser copiado, copias de seguridad con la pérdida o archivos incorrectos se copian o no todos los archivos que están siendo copiados) eran se reunió con encogimientos de hombros (oh, no, ¿está abajo? veamos qué pasó, hey quién cambió lo que recientemente ...? ummm ...).
Durante esos días, después de pasar varios días frustrantes tratando de averiguar los Quién y los porqués detrás del código, que habían ideado un sistema para comentarios en una lista en la cabecera del archivo fuente que detalló lo siguiente:
- Fecha del cambio hizo
- que hizo el cambio
- ¿Por qué se hizo el cambio
Dos meses más tarde, cuando la lista amenazó con impugnar la Tam e del código fuente en el archivo, el administrador tuvo la brillante idea de obtener un sistema de control de versiones de origen.
Nunca he necesitado poner ningún comentario en los encabezados de los archivos fuente (excepto los avisos de derechos de autor) en ninguna empresa en la que haya trabajado desde entonces. En mi compañía actual, todo lo demás es evidente por completo al mirar el código, o ir al sistema de informes de errores que está integrado con el sistema de control de versiones de origen.
Estoy de acuerdo. Si solo va a incluir una cosa, al menos sea lo suficientemente decente como para incluir la licencia. –