La programmazione è un'insieme di attività che una persona svolge per sviluppare un software, tra cui anche fa parte la stesura di un codice sorgente scritto in un linguaggio di programmazione.
I linguaggi di programmazione devono essere visti come su vari livelli. I linguaggi di programmazione di più alto livello si avvicinano di più alla logica umana ma si distaccano dall'hardware. Ciò significa che questi linguaggi sono più facili ma non permettono molte operazioni di "basso livello".
I linguaggi di programmazione di più basso livello permettono di avere una maggiore controllo del computer ma sono più complessi. Io, personalmente, consiglio questi linguaggi. In ordine di studio:
-Visual Basic .NET o Java: Sono due tra i linguaggi di programmazione di più alto livello. Facili quindi anche per chi comincia. Per il Visual Basic .NET è ottima la guida di totem (basta cercare su Google).
-C: "Uno dei linguaggi di programmazione di più basso livello tra i linguaggi di programmazione di alto livello". è il linguaggio in cui sono scritti i sistemi operativi (Windows, Linux, ecc.). Fondamentale per tutti i programmatori.
-Assembly: Linguaggio di programmazione di bassissimo livello (il secondo...segue l'Intermediate Language che però possiede altri limiti che lo rendono poco adatto ad essere programmato). Fondamentale per tutti i programmatori. Per l'assembly sono ottimi il manuale della Ra.M. Software (anche per novizi) e i tutorial di Iczelion (è più per esperti).
Poi se uno vuole creare grandi software commerciali, è ottimo il C++.
Comunque non ti consiglio di iniziare con qualche programma ma dalle basi del linguaggio che vuoi studiare. Mai studiare un linguaggio senza seguire una guida!
P.S.: Perché hai aperto tre discussioni uguali?