Il settore IT cambia in modo incredibilmente veloce. Tecnologie e linguaggi di programmazione che vanno di moda oggi diventeranno obsoleti domani. Le tendenze vanno e vengono e anche il mercato del lavoro è in continua evoluzione. Quindi, come scegliere quale linguaggio di programmazione imparare dopo? Per trovare la risposta giusta, devi prendere in considerazione molte cose, come ad esempio:
- tendenze del settore,
- il mercato del lavoro,
- il tuo attuale set di abilità,
- i requisiti del tuo progetto,
- la disponibilità di risorse per l’apprendimento,
- e molti altri.
In questo articolo, vedremo un paio di suggerimenti su come scegliere il prossimo linguaggio di programmazione imparare. Non si tratta di regole rigide, ma di linee guida flessibili che puoi applicare in base alle tue esigenze.
DETERMINA I TUOI OBIETTIVI
Prima di fare qualsiasi altra cosa, la cosa più importante che devi fare è determinare i tuoi obiettivi. Pensa al motivo per cui vuoi imparare un nuovo linguaggio di programmazione e quale risultato finale vuoi ottenere. La domanda numero uno che devi porre a te stesso è se vuoi espandere le tue abilità verticalmente o orizzontalmente.
Se vuoi mettere il piede in una nuova area, devi espandere le tue conoscenze orizzontalmente . Un tipico esempio è quando sei uno sviluppatore front-end e vuoi diventare uno sviluppatore full-stack. Oppure, quando hai familiarità con un linguaggio back-end come Java e vuoi impararne un altro come Python. In questo caso, dovrai impostare un percorso di apprendimento che inizia a livello principiante.
Tuttavia, se vuoi acquisire conoscenze specifiche in un’area che già conosci, devi pensare in verticale . Questo accade, ad esempio, quando sei uno sviluppatore Python e vuoi imparare, ad esempio, il machine learning. In questo caso, non è necessario iniziare da un livello principiante. Molte volte, non hai nemmeno bisogno di imparare un nuovo linguaggio di programmazione, ma solo nuove metodologie, framework, librerie o altri strumenti basati sulle conoscenze che già possiedi.
VALUTA IL TUO ATTUALE SET DI ABILITÀ
Quando hai fissato i tuoi obiettivi, il passo successivo è decidere come raggiungerli al meglio. Poiché esistono molti linguaggi e tecnologie di programmazione, capita spesso di poter raggiungere lo stesso obiettivo di apprendimento attraverso percorsi diversi.
Ad esempio, se vuoi diventare uno sviluppatore full-stack puoi scegliere tra diversi linguaggi di back-end come PHP, Java, Python o NodeJS. Tuttavia, se conosci già un linguaggio basata su C è più facile impararne un altro. Oppure, se sei un esperto di JavaScript front-end, puoi imparare NodeJS molto più velocemente di un linguaggio completamente nuovo come Python o Java.
Il modo migliore per ottenere un quadro realistico delle tue attuali conoscenze è fare un elenco di tutti i linguaggi, i framework, gli strumenti e le tecnologie che conosci. Se vuoi imparare un nuovo linguaggio di programmazione per trovare un lavoro, la tua lista delle competenze può anche servire come base per il tuo curriculum.
Se sai quali sono i tuoi obiettivi e quali conoscenze hai già, puoi passare al passaggio successivo: condurre un’approfondita ricerca di mercato.
RICERCA IL MERCATO
Conoscere i propri obiettivi ed essere consapevoli delle proprie capacità attuali è una cosa, ma per quanto riguarda il mercato? Può facilmente succedere che tu abbia impostato gli obiettivi giusti e scelto un linguaggio che sia in linea con le tue abilità, ma magari non c’è una reale richiesta per questo…
Per evitare di sprecare il tuo tempo prezioso nell’apprendimento di un nuovo linguaggio di programmazione che non interessa a nessuno, devi condurre ricerche di mercato. Ecco le risorse più importanti che vale la pena dare un’occhiata.
1. INDICE TIOBE
Il TIOBE Programming Community Index è spesso utilizzato come standard del settore per determinare la popolarità dei linguaggi di programmazione. Viene pubblicato ogni mese e mostra come diversi linguaggi di programmazione hanno guadagnato o perso trazione rispetto al mese precedente. Pubblicano anche una breve analisi del settore ogni mese che riassume i cambiamenti più importanti che devi conoscere.
2. GITHUB OCTOVERSE
GitHub Octoverse è un report annuale che riassume le tendenze più importanti su GitHub. Ti fornisce una miriade di informazioni come:
- la popolarità dei linguaggi di programmazione,
- i linguaggi in rapida crescita,
- i migliori progetti open source,
- le organizzazioni più attive,
- i tag più popolari,
- gli argomenti in rapida crescita,
- e molti altri…
È una risorsa eccellente e vale sicuramente la pena dare un’occhiata prima di decidere come andare avanti con l’apprendimento. Oltre al rapporto Octoverse pubblicato annualmente, GitHub ha anche una pagina Explore . Qui, GitHub pubblica quotidianamente i repository, gli argomenti, le app e i framework più di tendenza.
3. STACK OVERFLOW INSIGHTS
Puoi trovare molte informazioni utili su quale linguaggio di programmazione scegliere anche nel sottodominio Insights di Stack Overflow . Senza dubbio, il materiale più importante qui è il sondaggio annuale per gli sviluppatori di Stack Overflow che contiene tutto ciò che potresti voler sapere sul settore.
Ad esempio, nel 2019, quasi 90.000 sviluppatori hanno partecipato al sondaggio di 20 minuti che copre diversi argomenti, dalle loro tecnologie preferite alle preferenze lavorative. Oltre al sondaggio annuale, puoi trovare analisi approfondite, report in primo piano e set di dati archiviati anche su Stack Overflow Insights.
4. GOOGLE TREND
Google Trends può aiutarti a scegliere quale linguaggio di programmazione imparare in tre modi diversi:
- Puoi controllare i dati storici fino al 2004, specificati dalla posizione.
- Puoi confrontare la popolarità di due o più linguaggi di programmazione. Ad esempio, puoi eseguire una query C# vs. Java .
- Oltre ai linguaggi di programmazione, puoi anche cercare la popolarità di tecnologie correlate come librerie JavaScript, framework o temi WordPress .
In effetti, Google Trends è un potente strumento di ricerca che ti consente di eseguire query e confronti completamente unici, quanti ne desideri, e tutto gratuitamente.
5. PIATTAFORME DI RICERCA LAVORO
Le piattaforme di lavoro non sono utili solo se stai cercando direttamente un lavoro, ma puoi anche utilizzarli per ricercare le tendenze del settore specifiche per il campo a cui ti rivolgi. Ad esempio, se vuoi imparare lo sviluppo di app cloud, puoi dare un’occhiata ai lavori correlati per vedere quali linguaggi di programmazione, competenze e strumenti stanno cercando i datori di lavoro.
Oltre a siti di lavoro tradizionali come Subito o Indeed, puoi anche cercare lavori per programmatori nei seguenti luoghi:
- siti di lavoro remoti come We Work Remotely ,
- reti professionali come LinkedIn ,
- sezioni di lavoro in riviste online per sviluppatori come Smashing Jobs ,
- newsletter professionali con una sezione di lavoro come JavaScript Weekly .
Dopo aver ricercato un paio di lavori relativi al campo che vuoi esplorare, avrai una conoscenza aggiornata su ciò che le aziende stanno cercando.
CERCA MATERIALI DIDATTICI
Ora che conosci i tuoi obiettivi, le tue capacità e hai anche studiato il mercato, c’è solo una cosa da fare. Devi verificare la disponibilità e la qualità dei materiali didattici relativi ai linguaggi di programmazione o alle tecnologie che ti interessano. I linguaggi popolari come Java o JavaScript hanno ampie risorse di apprendimento online, mentre le tecnologie o i framework più recenti non sono sempre ben coperti.
QUINDI, QUALE LINGUAGGIO DI PROGRAMMAZIONE IMPARARE?
Quale linguaggio di programmazione imparare, prima di tutto, dipende dai tuoi obiettivi professionali e dalle attuali competenze. Inoltre, devi anche tenere in considerazione le tendenze del mercato e la disponibilità di risorse di apprendimento.
Tuttavia, se dopo un po’ si scopre che un certo linguaggio di programmazione non ti piace, è una buona idea considerare di passare a uno diverso. Ciò che funziona per una persona potrebbe essere un incubo per un’altra e viceversa, tutto dipende dalle tue esigenze.
Se vuoi dare un’occhiata ad altre risorse di apprendimento per sviluppatori, puoi dare un’occhiata anche alla sezione Guide del blog.
Buon codice!