(quasi) vero, ma al giorno d'oggi le occasioni per usare il C o il C++ sono praticamente nulle, per un neofita.
ci sono altri linguaggi che si devono studiare, in base al settore professionale.
se vai a sviluppare motori di grafica 3d, driver per dispositivi hardware o algoritmi per high performance computing/simulazione atmosferica/astronomica/nucleare, ecc, ALLORA dovrai studiare C, C++ e Fortran a Assembler (Assembly per i 'puristi')
Ma non credo che avrai occasione di avere a che fare con tali problematiche
Hai gia' un elenco di cose da studiare, NON complicarti inutilmente la vita. Troverai gia' grandi difficolta' con gli argomenti che hai elencato
Ad esempio: che cosa e' un automa a stati finiti, un'espressione regolare, un grafo, un design pattern, il polimorfismo, la programmazione ad oggetti, la programmazione basata su prototipi, un modello relazuonale dei dati, un modello gerarchico, il modello ad oggetti di un'applicazione, ecc.