Vilka programmeringsspråk vill utvecklare lära sig 2020?
När du lär dig ett nytt språk får du inte bara möjlighet att imponera på dina vänner och lokalbefolkningen när du är ute och reser, utan du lär dig också andra sätt att kommunicera och uttrycka dig på.
När du lär dig ett nytt språk får du inte bara möjlighet att imponera på dina vänner och lokalbefolkningen när du är ute och reser, utan du lär dig också andra sätt att kommunicera och uttrycka dig på. Börjar du dessutom umgås med människor från andra länder, läsa böcker på andra språk och se filmer från andra kulturer kan det leda till helt nya insikter och idéer.
Samma sak gäller när du lär dig ett nytt programmeringsspråk, men då kommer du istället att få en inblick i andra sätt att lösa programmeringsproblem på. Särskilt om du börjar diskutera med andra utvecklare, läsa dokumentation och titta på tutorials. När du lär dig ett nytt språk får du även en dos datorhistoria på köpet eftersom de flesta språk är färgade av de utmaningar som fanns inom utveckling av mjukvara när språket skapades.
Precis som när du lärt dig ett nytt mänskligt språk kan nya möjligheter dyka upp när du lärt dig ett nytt programmeringsspråk. Du kan till exempel söka ett jobb som kräver kunskaper i det nya språket eller få möjlighet att delta i ett nytt spännande projekt. Genom att testa olika språk ökar du också chansen att hitta ett språk som passar din personlighet och ditt sätt att tänka. Det kommer att göra dig mer produktiv och det kommer dessutom bli mycket roligare att programmera.
För att ta reda på vilka språk just ni är nyfikna på att lära er genomförde vi nyligen en undersökning och där framkom det att det finns stor nyfikenhet kring såväl riktigt nya språk som väletablerade klassiker.
Språken som ni helst vill lära er enligt vår undersökning:
- Rust (17% av rösterna)
- JavaScript (13% av rösterna)
- Python (11% av rösterna)
- Go (11% av rösterna)
- Kotlin (9% av rösterna)
- WebAssembly (6% av rösterna)
- C# (6% av rösterna)
- Dart (4% av rösterna)
- Swift (2% av rösterna)
- Ruby (2% av rösterna)
Språken som ni vill lära er baserat på vad ni jobbar med idag
- Back-end. Rust, Kotlin, Go, C#
- Full-stack. Rust, Python, Kotlin
- Front-end. Javascript. WebAssembly. Kotlin
- Appar. Swift. Rust. Kotlin. Dart
- Spel. Swift. Rust
- Devops. Go. Python
Nedan följer en kort beskrivning av de språk som fick flest röster i vår undersökning. Årtalet inom parentes efter varje språk anger när första officiella releasen gjordes. Tanken med att visa det är att ge förståelse för hur länge ett språk faktiskt kan leva och frodas men också hur lång tid det kan ta innan det blir populärt.
- Rust (2015). Om ett språk kan garantera att det är omöjligt eller väldigt svårt att skriva program som innehåller buggar kring minneshantering kommer det att få mycket uppmärksamhet. Särskilt om detta kan uppnås utan försämrad prestanda och utan att förlita sig på garbage collection. Då kan språket nämligen på allvar utmana C och C++ vars svagaste punkter är just minneshantering. Om språket dessutom gör det enkelt att skriva felfria multitrådade program blir det ett perfekt val för applikationer som kräver hög prestanda. Målet med Rust är att lösa båda dessa komplexa problem, vilket gör det lätt att förstå att många vill lära sig det. Att Rust kan kompileras till WebAssembly har gjort att det har fått ytterligare uppmärksamhet. Slutligen sponsras utvecklingen av Mozilla vilket bidrar ännu mer till språkets popularitet eftersom Mozilla har stor respekt bland utvecklare.
- JavaScript (1995). Det är inte ofta det sägs något positivt om JavaScript, men så länge det är det enda eller det dominerande språket för att köra program i en webbläsare så kommer det vara viktigt att kunna. Den enorma framgången för HTML, CSS och JavaScript har dessutom gett upphov till teknologier som Node.js, Electron och React Native. Dessa har gjort JavaScript till ett populärt språk utanför webbläsaren eftersom dom gör det möjligt att använda JavaScript för att skriva backend-kod, grafiska applikationer för Mac, Windows och Linux samt mobilappar. Det finns dessutom många utvecklingsverktyg som genererar JavaScript automatiskt och då kan det vara bra att kunna språket för att att förstå och debugga den genererade koden. Allt detta sammantaget gör JavaScript till ett otroligt användbart programmeringsspråk.
- Python (1991). Många som börjar programmera Python blir förtjusta i språket på grund av dess enkelhet och det enorma utbudet av fritt tillgänglig kod inom allt från backend-utveckling till spel och applikationer med grafiska användargränssnitt. Enkelheten och utbudet av färdig kod gör att det går snabbt och lätt att skriva både väldigt enkla och riktigt avancerade program. Detta är en ovanlig kombination för ett programmeringsspråk och har bidragit till Pythons spridning utanför den traditionella utvecklarvärlden. Det mest kända exemplet på denna spridning är nog Pythons användning inom forskningsvärlden, vilket bland annat har resulterat i en imponerande mängd Python-kod för AI och machine learning. Detta har gjort att Python idag är populärare än någonsin.
- Go (2009). Utvecklarna på Google hade börjat tröttna på hur lång tid det tog att kompilera de C++ program som Google utvecklar och det blev främsta anledningen till att Go togs fram. Men Go erbjuder mycket mer än snabba kompileringstider och är särskilt känt för att göra det lätt att bygga stora distribuerade system med hjälp av asynkrona funktionsanrop. Perfekt för applikationer som körs i “molnet” eller för prestandakrävande program som körs på multicore-datorer, vilket är precis sådant som Google jobbar med. Ett annat mål med Go var att ge känslan av att programmera i ett script-språk, vilket uppnås bland annat genom att språket har en väldigt enkel syntax.
- Kotlin (2016). Företaget JetBrains är välkända för sina utvecklingsverktyg och då främst IDE:n IntelliJ. Redan 2009 bestämde dom sig för att utveckla ett helt eget programmeringsspråk för att bli mer kända bland utvecklare. Men dom gjorde det också som ett sätt att ta till vara på allt dom hade lärt sig av att utveckla verktyg för andra språk. Målet var att ta fram ett riktigt bra språk med hög produktivitet och fantastiska verktyg. Men bra läsbarhet och att det skulle vara trevligt för programmeraren att skriva koden var också viktigt. Fast interoperabilitet med Java var viktigast av allt eftersom det skulle bidra till att göra Kotlin populärt från starten. Tillsammans med den redan höga ambitionsnivån och bristen på erfarenhet bidrog dock Java-stödet till att det dröjde ända till 2016 innan första releasen kom. Det riktiga genombrottet kom dock 2017 när Google valde att lägga till officiellt stöd för Kotlin till Android.
- WebAssembly (2017). JavaScript har länge varit enda sättet att skriva kod som skall köras i en webbläsare, men med WebAssembly finns det nu ytterligare ett språk. Precis som med alla andra former av assembler så är det få människor som kommer att skriva kod direkt i WebAssembly. Koden kommer istället att genereras automatiskt, till exempel genom kompliering av C, C++ och Rust. Tanken med WebAssembly är inte att ersätta JavaScript utan snarare att fungera som ett komplement, genom att göra det möjligt för ett program skrivet i JavaScript att anropa kod skriven i andra språk. Men det går även att hoppa över JavaScript helt och köra ett renodlat C/C++ program i webbläsaren. Det återstår fortfarande mycket jobb med WebAssembly, men med hjälp av verktyg som Emscripten går det redan idag att konvertera nästan vilket POSIX-kompatibelt C/C++ program som helst till WebAssembly och köra det i webbläsaren. Stöd för garbage collection saknas fortfarande, men ligger nog inte alltför långt bort och då kommer det att bli möjligt att kompilera program i Java och en del andra språk.