Bezoekverslag TEQnation 2019

Events


De opening van TEQnation

De opening van TEQnation

Op 15 mei was De Fabrique in Utrecht wederom het toneel van TEQnation 2019, de grootste multi track tech conferentie van Nederland voor software ontwikkelaars. Met tal van presentaties op thema’s als: AI & ML, IoT & Embedded, AR & VR, Methodology & Culture, Open Source, Cloud & Serverless and New & Cool. Onze collega’s Yuri, Erik en Sander waren erbij en doen verslag!

Stream processing is trending

door Yuri Vrancken

Op TEQnation was er dit jaar een duidelijke trend waar te nemen voor wat betreft stream processing. In veel sessies werd er gebruik gemaakt van de stream processing mogelijkheden van Java, Java Frameworks en andere talen of zelfs functies van platformen zoals Google, Azure of Amazon.

Stream processing: Choosing the right tool for the job

spreker: Giselle van Dongen

Je hebt als ontwikkelaar een leger aan stream processing frameworks tot je beschikking. In deze sessie werd ingegaan hoe je tot een selectie van een framework komt. Enkele use-cases (fraude detector, platform monitor) werden besproken om te illustreren hoe je tot een selectie van het juiste framework kan komen, waarbij ze zich beperkte tot een 4-tal mogelijke en bekende frameworks: Spark, Flink, Kafka en Stream processing. In de afweging voor een framework neem je de volgende aspecten mee:

  • Performance

  • Hoeveel data?

  • Moet het snel zijn?

  • Hoeveel tijd is nodig door het stream framework om input te verwerken?

  • Event driven of micro batch processing

  • Advanced features

  • Wie gaat het bouwen?

  • Is de volgorde van events belangrijk?

  • Is er een batch component?

  • Deployment en de interne werking

  • Hoe willen we het hosten (Kubernetes/Cloud/Kafka Streams Discovery)?

  • Hebben we te maken met state en kunnen we state persisteren (message-recover)?

Uiteindelijk volgt een beslissingsmatrix waaruit een keuze gemaakt kan worden:


Screenshot 2019-05-26 at 12.17.58.png

Meestal vind ik het leuker om code of een werkend prototype te zien, maar deze dame had haar presentatie doorspekt met technische termen waardoor ik tot het einde geboeid bleef.

Facebook en testen

door Erik Lourens

De presentatie van Facebook ging over de tool Sapienz. Deze is in gebruik voor het automatisch testen van de app van Facebook op verschillende (geëmuleerde) devices.

Automated Test Design and Bug Fixing @Facebook

spreker: Nadia Ashahwan

Facebook kent een aantal uitdagingen rondom het testen van de app:

  • Ondersteuning van de app op verschillende platformen en systemen

  • De app heeft miljoenen gebruikers wereldwijd. Deze doen dingen met de app die niet zijn voorzien door QA

  • De app is niet statisch, maar dynamisch opgebouwd. Het is onduidelijk welke code er geraakt wordt als er getest wordt.

Facebook was dus op zoek naar een manier om de app te testen met de juiste diepgang zonder eerst maanden testscenario’s uit te werken. Hiervoor is Sapienz in gebruik genomen. Sapienz is ontstaan als een onderzoeksproject bij de University College Londen (UCL) – Computer Science en door Facebook geïntegreerd in hun systemen. Sapienz is een Search-Based Software Engineering (SBSE) om automatisch systeem testcases te genereren. In aanvulling hierop is er door het Facebook team een machine learning laag aan toegevoegd om crashes te analyseren waarbij de app in een flow onderuit gaat, om zo een een betere testset te krijgen.

Sapienz begint met een statische analyse. Hieruit komen testcondities en er volgt een indicatie van test coverage met als basis de geraakte code. Vervolgens worden de condities gecombineerd tot scenario’s die een gebruiker mogelijk uitvoert in de app. Dit gebeurt volledig autonoom door het SBSE algoritme. Omdat bepaalde flows onvermijdelijk zijn, zoals inloggen, is het voor de testers wel mogelijk om scenario’s logisch te combineren.

De testen draaien 24/7 waarbij er steeds wordt gekeken (geleerd) of bepaalde handelingen gecombineerd kunnen worden tot een kortere test met dezelfde coverage. Op deze manier worden testcases steeds verder geoptimaliseerd door de tool. Op deze manier probeert het Sapienz team het lerende effect te vergroten.

Bij het uitvoeren van de testen komt het voor dat de app vastloopt of crasht. Ook dan probeert Sapienz te leren van wat er gebeurt. In eerste instantie is het een simpele terugmelding naar het ontwikkelteam met de fout en het onderdeel waar het probleem is opgetreden. Facebook is echter ook al aan het kijken of er een mogelijkheid bestaat om de fouten automatisch te laten repareren. De meest voorkomende fouten zijn vaak null-pointers en bij deze fouten krijgt het ontwikkelteam niet alleen de fout te zien, maar ook een voorgestelde oplossing om de fout te herstellen. In de toekomst probeert het Sapienz team deze fouten direct te repareren zonder tussenkomst van het ontwikkelteam. Daarnaast probeert het Sapienz team ook al tijdens het coderen feedback te geven over mogelijke issues die in de keten op kunnen treden. Op dit moment werkt deze feature met commentaar regels zodra een stuk code wordt ingecheckt.

Het doel van Sapienz is sneller en betrouwbaarder te kunnen testen waarbij de test coverage aantoonbaar omhoog gaat, het aantal app crashes bij klanten omlaag en een snellere doorlooptijd van ontwikkelde features door snellere feedback op de geleverde code gerealiseerd wordt.

Al met al een mooie ontwikkeling voor geautomatiseerd testen waarbij de nadruk niet op het automatiseren van test flows is, maar meer op het kunnen genereren en verbeteren van de manier waarop flows in de code zichtbaar worden.

Voor meer informatie over het onderzoek wat ten grondslag lag aan de ontwikkeling van Sapienz: http://www0.cs.ucl.ac.uk/staff/K.Mao/archive/p_issta16_sapienz.pdf

De andere zijde van de techniek

door Sander Rombouts

Naast de vele technische sessies was er ook plaats gemaakt voor sessies over het toepassen van technologie: hoe het ons leven gemakkelijker kan maken, maar ook hoe techniek oplossingen kan bieden voor kleine en grote problemen. Bij een van deze presentaties werd ik echt gegrepen door de passie die spreker uitstraalde. In een aantal voorbeelden liet hij zien hoe moderne techniek kan bijdragen aan een betere wereld.

Keynote: When Technology Meets Empathy

spreker: Tim van Leusden

Met zijn team ‘Hack the Planet’ zoekt Tim van Leusden naar oplossingen voor grote (globale) uitdagingen. Oplossingen waar nieuwe technologie een grote rol bij kan spelen.

Als voorbeeld noemt hij ‘Hack the Poacher’. Een project dat een oplossing moet vinden voor het grote probleem met stropers in Kafue National Park in Zambia. Nadat de stropers de neushoorn in dit park letterlijk hebben uitgeroeid, hebben ze nu hun pijlen gericht op de olifanten. Er is al veel geprobeerd, maar zonder succes. Door de grootte van het park is het bijna onmogelijk om de stropers te vinden en op te pakken. Oplossingen werkten niet, waren te duur of onwerkbaar. Onmogelijk, tot het team op een simpele gedachte kwam; Ook stropers gaan tegenwoordig eigenlijk niet op pad zonder hun mobiele telefoon! Spoor deze telefoons op en je hebt de stropers bijna te pakken…

Een ander project gebruikt Virtual Reality om ouderen naar plekken te brengen waar ze niet meer zo snel zouden kunnen komen, om mensen te ontmoeten en om oude tijden te herleven. Het gebruik van VR roept herinneringen op, lokt gesprekken uit en blijkt ook een positieve invloed te hebben op het gevoel van eenzaamheid.

Meet the Soldier

Samen met ‘Mensen met een Missie’ heeft het team van ‘Hack the Planet’ een 3D/Virtual Reality documentaire gemaakt over het creëren van empathie tussen vijanden met diepgewortelde wraakgevoelens.

In noordoost Oeganda hebben rivaliserende stammen al jarenlang met veel geweld te maken. Deze stammen zijn heel erg afhankelijk van hun vee en dit vee wordt bovendien vaak gebruikt als bruidsschat. Jonge mannen gaan op pad om deze dieren van rivaliserende gemeenschappen te stelen. Dit resulteert in een gespannen situatie waarin geweld elk moment kan oplaaien en veel levens verloren gaan.

In de Virtual Reality documentaire ‘Meet the Soldier’ zien we twee Ugandese strijders uit conflicterende stammen. In het normale leven is het ondenkbaar dat deze vijanden bij elkaar in de buurt komen. Toch ontmoeten zij elkaar in Virtual Reality. Zullen zij empathie voor elkaar krijgen en elkaar de hand schudden?

De documentaire is via Vimeo te bekijken voor € 9,99. Zonder VR-headset is de ondertiteling vaak niet goed te lezen. En aangezien weinigen onder ons Swahili kunnen verstaan, is het verstandig zo’n headset op te zetten.

Meer informatie over deze documentaire is te vinden op de website meetthesoldier.com.
En hier alvast een preview!

Gerelateerde berichten