È una domanda di non facile risposta, in quanto dipende da cosa ne vorresti fare di questo bagaglio. La prima cosa che ti posso dire e consigliare, dato che ormai sono 10 anni che sono nel settore, non è il linguaggio di programmazione a fare un programmatore ma è il contrario....
Va bene prendere un linguaggio è impararlo bene ma questo deve solo servire a dare le basi per l'acquisizione di qual si voglia paradigma di programmazione. Purtroppo c'è da dire che il mondo della programmazione è così vasto che è impossibile poter acquisire tutte le conoscenze. comunque se il tuo studio è finalizzato ad un impiego in questo mondo sicuramente ti conviene puntare sulla parte web e mobile che oggi giorno è quella che va per la migliore.
Per quanto riguarda l'assembly, vi prego smentitemi, ma penso che ormai nessuno programma più in assemembly, almeno su architettura x86, in quanto ormai i compilatori riescono a generare codice assembly ottimizzato per ottenere il massimo delle prestazioni; se ricordo bene nel Kernel di Linux nel 1999 esistevano solo una cinquantina di righe di codice assembly (scritte di pugno da Torwald) che poi sono andate a sparire nelle successive versioni.
P.S
Basi dati è sinonimo di Database

Rispondi quotando
), ma ne leggo una discreta quantità nel momento in cui devo fare performance tuning. Anche se le informazioni di debug possono aiutare a "tornare indietro" sui sorgenti, l'unico modo per andare nel dettaglio dell'output di un profiler è vedere gli hit sulle singole istruzioni assembly, ed è essenziale capire perché vanno lente. Non troppo tempo fa ho circa triplicato le prestazioni di un algoritmo riscrivendone il core in modo rimuovere la maggior parte dei branch imprevedibili (che incasinavano il branch predictor, mettendo i bastoni tra le ruote delle pipeline) e spostando l'equilibrio dati salvati/dati calcolati verso il ricalcolare un certo dato ad ogni giro, per evitare cache miss.