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
Nieuwe FromSoftware-game The Duskbloods komt echt alleen naar Switch 2
Huis

Nieuwe FromSoftware-game The Duskbloods komt echt alleen naar Switch 2

The Duskbloods, de nieuwe game van Elden Ring- en Dark Souls-ontwikkelaar FromSoftware, zal echt alleen op Nintendo Switch 2 uitkomen.

Dat heeft de ontwikkelaar benadrukt bij het bekendmaken van zijn kwartaalcijfers (via VGC). Daarbij werd ook nog eens benadrukt dat The Duskbloods nog altijd gepland staat om ergens dit jaar uit te komen, net zoals de Switch 2-versie van Elden Ring.

Over de exclusieve Switch 2-release van The Duskbloods: "Het wordt verkocht via een samenwerking met Nintendo, met verkoopverantwoordelijkheden verdeeld per regio. De game komt alleen voor Nintendo Switch 2 beschikbaar." Daarmee is dus duidelijk gemaakt dat Nintendo een nauwe samenwerking met FromSoftware is aangegaan voor de game en dat het spel niet zomaar op andere platforms uit zal komen.

Over The Duskbloods

The Duskbloods werd begin vorig jaar aangekondigd in een speciale Nintendo Direct waarin de eerste Switch 2-games werden getoond, maar sindsdien zijn er geen nieuwe beelden van het spel uitgebracht. Zoals gezegd is de game ontwikkeld door FromSoftware, het Japanse bedrijf dat naam voor zichzelf heeft gemaakt met enorm uitdagende spellen, waaronder de Dark Souls-serie en Bloodborne. Met de openwereldgame Elden Ring scoorde de ontwikkelaar enkele jaren geleden nog een megahit.

Watch on YouTube

The Duskbloods wordt een PvPvE-game, waarbij spelers het dus tegen elkaar en tegen computergestuurde vijanden opnemen. Maximaal acht spelers doen aan potjes mee. Na het kiezen van een personage in een hub-gebied wordt men naar een gebied getransporteerd waar er met andere spelers en vijanden gevochten wordt, al kan men soms ook samenwerken om vijanden te verslaan.

Spelers besturen een 'Bloodsworn', wezens die dankzij een speciaal bloed dat in hun lichaam zit meer krachten tot hun beschikking hebben dan reguliere mensen. Ondertussen is het einde van de mensheid nabij, en bestaat de wereld uit verschillende tijdperken, wat voor een mengelmoes van stijlen zorgt.

▼ Volgende artikel
Beeldverversing versus pixels: waarom soepel gamen beter is dan scherp
© Gorodenkoff Productions OU
Huis

Beeldverversing versus pixels: waarom soepel gamen beter is dan scherp

Resolutie is marketing, refreshrate is beleving. Waar 4K zorgt voor een mooi plaatje, zorgt een hoge verversing (Hz) ervoor dat je daadwerkelijk wint. Hieronder lees je waarom snelheid in feite de échte koning is in gaming.

Veel gamers staren zich blind op 4K-resolutie. Ze kopen een duur scherm, zetten de settings op Ultra en vragen zich vervolgens af waarom hun spel stroperig aanvoelt. De misvatting is dat 'mooier' gelijkstaat aan 'beter'. In werkelijkheid is de vloeibaarheid van het beeld – de refreshrate, oftewel verversingssnelheid – veel bepalender voor hoe direct en responsief een game aanvoelt. Aan het eind van dit artikel weet je precies of jij moet kiezen voor pixels of snelheid.

Hoe je ogen bedrogen worden door Hertz

Stel je voor dat je snel met je muis over je bureaublad beweegt. Op een standaard 60Hz-scherm zie je de cursor in schokjes over het beeld springen; je hersenen vullen de gaten in. Op een 144Hz- of 240Hz-gaming-monitor verdwijnen die gaten.

Het technische verschil zit hem in de verversingssnelheid: het aantal keren per seconde dat het beeld wordt vernieuwd. Bij 60 Hz krijg je elke 16,6 milliseconden een nieuw beeld. Bij 144 Hz is dat elke 6,9 milliseconden. Dat klinkt als een klein verschil, maar je voelt het direct. Het gestotter dat je onbewust gewend bent verdwijnt. Bewegingen voelen boterzacht aan, alsof de cursor (of je crosshair) aan je hand vastgeplakt zit in plaats van er achteraan zwemt. Dit effect wordt motion clarity genoemd: objecten blijven scherp, zelfs als ze snel door het beeld bewegen.

©Framestock

De winst in shooters en snelle actie

Wanneer werkt dit in je voordeel? Vooral in competitieve shooters zoals Call of Duty, Counter-Strike of Valorant. In dit soort games telt elke milliseconde. Een hogere refreshrate vermindert de input lag, oftewel de tijd tussen jouw klik en de actie op het scherm.

Stel, je draait je personage snel om. Bij een lage refreshrate wordt de vijand een fractie later getoond en zie je veel bewegingsonscherpte (motion blur). Met een hoge refreshrate zie je de vijand eerder en scherper, waardoor je sneller kunt reageren. Je hebt letterlijk actuelere informatie dan je tegenstander. Om dat te bereiken heb je wel een krachtige videokaart nodig die genoeg beelden per seconde (FPS) kan genereren om je snelle scherm bij te houden.

Wanneer resolutie het toch wint van snelheid

Is snelheid altijd heilig? Nee. Als je vooral tragere, meer verhalende games speelt (zoals Cyberpunk 2077 in de 'sightseeing' modus), Microsoft Flight Simulator of grafische RPG's, dan voegt 240 Hz weinig toe. In deze titels kijk je vaak naar stilstaande of langzaam bewegende omgevingen.

In dat geval wil je juist de texturen van de bomen, de reflecties in het water en de details in gezichten zien. Een 4K-monitor op 60 of 120 Hz is dan een logischer keuze dan een onscherp 1080p-scherm op 360 Hz. De visuele pracht weegt hier zwaarder dan de milliseconden reactietijd. Ook voor console-gamers die op de bank zitten, is een goede televisie met 4K en HDR vaak indrukwekkender dan puur de hoogste framerates.

Situaties waarin een hoge refreshrate zinloos is

Er zijn momenten dat investeren in een snel scherm weggegooid geld is. Dat gebeurt bijvoorbeeld als je hardware de snelheid niet kan leveren; als je videokaart maar 50 frames per seconde kan leveren, heeft een 144Hz-scherm geen nut omdat het scherm wacht op de computer. Daarnaast beperken oude kabels je bandbreedte, waardoor je monitor soms terugvalt naar 60 Hz zonder dat je het doorhebt. Ook op oudere consoles zoals de Nintendo Switch of de standaard PS4 heb je niets aan snelle schermen, omdat deze hardware fysiek gelimiteerd is op 60 Hz of lager.

Bepaal wat jouw setup aankan

Kijk dus kritisch naar je huidige situatie voordat je naar de winkel rent. Heb je een high-end pc die makkelijk 120+ FPS haalt in jouw favoriete games? Dan is een upgrade naar een 144- of 165Hz-monitor de grootste sprong in spelplezier die je kunt maken. Speel je op een PlayStation 5 of Xbox Series X? Zoek dan specifiek naar een scherm met HDMI 2.1-ondersteuning om 120 Hz op 4K mogelijk te maken. Zit je ver van je scherm af en speel je relaxed? Investeer dan liever in resolutie en kleurdiepte.

©Proxima Studio

Kortom: snelheid is de sleutel tot succes!

Verversingssnelheid is belangrijker dan resolutie voor iedereen die actie- of competitieve games speelt. Het zorgt voor een vloeiender beeld, minder input lag en betere motion clarity, wat je direct een voordeel geeft in het spel. Resolutie is vooral luxe voor het oog, maar refreshrate is pure prestatie voor de speler.