Beste programmeertalen om te leren in 2020

Beste programmeertalen om te leren in 2020

Beste programmeertalen om te leren in 2020

Laatst bijgewerkt: 28 augustus 2020

Laten we in alle eerlijkheid beginnen, wat wordt beschouwd als de ‘beste’ programmeertaal is subjectief en relatief aan het soort werk. In dit artikel gaan we bespreken welke programmeertalen het beste bij jou passen.

Wat kun je lezen in dit artikel?

    De statistieken

    Laten we eerst kijken naar welke programmeertalen het meest populair zijn en naar hun aanwezigheid op de markt. Waarom is dit belangrijk? Omdat het je zal helpen om een goede keuze te maken.

    Als eerste bekijken we de statistieken van Microsoft Github. Dit zijn de top 10 meest gebruikte talen:

    1. Javascript
    2. Python
    3. Java
    4. Go
    5. C++
    6. TypeScript (Beetje gek dat het hier staat want Typescript is eigenlijk ook Javascript)
    7. Ruby
    8. PHP
    9. C#
    10. C

    Vervolgens kijken we naar  Stackoverflow. De meest geliefde programmeertalen zijn:

    1. Rust
    2. TypeScript
    3. Python
    4. Kotlin
    5. Go
    6. Julia
    7. Dart
    8. C#
    9. Swift
    10. Javascript

    Wat we net hebben gezien zijn wereldwijde statistieken die een beeld geven van hoe populair de talen zijn, maar laten we iets dichterbij kijken, naar ons eigen kikkerlandje Nederland! Hoe zien de statistieken er hier uit?

    Zo zien de statistieken eruit volgens één bron, een recruitment website genaamd ictergezocht. Dit is hun lijst van meest gezochte programmeertalen:

    1. Java
    2. C#
    3. PHP
    4. Python
    5. C++

    Je hebt vast gemerkt dat sommige programmeertalen meer voor komen dan andere. Moet je dan alleen op basis van deze statistieken bepalen welke programmeertalen je wel of niet zou moet kennen? Het antwoord bestaat uit een combinatie van ja en nee.

    Voordat je een taal kiest moet je jezelf twee belangrijke vragen stellen: ‘’ Wat wil ik programmeren? En ga ik het ook leuk vinden?’’ De eerste vraag is misschien makkelijker te beantwoorden dan de tweede. Je weet namelijk pas echt of je iets leuk vindt als je ermee bezig bent. Maar laten we de eerste vraag bespreken.

    Wat wil je programmeren?

    Deze vraag is heel belangrijk, want wanneer je eenmaal weet wat je wilt programmeren wordt het een stuk makkelijker om een keuze te maken. Is je het je doel om kunstmatig intelligentie (AI) te ontwikkelen? Wil je Apps ontwikkelen voor mobiel gebruik? Of wil je mooie, strakke websites ontwikkelen? Laten we per onderwerp bekijken welke programmeertalen het meest geschikt zijn.

    Kunstmatig intelligentie (AI)

    Hier heb ik het minst verstand van en daarom begin ik hiermee. De andere twee zullen wat langer zijn in formaat vergeleken met dit gedeelte. Niettemin heb ik mijn onderzoek gedaan en kunnen achterhalen welke talen er gebruikt worden voor het ontwikkelen van artificial intelligence.  

    De programmeertalen hiervoor zijn Python, Java, Julia en Haskell. Maar als we kijken naar de statistieken zien we dat Python en Java het meest worden gebruikt. Kijk! Dit is een reden om goed op de markt te letten. Wil je een baan in een bepaalde sector, dan moet je weten welke programmeertalen daar het meest worden gebruikt en daarop spitsen.

    Zou je graag artificial intelligence willen ontwikkelen en daarvoor PHP in plaats van de drie bovengenoemden gebruiken, dan zou dat niet onmogelijk zijn, maar wel een stuk moeilijker. Je zou tot je eigen teleurstelling je kansen om in deze markt een baan te krijgen ook sterk verlagen.

    Het is dus heel belangrijk om te polsen waar bedrijven naar zoeken en om bij te blijven met de trends.

    Voorbeeld van Python code
    Voorbeeld van Python code

    Apps voor Android en iOS

    Wil je apps ontwikkelen voor mobiele apparaten? Dan kun je kiezen uit twee programmeertalen,  Java en Swift. Java voor Android en Swift voor iOS. Dit kan vervelend zijn omdat je natuurlijk beide markten wilt verzadigen, maar je hiervoor dus twee compleet verschillende programmeertalen moet kennen.

    Tegenwoordig zien we trouwens Kotlin groeien in populariteit. Met deze programmeertaal ontwikkel je Android apps en schijnbaar is met deze taal veel prettiger/simpeler te  programmeren dan met Java.

    Hoe sneller je iets kan ontwikkelen met een programmeertaal, hoe populairder de taal, dat is wat we ook in het geval van Kotlin ‘vs’ Java zien. Samengevat, met Kotlin kan je meer doen met een stuk minder code dan met Java.

    Voorbeeld Kotlin code
    Voorbeeld Kotlin code

    Om te voorkomen dat je tweemaal dezelfde app moet ontwikkelen voor twee soorten apparaten/software heb je tools zoals Flutter. Hiervoor heb je één codebase en hoef je maar één keer je code te updaten. Vervolgens exporteer je de code naar Android of iOS.

    Voorbeeld Flutter code
    Voorbeeld Flutter code

    Vroeger, heel lang geleden, ik denk 220 jaar (grapje natuurlijk, het was 320 jaar), toen ik nog een jonge Flash developer was, kon je met Adobe AIR ook Android en iOS apps ontwikkelen. Ik heb dit gebruikt om een kleine hockey app te ontwikkelen voor mijn eindexamen. Die technologie is ‘doodgegaan’, samen met Flash. Maar zo zie je dat het idee om met één codebase een app ontwikkelen voor meerdere platforms, niet nieuw is.

    Websites

    Wil je websites of webapplicaties programmeren, dan moet je de ‘drie-eenheid’ van de Webstack kennen: ‘ HTML, CSS en Javascript.’ HTML voor de structuur, CSS voor de opmaak en Javascript voor de interactie. Een voorbeeld voor interactie is een button aanklikken waarop vervolgens een pop-up tevoorschijn komt.

    HTML en CSS zijn de ruggengraat van een websites.

    HTML en CSS voorbeelden
    Voorbeeld HTML en CSS code

    Zoals je wellicht is opgevallen komt Javascript vaker voor op de toplijsten, wat aantoont hoe populair die programmeertaal is. Javascript stond ook in de top 10 meest geliefde programmeertalen bij Stackoverflow. Er zijn ook bedrijven die specifiek JS developers zoeken voor het bouwen van webapplicaties.

    Voorbeeld Javascript
    Voorbeeld Javascript

    Nog een andere programmeertaal die ik persoonlijk sterk zou aanraden om bij te voegen in je Webstack is PHP. Niet alleen omdat 50% van het internet PHP gebruikt, maar ook omdat je ziet dat veel bedrijven specifiek PHP Developers zoeken. 30% van het internet maakt gebruik van WordPress, ook WordPress is ontwikkeld met PHP.

    Voorbeeld PHP-code
    Voorbeeld PHP-code:

    Er zijn ook verschillende disciplines of specialismen in webdevelopment, namelijk Front-End developer en Back-End developer.

    Een Front-End developer is gespecialiseerd in HTML, CSS en JS. Hier moet ik wel bij zeggen dat daarin ook splitsingen zijn. Natuurlijk zijn niet alle ‘Front-Enders’ even vaardig. Sommigen zijn heel goed in CSS (een opmaaktaal die trouwens zwaar wordt onderschat) en sommigen zijn ‘engineers’  wat betreft JS. Maar voor dit artikel houd ik het simpel en wellicht schrijf ik in de toekomst een nieuw artikel waarin ik daar verder op in ga.

    Een Back-End developer houdt zich meer bezig met de ‘achterkant’ van de website. Bijvoorbeeld database structuur en het beveiligen en bewerken van data. Back-Enders specialiseren zich meestal in PHP, Python of Node.js. Node.js is eigenlijk ook Javascript maar draait echter op een server.

    Welke van de twee jij kiest hangt af wat jou het leukste lijkt. Wil je vooral de voorkant/zichtbare kant van een website ontwikkelen en ervoor zorgen dat die er goed uitziet zowel op mobiel als op desktop? Dan is Front-End ontwikkeling wat voor jou. Of wil je databases beheren en vind je bijvoorbeeld PHP een leuke programmeertaal? Dan is Back-End iets meer voor jou.

    Maar je kan ook een eenhoorn zijn en besluiten om beide te doen! In dat geval ben je de befaamde Fullstack developer. Naar mijn mening, zijn er maar een paar echte Fullstack developers. Of je bent een Front-Ender die ook een beetje verstand heeft van Back-End of andersom. Het ene ligt je waarschijnlijk meer dan het andere.

    Het is niet onmogelijk om heel goed te zijn in beide. Ongetwijfeld heb je genieën die het wel kunnen. Ik doe zowel Front-End als Back-End voor mijn klanten, maar ik bezie mijzelf niet als een Fullstack developer. In de praktijk ben ik meer in de Front-End bezig dan de Back-End. Voor Back-End gebruik ik opensource software zoals WordPress waarvan een hele gemeenschap van programmeurs de helft van het werk al voor me hebben gedaan.

    Een Back-End developer zou waarschijnlijk liever met Laravel, een (PHP Framework) een eigen CMS opzetten, terwijl ikzelf simpelweg WordPress zou installeren.

    Ik kan hier nog veel meer over schrijven. Webdeveloper zijn is echt een leuke baan en de programmeertalen voor het ontwikkelen van websites kunnen ook weer nuttig zijn in andere sectoren. Je kan bijvoorbeeld met Cordova je HTML/CSS/JS omzetten naar een mobiele app. Javascript kan je niet alleen gebruiken voor het web maar ook om robots te programmeren. De Mars Rover is bijvoorbeeld geprogrammeerd met Javascript.

    Heeft het nut om minder populaire programmeertalen te leren?

    Zeker! Dit kan in je voordeel werken, omdat er juist nu een tekort is aan bijvoorbeeld Cobol programmeurs. Hiervoor kun je dus een veel hoger salaris vragen. Nogmaals moet je jezelf  dan de vraag stellen of je het leuk zou vinden. Cobol wordt het meest gebruikt door banken om hun banksystemen te ontwikkelen. Als je het dan puur voor het geld zou doen, geloof ik dat je dat echt niet lang vol zou houden. De meerderheid niet en ik ook zeker niet.

    Nu dan de tweede vraag (gesteld aan het begin van dit artikel).

    Ga ik het ook leuk vinden?

    Dit is altijd een goede vraag, maar het antwoord komt neer op een zoektocht die jezelf moet starten. Ik kan me voorstellen dat je al een idee hebt van wat je leuk zou lijken. Als het blijkt dat apps ontwikkelen niet jouw ding is, dan was het zeker geen verspilling van je tijd. De kennis die je hebt vergaard kan je altijd toepassen in andere sectoren.

    Weet je echt niet wat je wilt doen,  dan raad ik je aan om websites te ontwikkelen.

    Website ontwikkelen is het meest toegankelijk, omdat je geen supercomputer nodig hebt en je meteen ziet wat je hebt gemaakt. Je hoeft ook geen dure softwarepakketten te downloaden of te kopen. De meeste tools of softwarepakketten om website te ontwikkelen zijn grotendeels gratis.

    De stap naar andere soort softwareontwikkeling wordt ook makkelijker omdat je al een achtergrond hebt met software programmeren.

    Conclusie

    Wil je Kunstmatig intelligentie creëren?
    Mijn advies op dit moment is Python of Java.

    Wil je mobiele apps ontwikkelen?
    Persoonlijk zou ik voor Flutter gaan of Cordova, dan dek je zowel Android als iOS. Mits je echt native wilt gaan omdat je de volle capaciteit van de apparatuur wilt gebruiken. Dan Kotlin voor Android en Swift voor iOS.

    Wil je mooie websites ontwikkelen?
    Dan moet je zeker HTML, CSS, JS en PHP bestuderen. Sommigen zullen het niet met mij eens zijn omtrent PHP maar geloof me, het heeft absoluut toegevoegde waarde, al ken je alleen de basis, kan dat je helpen. Zeker als je van plan ben je eigen thema’s te ontwikkelen voor bijvoorbeeld WordPress.

    De wereld van programmeren is leuk maar soms ook overweldigend en als je niet zeker weet wat je moet doen of welke pad je moet kiezen, dan kan dat stressvol zijn. Mijn advies is nogmaals:  bedenk eerst wat je wilt programmeren en wat je in de eerste instantie ook leuk lijkt. Daarna kijk je naar de markt en volg je de trends om een gezonde beslissing te maken. Zoek meerdere bronnen op en waar bedrijven naar op zoek zijn, via bijvoorbeeld vacaturebanken. 

    Hopelijk heb ik je voldoende geïnformeerd en heb je een idee van wat je leuk lijkt. Ik wens je veel succes met  je zoektocht, in deze mooie, maar gekke wereld van programmeren!

    Dit artikel is geschreven door Youri Jourdain
    Voor mij betekent Front-end ontwikkeling het combineren van kunst met technologie. De kunst is onder andere Photoshop ontwerpen. Technologie komt in beeld wanneer de kunst klikbaar wordt en functioneel is voor de eindgebruiker.

    Website

    Advertentie