ID.nl logo
Programmeertaal leren: Deze talen zijn nu het populairst
© Reshift Digital
Huis

Programmeertaal leren: Deze talen zijn nu het populairst

De drempel voor programmeren ligt lager dan ooit. Niet alleen bestaan er allerlei no-codeplatformen, maar ook de code-editors en ontwikkelomgevingen worden steeds krachtiger. Alleen het kiezen wordt moeilijker. Er bestaat een breed gamma aan talen en frameworks. Wil je een programmeertaal leren, overweeg dan de volgende opties.

Python: (bijna) universele programmeertaal

Python blijft een heel populaire programmeertaal. Hij is eenvoudig om te leren, waardoor je snel resultaat bereikt. Bovendien bestaat er een groot aantal Python-bibliotheken in talloze domeinen. Vele daarvan installeer je eenvoudig via de pakketbeheerder PIP uit de Python Package Index, die meer dan 300.000 pakketten bevat. 

Zelfs in gespecialiseerde domeinen, zoals data-analyse en machine learning, vind je talloze krachtige Python-frameworks, zoals Pandas, NumPy, Scikit-Learn, Keras en TensorFlow. Met MicroPython, een uitgeklede versie van de programmeertaal, kun je zelfs microcontrollers programmeren, zoals de BBC micro:bit of de Raspberry Pi Pico.

Een nadeel is dat Python-code niet zo snel is als bijvoorbeeld C- of Rust-programma’s. Python-code wordt immers niet gecompileerd, maar regel voor regel vertaald naar machinecode en uitgevoerd. Voor het ontwikkelen van mobiele apps en websites is Python ook niet zo populair.

Wil je zelf met Python aan de slag, dan raden we je deze Python-introductiecursus aan.

Arduino voor elektronica

Voor hobbyisten die elektronica willen programmeren, blijft het Arduino-platform dé oplossing. Terwijl Arduino zich in het begin beperkte tot kleine bordjes met Atmel-microcontroller zonder netwerkconnectiviteit, heeft het ecosysteem zich door de jaren heen enorm uitgebreid. 

Arduino zelf heeft heel wat krachtiger bordjes uitgebracht, maar ook de populaire ESP8266, ESP32 en sinds kort de RP2040 van de Raspberry Pi Pico zijn via Arduino-cores ondersteund. Dat betekent dat je voor al deze bordjes kunt programmeren in dezelfde ontwikkelomgeving (de Arduino IDE) en met gebruik van dezelfde API’s (application programming interfaces). 

De IDE ondersteunt ondertussen meer dan duizend microcontrollerbordjes. Er is ook een heel ecosysteem ontstaan van Arduino-bibliotheken die je eenvoudig in je programma’s kunt gebruiken. En versie 2.0 van de Arduino IDE, waarvan op moment van schrijven een bètaversie uit was, heeft heel wat krachtiger mogelijkheden toegevoegd, zoals automatisch aanvullen van variabelen en functies en een live debugger waardoor je geen Serial.println meer aan je code hoeft toe te voegen.

©PXimport

Mobiele apps ontwikkelen

De ontwikkeling van mobiele apps is de laatste jaren heel wat veranderd. Google raadt voor de ontwikkeling van Android-apps sinds twee jaar niet langer Java, maar Kotlin aan, een taal die minder code nodig heeft dan Java. Apple pusht zijn eigen programmeertaal Swift voor iOS-apps. 

Tegelijk maken ook platformonafhankelijke frameworks hun opgang. Zo kun je met React Native (www.reactnative.dev) in JavaScript apps maken die zowel op Android als iOS draaien met gebruik van de native widgets. Ook Flutter, ontwikkeld door Google, realiseert hetzelfde, maar dan voor de programmeertaal Dart.

Webontwikkeling

Html, css en JavaScript vormen nog altijd de basis van webontwikkeling, maar je zult steeds vaker van frameworks gebruikmaken die je allerlei werk uit handen nemen. Met een framework zoals Bootstrap bouw je snel een responsieve website met uniforme lay-out. Voor taken zoals validatie van formulieren en gebruikersinteractie zijn Angular, React en Vue.js populair. 

Op mobiele platformen vervaagt de grens tussen native apps en webapps ook meer en meer, dankzij progressive web apps (PWA’s). Die laden snel en werken ook offline. Daardoor hoef je geen native apps voor mobiele apparaten te ontwikkelen om bijna dezelfde gebruikerservaring te hebben.

Rust: veilig programmeren

Heel wat software wordt in programmeertalen ontwikkeld die de programmeur niet veel in de weg leggen en dus de mogelijkheid kennen om fundamentele fouten te maken die uit te buiten zijn. De programmeertaal Rust, oorspronkelijk ontwikkeld door Mozilla, wil dat verhelpen. 

Rust ziet strikt toe op de toekenning van geheugen, waardoor er geen stack overflows, buffer overflows en niet-geïnitialiseerde geheugenblokken meer kunnen voorkomen. Daardoor moet de ontwikkelaar meer moeite doen om zijn code op een veilige manier te schrijven, maar zodra de Rust-compiler de code heeft gecompileerd, ben je er zeker van dat je programma een hele klasse van fouten niet bevat.

Google gebruikt voor nieuwe low-level code in Android waar nodig Rust in plaats van C en C++ en ook Microsoft is al delen van Windows in Rust aan het herschrijven.

©PXimport

Programmeren zonder code

Om software te ontwikkelen hoef je echter niet altijd te programmeren. Er bestaan talloze zogenoemde no-codeplatformen, die beloven om softwareontwikkeling even eenvoudig te maken als het gebruik van Word of PowerPoint. Vaak gaat het om visuele platformen, waarin je allerlei blokjes aan elkaar koppelt om je code te beschrijven. Diensten zoals IFTTT en Zapier zijn goede voorbeelden hiervan, evenals de automatisaties in het domoticaplatform Home Assistant

Met Glide maak je mobiele apps op basis van spreadsheets. Een ander krachtig no-codeplatform is Node-RED. Daarmee start je op een Raspberry Pi of op je pc een server, waarna je in een gebruiksvriendelijke webinterface blokjes aan elkaar koppelt in een flow. Met die blokjes haal je informatie uit een webpagina, MQTT-boodschappen of een op je Raspberry Pi aangesloten knopje, en stuur je die informatie door naar bijvoorbeeld een dashboard.

Dit en nog veel meer komt ook aan bod in de basiscursus programmeren. Keuze genoeg, in elk geval!

▼ Volgende artikel
Ontslagronde bij studio achter pas uitgekomen Highguard
© Wildlight Entertainment
Huis

Ontslagronde bij studio achter pas uitgekomen Highguard

Er vallen ontslagen bij Wildlight Entertainment, dat eind januari nog hun multiplayergame Highguard uitbracht.

Wildlight bevestigde eerdere geruchten over een ontslagronde op social media. "Vandaag hebben we de moeilijke beslissing gemaakt om afscheid te nemen van een aantal teamleden, terwijl we een kerngroep van ontwikkelaars aanhouden om de game te blijven ondersteunen en innoveren."

Het bericht vervolgt: "We zijn trots op het team, talent en het product dat we samen hebben gecreëerd. We zijn ook enorm dankbaar voor de spelers die een poging waagden om de game te spelen, en allen die onderdeel van onze gemeenschap blijven."

View post on X

Grootschalige ontslagronde

Hoewel Wildlight niet praat over de precieze hoeveelheid ontslagen, lijkt de vermelding van een "kernteam" dat overblijft te suggereren dat het om een aanzienlijke hoeveelheid mensen gaat.

Dat komt overeen met een LinkedIn-bericht van Alex Graner, een ontwikkelaar van die game die eerder ook aan Battlefield 6 werkte. Hij laat weten dat "het grootste gedeelte van het team" ontslagen is, waaronder hij zelf.

Over Highguard

Highguard is de debuutgame van Wildlight Entertainment. De game viel op voorhand vooral op omdat er een trailer van werd getoond aan het einde van The Game Awards eind vorig jaar. Die positie is meestal gereserveerd voor grote aankondigingen en aankomende games, en sommige kijkers vonden Highguard daar niet onder behoren.

Sinds eind vorige maand is Highguard speelbaar via Steam. De game ontving veel negatieve gebruikersrecensies, al heeft dat Wildlight niet tegengehouden om updates uit te blijven brengen. Rond release bereikte het spel een indrukwekkende gelijktijdige spelerspiek van bijna 100.000 mensen op Steam, maar inmiddels hangen de gelijktijdige spelersaantallen onder de 10.000. Het is dan ook aannemelijk dat dit deels de keuze om een grootschalige ontslagronde door te voeren heeft beïnvloed.

Lees hier meer informatie over Highguard.

▼ Volgende artikel
Column: Overwatch 2 heeft juist nu een PvE-modus nodig
© Blizzard
Huis

Column: Overwatch 2 heeft juist nu een PvE-modus nodig

Liveservicegames en hero shooters waren in 2016 niet per se nieuw. Destiny ging al twee jaar hard, en hoewel nieuwkomer Overwatch erg goed ontvangen werd, trokken sommigen al snel vergelijkingen met Valve’s inmiddels oude Team Fortress 2. Toch wist de hero shooter van Blizzard een Game of the Year Award voor de neus van onder andere Uncharted 4: A Thief’s End weg te grissen. Het was een glorieus begin van een moeizaam traject.

In de afgelopen tien jaar onderging Overwatch grote veranderingen. Na een groot succes met ruim 50 miljoen totale spelers in de eerste drie jaar kondigde Blizzard in 2019 aan dat er een vervolg zou komen, dat ‘naast het originele Overwatch’ moest bestaan en uitgebreid werd met Player-versus-Environment-content. De 6-tegen-6 Player-versus-Player-gameplay waar Overwatch om bekendstaat, zou blijven bestaan en voorzien worden van dezelfde content in de twee games. Ook zou Overwatch 2 een exclusieve PvE-modus met een verhaallijn en skill-trees krijgen, waarmee ieder personage op zowel grote als subtiele wijze aangepast kon worden.

©Blizzard

Nee, toch niet

Wie Overwatch 2 sinds de early access-verschijning eind 2022 heeft gespeeld, weet dat daar maar bar weinig van is waargemaakt. Overwatch en Overwatch 2 werden ten eerste geen aparte titels: laatstgenoemde heeft de plaats van het origineel simpelweg ingenomen. Die verhaalmodus? Voor 15 euro kreeg je met de 1.0-release van Overwatch 2 in augustus 2023 toegang tot drie missies. Die verkochten niet goed genoeg voor Blizzard – volgens bronnen Bloomberg - waarmee de mogelijkheid van meer PvE-content direct werd begraven.

Het was toen zelfs al bekend dat de PvE-modus grotendeels geschrapt was, gezien de modus volgens regisseur Aaron Keller ‘de focus tijdens het ontwikkelproces van de game belemmerde’. Dat is geen vreemde redenering, maar PvE was wel juist datgene dat Overwatch 2… nou ja, Overwatch 2 maakte. Uiteindelijk was de lancering van de ‘nieuwe’ game vooral een grote update, met drie nieuwe personages, wat extra arena’s en een nieuwe 5v5-opzet in plaats van 6v6. Er stond nu slechts een ‘2’ achter.

©Blizzard

Een alternatieve toekomst

Recent werd aangekondigd dat Overwatch 2 het cijfer van de naam afknipt met het twintigste seizoen en dus weer gewoon Overwatch heet – we zijn dus weer terug bij af. Ik stapte zelf destijds op de Overwatch-trein door juist de belofte van PvE in het vervolg, en heb uiteindelijk pakweg 300 uren tussen beide games verdeeld. Hoewel ik naarmate de tijd vorderde wat uren in de competitieve modus stak, maakte het spelen met vrienden de ervaring écht vermakelijk.

Gezellig kletsen, schreeuwen tegen willekeurige teamgenoten en de mix van tactiek en variatie die de vele personages in Overwatch bieden: dat staat mij bij. Een PvE-modus waarin juist dat samenspel en de speelwijze van de verschillende heroes aan te passen zijn naar jouw speelstijl was een soort heilige graal, die uiteindelijk dus nooit verscheen. Dat is eeuwig zonde. De competitieve e-sportscene van Overwatch is al sinds het begin een belangrijk aspect van de game, dus ergens is het begrijpelijk dat het team dit niet uit het oog wilde verliezen.

©Blizzard

Maar juist in de laatste jaren zien we een interessante verschuiving naar PvE, of in ieder geval multiplayer-ervaringen die niet geheel om competitie draaien. Denk aan Helldivers 2 van een paar jaar terug, waarin vrienden en willekeurige spelers het opnemen tegen legioenen aan vijanden – en zelfs wereldwijd samen naar een doel werken. Of de explosie aan zogenaamde ‘friendslop’ games als Peak en Lethal Company, die geheel draaien om het samen uitvoeren van taken als een berg beklimmen of het verzamelen van schroot. Een game als Arc Raiders bevat daarbij ook PvP-elementen, maar staat ook bij omdat meerdere spelers samen kunnen komen om een gigantische robot te verslaan. Video’s waarbij spelers plots oude vrienden tegenkomen in de game tonen aan waarom PvE momenteel zó ontzettend leuk kan zijn.

De realiteit

Het is achteraf makkelijk te zeggen, maar de originele visie voor Overwatch 2 had best een prominente rol in het huidige gamelandschap kunnen bekleden. Met de aankondiging werden uitgebreide skilltrees getoond voor de verschillende personages waar Overwatch om bekendstaat.

©Blizzard

Een van Mei’s speciale vaardigheden is bijvoorbeeld het veranderen in een ijspegel, om zo health terug te verdienen en een paar seconden onverwoestbaar te zijn. Met een van de skills die getoond werd veranderde deze ijspegel in een ijsbal, waarmee ze op spectaculaire wijze door groepen vijanden kan kegelen. De PvE-modus had de potentie om een soort zandbak voor dergelijke ideeën en ingrijpende veranderingen voor het klassieke Overwatch te worden. Een speelsere mix van skills en samenwerking om juist die avonturen uit bijvoorbeeld een Helldivers 2 te nabootsen. De tactische teamgameplay had dan ook niet hoeven verdwijnen, het zou juist vet geweest zijn om met vrienden verschillende skills af te stemmen en los te laten op de robots van Null Sector.

Dat is nog zoiets: de lore en verhaallijn van Overwatch zijn ontzettend interessant, en had meer in de schijnwerpers kunnen staan met de PvE-insteek. Nog voordat ik de games überhaupt had aangeraakt, verslond ik de prachtig geanimeerde filmpjes van Blizzard en verhalen die ze voor de personages uitbrachten.

Watch on YouTube

Wat ik dan ook zie van de nieuwe update wringt met mijn gevoel. Ja, het lijkt erop dat Blizzard een inhaalslag maakt en sneller met nieuwe personages komt om de game fris te houden. Het wekt de indruk dat we weer terug zijn bij het ‘oude’ Overwatch, en dat de ontwikkelaar nog altijd een sterke hero shooter wil behouden nu concurrenten als Marvel Rivals het speelveld hebben betreden. Toch kan ik het niet laten om te fantaseren over hoe Overwatch meer had kunnen zijn dan een hero shooter.

De realiteit is dat het Overwatch-team geen goede balans wist te vinden tussen het bijhouden van de PvP- en competitieve scene van Overwatch en de ontwikkeling van de PvE. Zonde, want zeker in het huidige multiplayerklimaat, waar mensen steeds meer achterover lijken te hangen om met elkaar te spelen in plaats van tegen elkaar, had het originele Overwatch 2 perfect gepast.