Antes que nada tienes que pensar por que camino tirar, desarrollo web o escritorio, aunque la mayoría de lenguajes de escritorio son fértiles en webs.
Si vas a empezar por desarrollo web y es el primero te recomiendo:
PHPSi quieres empezar un poco por escritorio pues:
PythonSi eres principiante podrías empezar por:
PHP:
http://www.phpya.com.ar/Python:
http://pythonya.appspot.com/Aunque hay gran variedad más de páginas con tutoriales, etc... pero estas son bastante buenas para iniciarte. También dispones de vídeos en YouTube.
¿Programas útiles?
Puedes empezar desde el mismo blog de notas.
Pero puedes usar un IDE (editor de textos) como:
http://www.sublimetext.com/Ya que se puede programar en cualquier lenguaje, y mucho más recomendado para programación web.
Esta es mi opinión personalmente.
Espero que te haya ayudado ha aclararte un poco las ideas.
Saludos.