He leído posts sobre los tipos de programadores que existen, que si el payaso que te hace reír, que si el superhéroe que salva todo, que el mago, el paracaidista etc. Pero cada una de ellos solo te dice la personalidad del programador. Ser programador es más que estar sentado frente a una computadora mientras más de ocho horas diarias, es pensar, es escribir, es modelar, es diseñar y diagramar, es analizar, es resolver, es buscar la mejor forma de realizar las cosas, y por supuesto, echar código y hasta enviar correos! Programar es un arte, es una obra que se está llevando a cabo y que deseas que la gente disfrute, y para que felicidad obra sea admirada requiere construirse correctamente. Aquí te dejo lo que considero que debes realizar y no debes realizar mientras tu trabajo. LO QUE SI DEBES HACER Emplea IDEs.   La mayoría  de los IDE tienen características como autocompletado, verificación de sintaxis, control de versiones formado que te facilitan la vida a la hora de programar. Emplea un manejador de versiones. Tu código siempre, siempre debe estar versionado, aunque trabajes solo, de esta forma tendrás un respaldo de tus proyectos. Además puedes revertir  cambios en el momento que lo necesites. Recomiendo que utilices GIT, ya que es distribuido y no requieres de un servidor para llevar el control de versiones. Emplea  frameworks. Sin importar el lenguaje en que trabajes, es significativo que hagas uso de un framework ya que ellos te proveen soluciones a los dificultades más comunes a la programación. ¡Pero cuidado! La mayoría de los frameworks se cimientan en convenciones las cuales debemos respetar. Antes de reinventar la rueda formando cierta función, revisemos primero la documentación a ver si ya el framework provee una solución. Relata tu código. Nuevamente, aunque trabajes solo, es significativo que comentes las cabeceras de las funciones, clases, y algoritmos complejos, ¿qué es? ¿que hace? ¿qué parámetros recibe?,  así tu código será mantenible y legible. Crea estándares. Los estándares le dan orden  a tu trabajo, haz que tus variables sean autodescriptivas, las funciones ya sean camelCase o separadas por underscore(_), pero siempre, siempre de la misma manera. Emplea POO. La programación articulada ya pasó, supéralo! Así que documéntate sobre lo que necesites saber para crear una articula correcta de clases y un mejor uso de recursos. Crea funciones. Si te hallas repitiendo el mismo código en algúnas partes, es momento de que encapsules esa lógica en una función. De esta manera no solo evitas repetir sino que a la hora de adaptar la lógica solo lo haces en un lugar. Optimiza. Si bien las cosas no salen siempre de la mejor forma la primera vez, escaso a escaso puedes ir mejorando, y con esto puedes aplicar un reescritura de código que te ayude a dar mejores tiempo de respuesta. LO QUE NO DEBES HACER Crear código espagueti.  OMG odio esto! cuando veis código en un mismo archivo que tiene una consulta de fundamento de datos, código html, código js, código css, código php o java o cualquier fundamento adicional. Separa siempre los ficheros en un patrón MVC, y evita realizar estos desastres. Ojo con lo que copias y pegas.  Si vas a copiar y pegar código, asegúrate primero de comprender qué es lo que hace ese código, ya que puedes arrastrar lógica incorrecta. Déjalo así entretanto funcione. Esto lo he escuchado mucho y son aquellos que hacen algo que aparentemente funciona, pero la realidad por dentro tiene fallas, consultas incorrectas, o detalles que en cualquier momento pueden corromper una aplicación. Un buen programador o desarrollador es aquel que busca la perfección, comparte, enseña, innova y no tiene flojera. Realiza un buen esfuerzo y eso dará mejores frutos, no seas un tipo ascensorista.