Keep it Simple
Estaba leyendo un articulillo de Coding Horror, ( no es la primera vez que aparece por aquí ) acerca de tener nuestras aplicaciones con un menú simple.
En realidad, el artículo no es tanto sobre el menú de la aplicación, sino sobre la aplicación en sí. Sobre la gran cantidad de opciones que suelen tener los programas, opciones para que el usuario configure el mismo según sus gustos.
Y no he podido evitar recordar el capítulo de Getting Real que trata sobre el tema. "Avoid Preferences".
Preferences are a way to avoid making tough decisions. Instead of using your expertise to choose the best path, you're leaving it in the hands of customers. [...]
Preferences are also evil because they create more software. More options require more code. And there's all the extra testing and designing you need to do too. You'll also wind up with preference permutations and interface screens that you never even see. That means bugs that you don't know about: broken layouts, busted tables, strange pagination issues, etc
Y si las opciones son menos, el programa es simple ( más simple ), y por tanto el código es simple.
Y se cierra el círculo. Keep it simple.
PD: Sí. Hay ocasiones, muchas ( quizás menos de las que pensemos ) en las que hay que dejar elegir al usuario. Como todo en esta vida, se trata de saber qué y cuando. Y como todo en general, es eso, lo que distingue al buen programador/diseñador del resto. ( Aplicable a casi cualquier ámbito de la vida )
PD2: Sí. Como todos por aquí ( imagino ), también me las he visto y deseado para añadir mil posibles opciones de configuración a programas. Opciones que eran "imprescindibles" y que jamás nadie usó.
PD3: Me repito si, pero la realidad es que algo simple, puede convertirse en imprescindible. Precisamente por eso, porque es simple.