Siento que soy bueno escribiendo código en partes y piezas, pero mis diseños realmente apestan. La pregunta es, ¿cómo mejoro mis diseños y, a su vez, me convierto en un mejor diseñador?
Creo que las escuelas y las universidades hacen un buen trabajo al enseñar a las personas cómo ser buenos en la resolución de problemas matemáticos, pero admitamos el hecho de que la mayoría de las aplicaciones creadas en la escuela generalmente tienen alrededor de 1000 a 2000 líneas de largo, lo que significa que es principalmente un ejercicio académico que no refleja la complejidad del software del mundo real, del orden de unos cientos de miles a millones de líneas de código.
Aquí es donde creo que incluso los proyectos como topcoder / project euler tampoco serán de mucha ayuda, podrían agudizar su capacidad de resolución de problemas matemáticos, pero podría convertirse en un programador académico; alguien que está más interesado en las cosas agradables y limpias, que no está interesado en el día a día, las cosas mundanas y peludas con las que se ocupan la mayoría de los programadores de aplicaciones.
Entonces, mi pregunta es ¿cómo mejoro mis habilidades de diseño? Es decir, la capacidad de diseñar aplicaciones de pequeña / mediana escala que se incluirán en unos pocos miles de líneas de código. ¿Cómo puedo aprender habilidades de diseño que me ayuden a construir un mejor kit de editor html o algún programa de gráficos como gimp?