Maak kennis met Marlon: CTO van Tweede golf en home-automation nerd
Marlon
Co-owner & Lead developer

"HANNAS" heet mijn systeem, waar ik nu zo’n twee jaar aan werk.
HANNAS weet en meet alles van ons
HANNAS' brein bestaat uit een Raspberry Pi, die verbonden is met allerlei sensoren en actoren (verlichting, ventilatiesysteem, etc) in ons appartement. En ze staat in contact met mijn smartphone en met die van mijn vriendin. Ik heb sensoren geïnstalleerd op de deuren, zodat HANNAS weet of er iemand aanwezig is, en we meten continu de temperatuur en luchtvochtigheid in verschillende ruimtes. HANNAS slaat deze data op en triggert op gepaste momenten acties.
Zo doet ze bijvoorbeeld alvast de verwarming en het licht in de gang aan - als dat nodig is - als een van ons met zijn smartphone in de buurt van ons appartement is.
Steeds slimmer
Ik heb recent ingebouwd dat als we gaan koken of douchen HANNAS automatisch het ventilatiesysteem in een hogere stand zet. En dat als ‘s avonds de slaapkamerdeur gesloten wordt, het licht heel geleidelijk dimt. HANNAS heeft het licht in de overige kamers dan al uitgedaan. Erg prettig.
Het eerstvolgende wat op de rol staat: ervoor zorgen dat HANNAS bij hogere temperaturen de planten extra water geeft en als het donker wordt automatisch de gordijnen dicht doet. Daarna? Een groot deel van die vervelende repetitieve handelingen in huis, kan je automatiseren. Dat betekent enerzijds een interessante zoektocht naar creatieve oplossingen en, als het dan werkt, anderzijds ook meer gemak.
Waarom het mij blijft boeien
Dat zit hem met name in die zoektocht naar mooie oplossingen. Dat is naast gewoon leuk bovenal ontzettend leerzaam! Eén van de belangrijkste dingen die ik me door HANNAS echt ben gaan realiseren is dat de betrouwbaarheid van systemen uiteindelijk dé factor is die bepaalt of je echt gemak ervaart.
Een voorbeeld: in eerdere versies schrok ik nog wel eens wakker omdat HANNAS midden in de nacht opeens het licht in de slaapkamer op volle sterkte inschakelde. Ook ben ik ooit naar huis gefietst om te checken of er niet werd ingebroken, omdat HANNAS mij een bericht stuurde dat de voordeur werd geopend terwijl ik zeker wist dat mijn vriendin op haar werk was. Bleek gelukkig een bug te zijn. Daarna natuurlijk meteen gefikst.
Architectuur
Tot slot iets over hoe hoe HANNAS is gebouwd. Ik heb HANNAS opgezet met een microservices architectuur en maak voornamelijk gebruik van dezelfde moderne web technieken en best practices, die we bij Tweede golf ook toepassen. Daardoor is het systeem uiterst betrouwbaar geworden.
- Door de verschillende taken op te delen in microservices wordt het systeem veel beter meetbaar, testbaar en flexibeler dan wanneer het 'één grote applicatie' zou zijn.
- NodeJS en websockets worden gebruikt om alles super snel te laten verlopen. Het duurt bijvoorbeeld slechts enkele milliseconden tot de verlichting aangaat na het detecteren van een beweging.
- Automatische tests zorgen ervoor dat door een kleine aanpassing geen nieuwe bugs worden geïntroduceerd. En dat ik niet nog eens naar huis hoef omdat ik denk dat er wordt ingebroken.
Daarnaast is HANNAS - vanzelfsprekend - goed afgeschermd van het publieke internet. Eén van de weinige dingen waarvan expliciet gedefinieerd is dat ze die mag binnenhalen is het weerbericht. De data die ze verzamelt, bewaart ze lokaal en verder triggert ze alleen acties in huis en verstuurt ze notificaties.
Conclusie
Lang verhaal kort, het was en is ontzettend leuk om aan HANNAS te werken en een elegant systeem neer te zetten dat betrouwbaar is by design, aan de nieuwste standaarden en best practices voldoet en allerlei mooie web-technieken gebruikt. Ik heb er veel van geleerd in de afgelopen 2 jaar en wil HANNAS nog lange tijd doorontwikkelen. Ook heeft het mooie kruisbestuivingen met mijn werk voor Tweede golf opgeleverd. Met name wanneer ik technieken uitprobeerde die we voorheen nog niet tot onze stack rekenden, maar die inmiddels zijn ingeburgerd.
Marlon Baeten – CTO en Co-owner bij Tweede golf.
Door de hele dag met passie in ons vakgebied bezig te zijn, zowel privé als zakelijk, hebben we veel kennis van het ontwikkelen van betrouwbare, modulaire systemen met een lange levensduur. Op zoek naar een partner die met net zoveel drive als Marlon voor jou aan de slag gaat? Check onze "Hire a Team"-pagina of neem direct contact op.
Related articles
Rust will be the Constant in your Life (5/5)
If one person at Tweede golf is a Rustacean, it’s definitely Wouter. Whether it’s about web, embedded, or even games: he tried it. And probably not just tried it, but prototyped, created, documented, presented, and nailed it. Just take a look at Wouter’s GitHub page[1]. He’s also engaged in the Rust community as an organizer of RustFest, member of the Dutch Rust foundation, and as maintainer of several open-source crates. He believes that Rust is well on its way to perfection.