Leerdoel 3
Ik wil na afloop van mijn stage bij WeAreFrank! in staat zijn om een analyse te schrijven over actuele technologieën.
Hoe te bewijzen
Om dit leerdoel te behalen, zal ik een analyse schrijven over Go. Go is geschreven door Google. NLX, waar mijn stage over gaat, is gemaakt in Go en om de NLX code te begrijpen moet ik Go leren. De analyse ga ik maken in de vorm van een presentatie. Deze presentatie presenteer ik aan mijn begeleider en medewerkers van WeAreFrank! tijdens een borrel.
Bewijsmateriaal
Mocht bovenstaande niet werken, dan is hier een link naar het document: bewijslast-leerdoel-3.pdf
Feedback begeleider en andere stakeholders
Jaco: Hierdoor heb ik een beter beeld gekregen van Go en hoe het werkt. Ik heb nu een beter beeld van de NLX code.
Niels M: Heb je ook gekeken naar de concurrency problemen van Go? Kijk naar hoe Docker anders werkt op Linux, Windows, Windows-WSL en Mac. En kijk ook is goed naar de snelheden. Java loopt niet zo heel erg achter als je denkt, het verschil is dat bij Go alles direct in geheugen staat en Java het moet inladen, bij meerdere aanroepen is het verschil een stuk kleiner. En als je Java native gebruikt al helemaal.
Reflectie
Ik ben bij deze presentatie van een basisniveau programmeren uitgegaan. Achteraf gezien wat het verstandiger geweest op om een lager kennisniveau te starten of minder op de code af te gaan omdat er ook niet-programmeurs aanwezig waren. Dit had ik kunnen bedenken maar was mij ontgaan. Ik heb hiervan geleerd dat ik in de toekomst meer het publiek in gedachte neem. Ik heb veel geleerd van het maken van deze presentatie en ik heb veel geleerd over Go. Eerst was ik van plan om Go meer te gaan gebruiken, alleen naarmate mijn onderzoek verder liep en ik er meer in aanrakingen mee kwam, kwam ik er achter dat ik Go minder prettig vind werken dan ik gedacht had. Ik vind het een leuke taal, maar ik vind het niet prettig om er mee te werken. Ik ben zelf gewend aan TypeScript en soortgelijke talen. Het heeft voor mij geen voordelen om Go te gebruiken. Go wordt veel gebruikt voor microservices, dus mocht ik later dingen met microservices gaan doen, dan kan ik mijn Go kennis gebruiken.
Ik heb inderdaad me niet zo diep qua concurrency in Go verdiept en zal mij zeker verder verdiepen in de concurrency problemen rondom Go. Hetzelfde geldt voor de snelheden van Java (native) en Go.