Per i linguaggi, in ordine inverso di complessita':
1) Python
2) Java oppure C# (stesso livello di complessita'. Framework molto ricchi di funzionalita', ma linguaggi per fare programmazione ad oggetti. Non proprio per neofiti)
3) C++ (mooolto complesso, al momento sconsigliabile)
4) In alternativa ci sarebbe Javascript (allo stesso livello di Python), usato in ambito Web lato client (quello che gira sul Browser) ma che puo' essere utilizzato anche per fare applicazioni stand-alone
Questi sono i linguaggi per cui trovi documentazione, libri, forum, librerie, ecc...
Ci sono altri N-mila linguaggi di programmazione (Scala, PHP, Swift, Objective C, Ruby, Go, VB, ...) che un buon programmatore conosce, ma sono molto piu' specialistici.
Comunque il linguaggio di programmazione E' SOLO UNA DELLE COSE DA SAPERE.
La PRIMA COSA da studiare sono: algoritmi e strutture dati.
http://www.tiobe.com/tiobe-index