Una pregunta, ya has programado en algún lenguaje o por lo menos tienes algún concepto de sintaxis o de como se codea? Si no, puedes empezar con karel, un entrono para aprender a programar en el cual el chiste es mover una flechita y resolver ciertos programas:
http://es.wikipedia.org/wiki/Karel_el_Robot (
Descarga) No podrás hacer aplicaciones ni porgramas que corran fuera de Karel, pero sirve como introductorio.
También hay que ir como dicen los compañeros viendo sobre algoritmos, programación estructural, etc, etc.
Y si quieres empezar con un lenguaje te recomiendo Java, al ser un lenguaje de alto nivel es más fácil de aprender y es libre, además de que hay mucha documentación por la red.
Saludos