¿Qué hábitos te hicieron un mejor programador?

En primer lugar, no hay televisión. Nunca, de ningún tipo. Si vives solo, deshazte de él. Si no lo haces, prohíbela y trabaja en una habitación lejos de ella. Cuando necesites descansar del trabajo, no mires televisión. Juega un juego de computadora, pasea al perro, ama a tu mujer, juega con tus hijos, trabaja en un proyecto paralelo, pero nunca, nunca veas la televisión. Nadie, literalmente, nadie lo necesita. Cualquier cosa importante que puedas encontrar a través de otras fuentes. Descargue los programas en los que esté realmente interesado para más tarde, cuando pueda verlos con la otra persona.

En segundo lugar, lea mucho. Sin televisión, tendrás el tiempo. La gente subestima lo importante que es leer y cuánto se puede leer con el mínimo esfuerzo. Si hace un esfuerzo consciente por leer 30 minutos antes de acostarse todos los días (o incluso la mayoría de los días), se dará cuenta de que ha leído docenas de libros ese año.

No me refiero solo a la codificación de libros; lea cosas que le enseñen sobre el mundo, y se sorprenderá de la cantidad de conceptos de negocios, economía, ciencia ficción, ciencia o incluso biografías de personas que pueden influir en sus hábitos de trabajo. y tus formas de pensar.

No solo libros, tampoco. Consuma cualquier tipo de publicación de blog que parezca vagamente interesante, incluso publicaciones de wikipedia. Saber un dato interesante de trivia a menudo iniciará una conversación interesante que conducirá a la mejor discusión profesional que haya tenido en su vida. Recorra reddit a diario en busca de temas que puedan rascar un poco la curiosidad.

La lectura es, con mucho, la mejor manera de mantenerse al día. Haga una buena lista de recursos a seguir (un buen lector de RSS hace maravillas; uso https://www.inoreader.com) y me aseguro de que sea lo primero que abra después de despertar la computadora y lo último que cierre antes de retirarse a la cama. Te mantendrá actualizado, la gente se preguntará cómo encuentras el momento. Poco sabrán que lo estás usando de manera más inteligente.

No soy el mejor programador ni nada, pero sentí que las siguientes prácticas me hicieron mucho mejor de lo que era originalmente:

1. Revisiones de código: si estás trabajando para una empresa, obténlo de personas que estén al menos a un nivel más alto que tú. De lo contrario, obtener de algunos amigos.

2. Uso de bibliotecas: para la mayoría de los idiomas, hay cientos de bibliotecas que realizan casi todas las tareas. La guayaba es especialmente buena para Java, desde Optionals (que se incorporó a Java 8) hasta FirstNonNull y BiMaps, me hizo la vida mucho más fácil. La mayoría de las bibliotecas contienen código altamente optimizado. Por lo tanto, antes de reinventar la rueda, intente ver si hay una biblioteca que haga el trabajo. Realmente hace que su código sea mucho más legible y mantenible.

3. Aprendizaje de programación funcional: aprender Clojure fue una de las mejores cosas que he hecho. Ahora, incluso mi código de Java se ve mucho más limpio que nunca.

4. Use las adiciones más recientes al lenguaje: por ejemplo, Java 8 introdujo secuencias y opciones, y se espera que Java 9 introduzca REPL. Al tratar de incluir todas estas características, se asegura de estar aprendiendo constantemente y de estar al día con los últimos avances, y también de que su código nunca se llame “código heredado”.

Aquí hay algunas cosas que he hecho.

1. Convierto en un hábito diario visitar gitHub y contribuir allí. También es bueno porque algunos empleadores pueden encontrar su página de github cuando solicita un trabajo.

2. Siempre tengo un bloc de notas a mi lado cuando programo anotar cosas, dibujar diagramas y realmente hacer todo lo que necesito para ayudar a que todo esté en mi cabeza. Esto ayuda con el flujo de sus programas, así como a obtener la lógica correcta.

3. Comencé a planificar todos mis programas en papel antes de sumergirme.

4. He encontrado una forma de ‘Depuración de pato de goma’ que funciona para mí y realmente me ayuda.

5. Sé cuándo alejarme de mi computadora. En el pasado me he visto sentado frente a mi computadora durante horas sin hacer ningún progreso. Ahora, cuando me alejo, mis ojos y mi mente descansan para poder regresar y ser productivo.

6. He empezado a contribuir aquí. Esto no necesariamente lo ayudará cuando esté escribiendo un código, pero lo ayudará a convertirse en un mejor científico informático. Me encuentro leyendo mucho y haciendo mucha investigación antes de algunas de las respuestas que ofrezco.

7. Codifico que otras personas pueden leer y hacer cambios en. Esto incluye un buen formato, comentarios, buenos nombres de variables e incluso documentación externa.

Estas son solo algunas de las cosas que hago para ser un mejor programador.

No estoy seguro de si me hacen un mejor programador, aunque sospecho que a la larga, ayuda. Estudio los códigos de código: he estado haciendo eso desde mis días de Amiga a finales de los 80 y principios de los 90. Me ayuda a descubrir nuevas formas interesantes de resolver problemas y satisfacer mi inquietud: ¿por qué o cómo funciona esto? Recientemente, he estado documentando los resultados de mi revisión (un archivo por estudio de base de código) y cuando reviso otra versión del código base, esas notas me ayudan mucho.

Cuestionando el diseño antes y durante la escritura del código. Si está en condiciones de hacer esto, puede aprender mucho durante el proceso.