Build C# Project with GitHub Actions

Continuous integration (CI) as done with GitHub Actions serves multiple purposes. You get to continuously check that newly integrated code still works correctly and when it comes to cross-platform development, it also allows you to ensure that new code doesn’t just “works on my machine”, but also on platforms you might not even have the […]

SQL Server on GitHub Actions

Besides SFML, I’ve also taken on the maintenance of Jobbr, a .NET JobServer developed by some co-workers some time ago. With the help of some more people, we managed to migrate the whole machinery from .NET Framework to .NET 6. At the end of the migration, I went ahead and set up GitHub Actions for […]

Do You Know How To Debug?

Yesterday, I came across a fabulous talk by Bryan Cantrill at GOTO 2017 with the topic of “Debugging Under Fire: Keep your Head when systems have Lost their Mind”. It’s a very interesting and entertaining talk, so I highly recommend to watch it in full. I never really heard this simple definition of debugging: Debugging […]

Stop Naming Systems “Legacy”

While according to Merriam-Webster “legacy” is described as “relating to, or being a previous or outdated computer system” and Wikipedia adds “yet still in use”, I feel like we software developers and especially software architects are too hastily in naming a system or sub-system legacy. From a high-level architecture point of view, which spans across […]

You Are Not Wasting Time

On the SFML Discord and forum, I get to mentor and support a lot of new beginners, often with some of their first steps in programming. It’s not uncommon that they feel like wasting their time, because they can’t figure something out and spend hours or days on it. I think every programmer, myself included, […]

Article on Error Handling

Yesterday, I came across this interesting article Handling errors is canceling operations. While it’s mostly focused on C++, I found most of it being generic enough, that it also fits with other languages. The most interesting section to me, was the following paragraph: Exception handling is not a tool for broadcasting information about any failure in […]