Avevi scritto "lanciarmi nel mondo lavorativo" QUINDI attivita' PROFESSIONALE.
SE ti accontenti di imparare a "smanettare" ALLORA e' TUTTA UN'ALTRA STORIA.
In questo caso le regole da seguire sono:
0) SI STUDIA SUI LIBRI!!! Se pensi di imparare qualcosa a suon di Internet, parti gia' con entrambi i piedi sbagliati !!!
1) SOLO inglese, raramente trovi i testi in italiano. Comunque conviene iniziare a cercare in inglese e poi vedere se c'e' l'equivalente in Italiano. Le prime scelte di Amazon sono generalmente ottime
2) NON TI BASTA un libro, te ne serviranno diversi. Un "programmatore" ne ha letti diverse decine, un "buon" programmatore un centinaio, un "ottimo" programmatore DIVERSE centinaia, uno che sa muoversi agevolmente anche in contesti altamente specialistici puo' arrivare anche al migliaio (ma anche superarlo)
3) un buon linguaggio di programmazione PER IMPARARE, difficilmente rivendibile nel modo del lavoro se non in contesti ALTAMENTE specializzati (si, lo so, sembra strano, ma c'e' un motivo per questa strana dicotomia ), e' "Python". Lascia stare il C: SEMBRA semplice ma appena appena devi scrivere qualcosina di un po' piu' complicato, diventa un incubo. Idem per il C++ che e' un linguaggio MOLTO complesso, ostico anche per chi lo mastica da anni. Buoni candidati per il mondo del lavoro sono Java e C#, MA richiedono la conoscenza della "Programmazione ad Oggetti", che in questo momento non hai.
Come PRIMO TENTATIVO, puoi iniziare con qualcosa del tipo:
Considera che difficilmente saremmo in grado di fornire indicazioni sulla bonta' di testi "entry level"
La "stranezza" di Python e' legata al seguente fatto: di per se il linguaggio e' abbastanza "sempliciotto", se uno non vuole andare troppo nel dettaglio, ma ha una ricca libreria di algoritmi numerici che vengono usati in ambito scientifico. Per cui, pur nella sua semplicita', e' possibile utilizzarlo per applicazioni estremamente sofisticate, ma NON perche' il linguaggio e' sofisticato, ma perche' e' possibile utilizzare, in modo semplice, librerie esterne estremamente sofisticate. Ad esempio, giusto per parlare di qualcosa al limite della fantascienza, ci sono librerie per usare le "reti neurali" che permettono di programmare la rete con "letteralmente" quattro righe di codice. Ma la rete neurale e' un mostro che per poter funzionare richiede hardware da migliaia di euro. Ma lo si fa con Python .