Thu, Nov 20 · 5:30 PM CET
De Nijmegen Java User Group is live! We trappen onze gloednieuwe community af met het allereerste event, gehost bij First8 Conclusion in Nijmegen. Kom langs, netwerk met Java-vakgenoten uit de regio en laat je inspireren door twee talks over groene software en het opruimen van boilerplate code.
🙌 Dit is dé kans om deel uit te maken van de start van de Java-community in Nijmegen.
⌛️ Zorg dat je je op tijd aanmeldt, want het aantal plaatsen is beperkt!
👉 Belangrijk: We willen liever geen eten verspillen. Ben je verhinderd? Geen probleem. Meld je uiterlijk een dag voor de meetup af. Zo kunnen wij de catering perfect afstemmen.
Programma
17:30 - 18:00 Inloop + hapje/drankje
18:00 - 18:45 "Stop Scheduling Like It’s 1999 – Green Software Needs Better Timing" - Ted Vinke (First8 Conclusion)
18:45 - 19:00 Pauze
19:00 - 20:00 "MapStruct – Weg met de boilerplate!" - Chris Kranenburg (Flink Software)
20:05 - 21:00 Netwerken en gezelligheid
Talk 1: Stop Scheduling Like It’s 1999 – Green Software Needs Better Timing
Door Ted Vinke, Senior Software Engineer bij First8 Conclusion
This talk introduces GreenScheduled, a Java library that schedules automated jobs during periods of lower carbon intensity by integrating real-time grid data. It covers sustainability in software, calculating optimal execution times, development challenges, and future plans, empowering developers to reduce the environmental impact of scheduled tasks.
Software, like dinner, is often prepared at night—automated jobs ticking away silently while the team sleeps. But not all kilowatt-hours are created equal. Some are green and clean. Others… well, let’s just say your 2 a.m. batch job might be dirtier than you think.
In this talk, I’ll show how we turned that awkward insight into an actual Java library: GreenScheduled . With one Spring annotation, your jobs can now wait patiently for a greener moment to run—based on real-time carbon intensity data from the electricity grid.
You’ll get a glimpse into:
Why timing matters for sustainability (yes, even in software)
How we calculate the “least dirty” execution window
What went wrong while building it (spoiler: time zones are evil)
And what’s coming next (hint: Quarkus wants in too)
Expect real use cases, some mild shaming of legacy cron setups—and a hopeful look at how developers can make a difference, one job at a time.
Talk 2: MapStruct – Weg met de boilerplate!
Door Chris Kranenburg, Java DevOps Engineer bij Flink Software
Multi-layered applicaties, Data Transfer Objects (DTO's), Entities, Domain Models... Wie herkent het niet? Je hebt een prachtige, schone architectuur, maar er schuilt een donker, vervelend geheim in de code: honderden regels aan handmatige mapping code.
Het is de repetitieve, foutgevoelige boilerplate taak van target.setWaarde(source.getWaarde()) die je kostbare tijd en energie vreet. Sommige ontwikkelaars zweren bij runtime mappers die Reflection gebruiken, maar dat brengt weer performance- en debug-hoofdpijn met zich mee.
Er moet toch een betere manier zijn? Jazeker!
Sluit je aan bij deze sessie en ontdek hoe MapStruct de oplossing is. Ik laat je zien hoe je met een simpele interface en slimme annotaties al die handmatige code voorgoed verbant. MapStruct is een compile-time code-generator die snelle, typesafe en leesbare mapping implementaties voor je regelt.
Ik neem je mee van de basis (@Mapper) tot de gevorderde features, zoals nested mappings, custom conversies en integratie met Spring. Na 45 minuten ben je klaar om terug te keren naar je project en de oorlog te verklaren aan je saaiste code!
Kortom: Minder code schrijven, meer features bouwen. Bye bye, boilerplate!
We kijken ernaar uit je te zien op 20 november! 👋