Reviewing student code in the age of LLMs

Some observations during this years code review

Code Reviews for Schools? For as long as I can remember, our company Info Support has collaborated with a few universities. Part of that collaboration is in the form of Code Reviews for projects built by the 2nd year students. It’s always been a great learning experience (both for the students and for myself)… but this year was quite special. Last year GPT and LLMs were still pretty new. This year… well that’s what this post is about. [Read More]

Azure Storage: usage and testing with Java

Using Blob, Table and Queue storage in the cloud using Java... but testing it locally.

Azure Storage Azure Storage is the highly scalable, secure, high available managed offering to store data in the cloud. Since not all storage needs are the same, there are a few different flavors: Azure Blobs: Object store for text and binary data; Azure Tables: NoSQL store for structured data; Azure Queues: Message store for messaging between application components. There are a few more flavors, but these I consider the originals ;). [Read More]

Replying to a CFP: Anti-patterns

A quick glance at some reasons why your submission might not make it.

I’ve been reviewing a lot of CFP submissions recently, both as someone in a program committee and during the Community Review for Devoxx Belgium. While I can’t give you a recipe for 100% success, I thought it would be helpful to list the reasons why I (personally!) give talks a lower rating. Before you “ChatGPT: summarize” this, here is the TLDR: Spelling, Grammar & Typos: Use spellchecking tools; On the Right Track: Make sure you submit content to the correct track; Timeliness of Content: Make sure your content is still relevant; Provide value: What is the audience going to get that is of value to them? [Read More]

Java improved its 'Hello World' experience

Smoother on-ramps with new Java Enhancement Proposals

No bootcamps are choosing Java. I was recently thinking about how we can get more people to program Java. While I think we still got work in many areas (more about that in future blog posts), I think the biggest influx of new Java developers could be found in bootcamps. While often overlooked when talking about “onboarding new people to our industry”, bootcamps are a great pathway to join our industry. [Read More]

Strategy over Style

Learning style are a myth, strategies are the real deal

Recently, I was reading another “How to be a more productive developer”-post on Twitter. I read a lot of these, because I’m also constantly trying to improve myself, constantly looking for new nuggets of information. What bothered me about this one specifically, was the mention of “knowing your learning style improves your learning”. While seemingly common knowledge… learning styles are a myth and might be hurting you. Let me explain. [Read More]

Java related things I want to see more of in 2023

2022 is over, time to look towards the future!

2022 was an exciting year. I gave a couple of talks at conferences in EU and US, met a lot of cool people and even started hosting the Belgian Java User Group. While I have already celebrated the past year, it’s time to look ahead and share some hopes for 2023. This list is incomplete and not sorted. The embrace of Java 17+ Java has been evolving quite fast in the last couple of years. [Read More]

Use Testcontainers to create a Docker Test Image

Tackle those long Liquibase/Flyway changelogs or setup your testdata from code!

TLDR?! You can always just check out the example on Github. Prerequisites: You should be familiar with JUnit, Testcontainers and have some fundamental Docker knowledge. I’ve seen a lot of projects use a database management tool like Flyway or Liquibase to update their databases. In production, only a small part of the changelog will need to run because most of the changes have already been applied in previous deployments. 🚀 [Read More]

Playwright: Wordle, with no hands!

Using UI Automation to play Wordle.

Using Playwright to automatically play Wordle. I recently decided to give UI Automation another try live on Twitch. I’ve used Selenium in the past but that always felt like a hassle. So this time, I wanted to try out a new competitor on the scene of UI Automation Libraries: Playwright. And what better way to get a feel for a library then by using it in a fun project. As this is the point in time where the online game Wordle is immensely popuplar… why not try and automate that? [Read More]

The Coffee 'Break' Conundrum

In IT: is it work time, or a break?

I’ve been hearing a lot of similar stories lately. They usually go like this: “Should I clock out of work if I take a small break? Technically I’m not being productive… so…” “You are getting a lot of coffee… and then you just stand there looking out the window. We don’t pay you for this.” In this blog, I won’t talk about the regular Coffee Break Conundrums (Black or with milk? [Read More]

Host your own Map/Route Service API

The data is out there, you just need to expose it.

Route calculations… locally! For a recent project, we needed to calculate vehicle routes… a LOT of routes. We were using an optimization algorithm to plan delivery vehicle routes with multiple stops. Because the previous stop of a vehicle determines the start location of the vehicle for the next “delivery” and the sheer scale of the system, it did not seem practical to pre-calculate all the routes before running the optimization. So we decided to calculate routes while running the algorithm. [Read More]