More Testing Tips With C#

December 11, 2024

This post is part of C# Advent Calendar 2024. Visit it for all the awesome upcoming posts! It was released on 11 December as a substitution for the 8th December spot, as another blogger couldn’t make it.

The traditional C# Advent is here. It also seems tradition I talk about some testing aspect [1] or some outsider view approach to C# [2] here. Let’s not break this tradition and I share some more testing tips.

Excitement
Figure 1. Excitement
Continue reading →

Pitfalls with Mill Build

September 27, 2024

Here are some challenges and pitfalls I ran into when using Mill.

Pitfalls
Figure 1. Pitfalls
Continue reading →

Circe JSON: Use JsonObject instead of cursors

September 11, 2024

I’m using the Circe JSON library at work. I am not a fan of it. I recommend to stay away from it. Luckily I rarely have to touch JSON parsing code paths.

What makes my blood boil the most with Circe is small ad-hoc JSON parsing, where I need to extra some values from JSON, without going to create boiler plate class for it. [1]

My expectation for something like that I get a Map, maybe an extended map with some convenience functions. However, the Circe documentation guides you towards their cursor API for that. That API is (censored/insert swearwords/rant here).

Turning JSON complicated
Figure 1. Turning JSON complicated
Continue reading →

Mill Build for Java Devs

August 5, 2024

Mill has its origin in the Scala world. However, it is well suited to build Java projects. Recently the official Mill documentation gained a growing Java section with many examples. So, I’m keeping this post short, as the official documentation has more information than I can cover.

You might be scared that Mill builds are written in Scala. Luckily, Mill is conservative with its Scala use to constructs most Java developers are already familiar with.

Continue reading →

Build Questions answered by Mill builds

July 22, 2024

I’ve started this series with a list of questions you will encounter in non trivial builds. I claimed that Mill had great at answering most of these questions, but left the actual answers open. Well, after showing Mill for a bit, it is time to answer them.

Ticking Off Boxes
Figure 1. Ticking Off Boxes
Continue reading →