5 herramientas para programadores novatos

Cuando se habla de programación, siempre se termina hablando de las herramientas de desarrollo. Estas herramientas son necesarias para programar y que va depender del lenguaje en cuestión. ¿O no?