La Catedral y el Bazar

Para las personas que conocen esta lectura, que esperan para volverla a leer, y para las que no la conocen, imprescindible.
Este texto escrito por Raymond, Eric S. se puede conseguir desde http://sindominio.net/biblioweb, trata sobre ideas de ingeniería de software vistas desde el punto de vista de un programador ( Raymond, Eric S. rediseño Popclient hasta convertirlo en Fetchmail), tomando ideas del "todopoderoso" Linus Tolvard, si estas comenzando una aplicación gratuita, esta lectura le dará sabios consejos para que su aplicación sea enfocada de la mejor manera posible y podrá comprender como el software libre cada vez esta tomando mayor fuerza en el mundo informático, listo sus principales lecciones a continuación:

1. Todo buen trabajo de software comienza a partir de las necesidades personales del programador. (Todo buen trabajo empieza cuando uno tiene que rascarse su propia comezón)

2. Los buenos programadores saben qué escribir. Los mejores, que reescribir (y reutilizar).

3. "Contemple desecharlo; de todos modos tendrá que hacerlo." (Fred Brooks, The Mythical Man-Month, Capítulo 11)

4. Si tienes la actitud adecuada, encontrarás problemas interesantes.

5. Cuando se pierde el interés en un programa, el último deber es heredarlo a un sucesor competente.

6. Tratar a los usuarios como colaboradores es la forma más apropiada de mejorar el código, y la más efectiva de depurarlo.

7. Libere rápido y a menudo, y escuche a sus clientes.

8. Dada una base suficiente de desarrolladores asistentes y beta-testers, casi cualquier problema puede ser caracterizado rápidamente, y su solución ser obvia al menos para alguien.

9. Las estructuras de datos inteligentes y el código burdo funcionan mucho mejor que en el caso inverso.

10. Si usted trata a sus analistas (beta-testers) como si fueran su recurso más valioso, ellos le responderán convirtiéndose en su recurso más valioso.

11. Lo más grande, después de tener buenas ideas, es reconocer las buenas ideas de sus usuarios. Esto último es a veces lo mejor.

12. Frecuentemente, las soluciones más innovadoras y espectaculares provienen de comprender que la concepción del problema era errónea.

13. "La perfección (en diseño) se alcanza no cuando ya no hay nada que agregar, sino cuando ya no hay algo que quitar."

14 Toda herramienta es útil empleándose de la forma prevista, pero una *gran* herramienta es la que se presta a ser utilizada de la manera menos esperada.

15. Cuándo se escribe software para una puerta de enlace de cualquier tipo, hay que tomar la precaución de alterar el flujo de datos lo menos posible, y ¡*nunca* eliminar información a menos que los receptores obliguen a hacerlo!

16. Cuando su lenguaje está lejos de un Turing completo, entonces el azúcar sintáctico puede ser su amigo.

17. Un sistema de seguridad es tan seguro como secreto. Cuídese de los secretos a medias.

18. Para resolver un problema interesante, comience por encontrar un problema que le resulte interesante.

19. Si el coordinador de desarrollo tiene un medio al menos tan bueno como lo es Internet, y sabe dirigir sin coerción, muchas cabezas serán, inevitablemente, mejor que una.

En definitiva una recomendable lectura.

0 comentarios: