Hoe AI mijn leven als developer makkelijker maakt
3 juli 2024
Het is voor de meeste mensen al wel duidelijk dat AI de komende tijd veel gaat veranderen. Vrijwel iedereen heeft er al van gehoord. Voor mij als developer is er al veel veranderd sinds de komst van toegankelijke AI de afgelopen jaren. Het is al duidelijk geworden dat dit veel impact op en onze samenleving zal gaan hebben.
Revolutie!
Mckinsey beschrijf deze revolutie dan ook als de vierde Industriële revolutie, welke een topprioriteit zou moeten zijn voor de meeste moderne organisaties (https://www.mckinsey.com/featured-insights/mckinsey-explainers/what-are-industry-4-0-the-fourth-industrial-revolution-and-4ir). Volgens deze theorie zijn er vier revoluties:
Eind 18e eeuw: de industriële revolutie door de mechanisatie van water- en stoomkracht. Dit is de opkomst geweest van de industrie.
Eind 19e eeuw: nieuwe uitvindingen zoals elektriciteit, de opkomst van de olie-industrie en communicatietechnologie (radio, telegrafie).
Vanaf de jaren '70 hebben computers hun intrede gedaan op de werkvloer. Door de komst van het internet is alle informatie ter wereld praktisch overal beschikbaar. Repetitief werk werd in deze fase geautomatiseerd. Binnen kantooromgevingen worden mensen vooral ingezet voor creatief en niet-standaard werk, waar de menselijke hersenen juist geschikt voor zijn.
Op dit moment bevinden wij ons in de vierde industriële revolutie. Ontwikkelingen die daaraan bijdragen zijn AI, IoT (internet of things) en quantum computing. IoT zorgt ervoor dat steeds meer apparaten verbonden zijn met het internet. AI kan in steeds sterkere mate het creatieve, niet-standaard werk van mensen overnemen. Elon Musk durft zelfs te voorspellen dat AI uiteindelijk alle menselijke banen zal overnemen.
Wat de impact van AI gaat zijn, is op dit moment nog gissen. Ik heb zelf altijd gedacht dat mijn baan als developer heel erg lastig te automatiseren zou zijn. Voordat mijn baan zou worden geautomatiseerd, zijn we al in de verre toekomst, dacht ik. Echter, sinds de komst van de toegankelijke ChatGPT AI ben ik daar niet zo zeker meer van. Op dit moment is AI al een hele mooie aanvulling op mijn dagelijkse werk. Ik durf wel te zeggen dat ik nu al 50% van mijn werk met behulp van AI doe. In dit artikel wil ik beschrijven op welke wijze AI mijn werk dagelijks eenvoudiger maakt.
Reden 1: AI als leraar
Voor mij als developer was Google altijd van groot belang. Softwareontwikkeling is erg complex en vereist zeer veel kennis. Het leren van een nieuwe taal kost veel tijd. Programmeertalen zijn daarnaast erg uitgebreid. Als developer weet je lang niet alles van een taal.
De afgelopen periode heb ik een nieuwe taal geleerd: Kotlin voor het ontwikkelen van Android-applicaties. Daarbij kan ik continu vragen stellen aan de AI. Deze AI is feitelijk gezien mijn eigen persoonlijke leraar met meer kennis dan welke leraar ter wereld en altijd beschikbaar!
Wel is het zaak ervoor te zorgen dat je de basisconcepten van de taal goed begrijpt. Want zonder deze basiskennis kun je de antwoorden van de AI moeilijk interpreteren. De AI dient dan ook echt als assistent.
Reden 2: de AI kan problemen (bugs) in je code oplossen
Als developer loop je regelmatig tegen problemen aan. Ook voor mij geldt dat een foutje in de code ervoor kan zorgen dat mijn software niet werkt. Het is niet altijd duidelijk waar het probleem precies zit. In het verleden was Google daarbij handig. Door veel te zoeken en te graven in forums hoopte je iemand anders te vinden die hetzelfde probleem had. Dit kon mij erg veel tijd kosten.
Het AI-tijdperk werkt heel anders. Als ik nu een foutmelding krijg, dan voer ik deze meteen in bij de AI met de vraag wat de reden kan zijn voor deze melding. Vaak geeft de AI dan een checklist die ik gewoon kan doorwerken. Punt 1 is het meest waarschijnlijk en het laatste punt het minst waarschijnlijk.
Wat ik ook kan doen, is de AI vragen wat er mis is met de code. De AI gaat vervolgens zelfs de code analyseren en komt met het probleem en de wijziging terug. Dit scheelt erg veel tijd voor mij als developer.
Een nadeel is wel dat de zoektocht naar het probleem mij als developer ook veel kan leren. Doordat de AI zelf het probleem al oplost, loop ik het risico daarmee kennis te verliezen die ik normaal gesproken door de uitgebreide zoektocht mij eigen maakte.
Reden 3: de AI als copiloot
Er zijn op de markt meerdere tools beschikbaar die als copiloot mee kunnen werken in een project. De AI-copiloot geeft dan automatisch suggesties voor code. Het is ongelooflijk dat de AI kan voorstellen welke code ik als ontwikkelaar wil gaan maken. Hieronder een voorbeeld waarbij ik enkele letters heb getypt en de AI-copiloot al een suggestie geeft:
Ook dit scheelt heel veel tijd. Wel is het zaak dat je een taal goed kent, zodat je weet of het voorstel van de copiloot wel of niet klopt. Soms kloppen de suggesties niet en kun je beter een andere oplossing gebruiken.
Reden 4: de AI refactort je code
Als ontwikkelaar kun je vaak op veel verschillende manieren een probleem oplossen. Het is zeer belangrijk dat een ontwikkelaar nette code schrijft die later weer makkelijk kan worden begrepen door andere developers. Ook is het van belang dat de code later weer makkelijk kan worden aangepast.
Als ontwikkelaar bouw je vaak een eerste versie van je code. Daarna ga je de code netjes maken zodat deze van goede kwaliteit is. Dit proces noemen wij refactoren.
De AI kan zelf code refactoren. Door simpelweg aan de AI te vragen mijn code te refactoren, krijg ik ideeën op welke wijze ik de code beter op kan zetten. Dit zorgt ervoor dat ik als developer naast sneller ook betere code kan opleveren.
Conclusie
Kortom, voor een developer is de AI nu al een zeer belangrijke tool. De developer is nog steeds noodzakelijk bij de ontwikkeling. De AI is op dit moment een handige assistent. Hoe dit in de toekomst eruit gaat zien, is nog niet te voorspellen. Maar mijn advies aan alle ontwikkelaars is: doe er nu al je voordeel mee!