Avoid side effects outside of your application

You probably heard that side effects in programming can be harmful. This post is not about imperative versus declarative approach, though. This is about side effects you may create without paying attention to little details. Just few examples. Running process and blinking Let’s take this code in C# on Windows (it can be reproduced in … Continue reading Avoid side effects outside of your application

Bit Twiddling Part 2 — Reverse engineering Profesor Klaus Intensywny Kurs to fix missing microphone — Profesor Klaus Intensywny Kurs bez mikrofonu

This is the second part of the Bit Twiddling series. For your convenience you can find other parts in the table of contents in Par 1 — Modifying Android application on a binary level Word of warning: if you come to this post to find the solution only and you are not interested in the … Continue reading Bit Twiddling Part 2 — Reverse engineering Profesor Klaus Intensywny Kurs to fix missing microphone — Profesor Klaus Intensywny Kurs bez mikrofonu

.NET Inside Out Part 24 – Synchronous waiting for the Task in the same frame

This is the twentieth fourth part of the .NET Inside Out series. For your convenience you can find other parts in the table of contents in Part 1 – Virtual and non-virtual calls in C# Let’s take this code: and compare it with this one: They look very similar, however, they give different outputs. First … Continue reading .NET Inside Out Part 24 – Synchronous waiting for the Task in the same frame

.NET Inside Out Part 23 – Machine code address of any .NET Core method

This is the twentieth third part of the .NET Inside Out series. For your convenience you can find other parts in the table of contents in Part 1 – Virtual and non-virtual calls in C# .NET Core introduced tiered compilation and reworked AOT compilation. Previously, we could get address of machine code by calling GetFunctionPointer … Continue reading .NET Inside Out Part 23 – Machine code address of any .NET Core method