Skip to content

Blog

dotnet cross-platform interop with C via Environment.ProcessId system call

The goal of this article is to understand how high-level dotnet code interoperates with low-level C code in a cross-platform manner when making system call via Environment.ProcessId in dotnet.

We'll delve into the differences between running it on windows and unix-like (macOS, Linux) operating systems in a cross-platform manner. We'll also write some C code to check and prove that we really understand what's going on.

Flavours of rounding

How often do you round various numbers in your day-to-day job? Do you know what type of rounding do you actually use?

Let's compare several programming languages and their default (meaning without additional parameters if the rounding function allows it) rounding techniques.

Postgres pg_stat_statement setup via docker

Sometimes we want to track and analyze SQL in postgres. It may be that you use some fancy ORM and all SQL is abstracted away, but then you begin to notice some performance drops and you're starting to suspect that the SQL you expected to be run "very efficiently", in fact performs poorly.

That's how I've got acquainted with pg_stat_statements tool. I suggest to read about it on the official site.

Here, we'll setup it for local development via docker.