Welke programmeeromgeving doet er vandaag echt toe? En welke moet je leren? Computable stelt de totale rankschikking op. Een top 20 waarbij met name de scripting-talen komen opzetten. 'Cloud, big data en mobiel zorgen voor meer front-end ontwikkelingen', klinkt het bij experts.
Computable maakt de totaalrankschikking op basis van zes vooraanstaande rankings: IEEE en de Tiobe index, algemeen beschouwd als de twee belangrijkste. Maar daar voegden we ook de stack overflow developers survey, PYPL, RedMonk Programming Language Ranking en GitHub State of the Octoverse aan toe. Samengeteld komen we met Computable.be tot deze geconsolideerde top 20.
Nr. |
Programeertaal |
Index |
1 |
Java |
113 |
2 |
Python |
108 |
3 |
Javascript |
106 |
4 |
C++ |
98 |
5 |
C# |
95 |
6 |
PHP |
93 |
7 |
C |
88 |
8 |
Swift |
55 |
9 |
Ruby |
53 |
10 |
R |
47 |
11 |
Objective-C |
42 |
12 |
GO |
35 |
13 |
Scala |
29 |
14 |
Matlab |
28 |
15 |
Assembler |
27 |
16 |
Perl |
27 |
17 |
Shell |
22 |
18 |
Typescript |
21 |
19 |
VB.Net |
21 |
20 |
Visual Basic |
15 |
Bron: IEEE, Tiobe, Stack Overflow, PYP, Redmonk, Github State, 201
Sportwagen
Elk van de zes bronlijsten heeft zijn eigen parameters, maar deze top 20 geeft een mooi overzicht over welke taal er vandaag toe doet. Al is de lijst divers, en vallen bijvoorbeeld Java, Python, R, Assembler en Visual Basic (om er een paar te noemen) maar moeilijk te vergelijken.
‘Elke taal blink vooral uit in één bepaald domein, terwijl de andere talen dan weer uitmunten op andere vlakken. Het is zoals een minibusje vergelijken met een sportauto’, stelt Els Peetermans van de it-opleiding bij hogeschool Thomas More. ‘In onze opleiding is het vooral belangrijk dat studenten met verschillende types talen in contact komen en de juiste keuze leren maken voor het type project’, merkt zij op.
Java nog bovenaan
Los hiervan vallen er duidelijk trends te onderscheiden in onze lijst. Zo staat Java nog steeds bovenaan. In twee van de zes rankings die we gebruikten om tot onze Computable Index te komen, staat Java op nummer 1. Al zit deze technologie algemeen wel in dalende lijn.
Als de trend zit doorzet, zal Pyton binnenkort Java van de troon stoten. Zowat elke it-opleiding heeft vandaag Python op het programma staan. ‘Het is iets waar wij in onze opleiding steeds meer op inzetten’, oppert Bart Vochten van de Karel De Grote Hogeschool. ‘Python is bij ons dan specifiek gericht op onze studenten systeembeheer’, voegt hij er aan toe.
Dat Python in nagenoeg alle opleidingen en rankings aan belang wint, is niet zo’n verrassing. De drempel ervoor ligt vaak lager. ‘Python is in essentie een scripting taal’, meent Peetermans. ‘Het gebruikt dynamic typing, waarbij je het type van een variabele niet hoeft te declareren, en is erg compact. Dit maakt dat je in Python veel sneller kan programmeren. Waardoor het zeer geschikt is voor kleinere programmeerprojecten.’
Python: sterk in machine lerning en data science
Het zijn echter exact diezelfde eigenschappen die van Python, volgens Peetermans, een minder geschikte taal maken voor grootschalige programmeerprojecten. ‘Voor dat soort projecten is het een goed idee om wat meer programmeeruren te investeren in het initiële codeerwerk. Dit om het aantal fouten in de snel groeiende of wijzigende code – beheerd door meerdere ontwikkelaars – te beperken’, stelt ze. ‘Als je werkt aan een project met meer dan driehonderdduizend lijnen code, wil je niet gokken welke types een bepaalde functie aanvaardt omdat de programmeur dat vergat te documenteren. Wanneer je zelf een klein projectje schrijft, is dat niet echt een probleem.’
Toch zijn er, zo benadrukt ze, recent wijzigingen gebeurd aan Python om static typing in Python robuuster te maken, waardoor het meer geschikt wordt voor grotere projecten. Ook zijn er bepaalde domeinen waar Python zeer populair is. ‘Bijvoorbeeld in het domein van machine learning en data science. Veel van deze tools zijn ontwikkeld in Python en zijn niet beschikbaar in Java.’
Cloud en IoT zetten lijnen uit
In het verlengde van de groei van Python, gaat de algemene opmars van de scripting-talen, zoals Javascript. Recente evoluties, met name nieuwe ontwikkelingen zoals cloud, big data, internet of things en de algemene verspreiding van mobiele toestellen brengen met zich mee dat meer front-end ontwikkelingen multi-platform moeten zijn. ‘Voor thin client-applicaties zijn de combinatie van html5 en javascript de de-facto standaard geworden/ , weet Peetermans.
Javascript staat op drie in het overzicht van Computable, al heeft ook deze taal net als Python zo zijn inherente beperkingen. ‘Want wanneer complexe applicaties gebouwd moeten worden met iets wat meer een scripting taal is als JavaScript, geeft dit ook hier de nodige uitdagingen. Recent zijn er daarom ook allerlei preprocessors ontwikkeld die toelaten op een meer object georiënteerde manier te programmeren. Deze code wordt dan op zijn beurt vertaald naar javascript code’, vertelt ze. Een voorbeeld van zo’n preprocessor is Typescript (op 18 in de Computable Index, nvdr) ontwikkeld door Microsoft. ‘Typescript wordt onder andere gebruikt in Angular, het javascript platform van Google’, vertelt ze.
Mean-stack
Om in te spelen op de deze trend heeft de IT Factory opleiding van Thomas More er bijvoorbeeld recent voor gekozen om een aantal javascript frameworks in de opleiding te voorzien. ‘Zo hebben we dit jaar React.js, dat onderhouden wordt door onder andere Facebook en Instagram opgenomen in ons vakkenpakket’, stelt Peetermans.
‘Daar waar javascript origineel bedoeld was voor front-end gebruik zien we meer recent ook technologieën ontstaan die javascript op server-niveau gaan gebruiken zoals NodeJs’, stelt Peetermans, en ziet oze ok de ‘mean-stack’ aan belang winnen. ‘Hier ontwikkel je met behulp van Mongodb, Expressjs, Angular en Nodejs een volledige webapplicatie.’
De opmars van React
Als we kijken naar de nieuwe ontwikkelingen, dan valt toch vooral de opmars van React (vaak dus ook omschreven als React.js) op als JavaScript framework. ‘React werd ontwikkeld door Facebook omdat de bestaande frameworks niet de gewenste functionaliteiten aanleverden. Het maakt het ontwikkelen van user Interfaces erg makkelijk, biedt een performant framework en wordt gezien als een mogelijk alternatief voor Angular van Google’, stelt Koen Vangeel van Thomas More, die als lesgever React vanaf dit jaar introduceert in het derde jaar.
React, dat is uitgebracht als open source, wordt steeds populairder en al gebruikt door bijvoorbeeld AirBnb, Netflix, BBC, Dropbox en PayPal. ‘Opvallend is dat React pas in 2015 echt aan de oppervlakte kwam’, merkt Vangeel op. Het kan snel gaan in de wereld van programmeertalen.