Welcome

A time of decay and despair lurked in the eldritch and unfathomable depths of the city’s soul during the President’s reign—a tenure masked as prosperity and joy.

It was a grotesque charade where dolphins, those mocking emissaries of a darker, unknown abyss, swam the river not with grace but with sinister intent. The streets and squares, seemingly alive with celebrations, were but hollow echoes of joy, filled with the cacophony of a cursed existence.

The citizens, deluded in their beliefs, worshipped their leader. Yet, this infallible figure was, in truth, a harbinger of doom, leading them not to security and contentment but into a labyrinth of unspoken horrors and failures, meticulously hidden from sight.

Under his rule, the city did not prosper; it withered, choked by the tendrils of an unspeakable and malevolent truth.

Troubleshooting GoogleTest Linking Issues in Mixed C++/C# Projects

First Part - Compile the code Integrating GoogleTest with mixed C++ and managed C++/CLR projects can lead to unique challenges, especially regarding test detection in Visual Studio’s Test Explorer and linker errors. Recently, I faced precisely these issues. Diagnosing the Issue Tests Not Appearing in Test Explorer Initially, my native C++ GoogleTest unit tests were visible in Visual Studio’s Test Explorer. However, enabling C++/CLR caused them to disappear. It became clear that Visual Studio’s test adapter struggled to detect GoogleTest tests after incorporating managed code. ...

March 20, 2025

Structured Exception Handling (SEH)

Structured Exception Handling (SEH) is a Microsoft-specific extension to C and C++ designed to handle exceptional code situations, particularly hardware faults, in Windows operating systems14. It serves as a generalized error handling mechanism supported by the Windows OS and is part of the Windows Application Binary Interface (ABI)3. Key features of SEH include: Hardware fault handling: SEH can catch CPU exceptions such as access violations, illegal instructions, and divide-by-zero errors4. OS-level mechanism: Unlike C++ exception handling, SEH is an operating system feature not tied to any specific programming language3. Per-thread basis: SEH works on a per-thread basis, with each thread containing its own Structured Exception Handling mechanism3. Untyped exceptions: SEH exceptions are not typed but share a common data structure containing an exception code and additional information about the fault4. First-chance handling: SEH allows for logging or handling exceptions before stack unwinding destroys local variables4. Finally mechanism: SEH includes a “finally” mechanism not present in standard C++ exceptions5. While SEH is supported by Windows and Microsoft C++, it is generally recommended to use ISO-standard C++ exception handling for better portability and flexibility1. However, SEH may still be necessary for maintaining existing code or for specific types of programs that require low-level exception handling capabilities14. ...

The Catch2 adapter for Visual Studio

The Goal Reveal the tests written using the Catch2 framework in the Test Explorer inside the Visual Studio 2022 Catch2 A modern, C++-native, test framework for unit-tests, TDD and BDD - GitHub - catchorg/Catch2) Test Adapter for Catch2 Within Visual Studio, the Test Explorer is a convenient way to run and debug unit tests. This test adapter adds support for the Catch2 C++ test framework (version 2.x and 3.x). This adapter is for use in combination with Visual Studio 2017 and later. ...

February 26, 2025

How many hours a day can you write code

How many hours a day can you write code, and at what point does the quality of your work go down? Even more important is how many weeks and months of that max effort you can still be effective. In my life, there have only been three periods where I worked crazy hours, and only two of those were multiple months. Generally, over my forty years, I worked a reasonably regular schedule. The standard forty hours a week rarely involve only writing code; you are always doing other things, such as meetings, talking with people, reading or writing documentation, emails, or, more recently, Slack messages and the like, or even reviewing code (which is like coding). ...

February 19, 2025

Pisanie jako inżynier oprogramowania

Pisanie jako inżynier oprogramowania Jak stać się lepszym pisarzem jako inżynier oprogramowania. Przyjrzymy się, dlaczego umiejętność pisania jest równie ważna, co kodowanie, oraz jak systematycznie rozwijać tę zdolność. Pisanie, połączone z kompetencjami technicznymi, może stać się prawdziwą supermocą w karierze każdego inżyniera oprogramowania. Dlaczego warto pisać? Pisanie odgrywa kluczową rolę w codziennej pracy inżyniera. Niezależnie od tego, czy tworzymy e-maile, dokumentację, komentarze w kodzie, czy planujemy projekty, precyzyjne przekazywanie myśli jest niezbędne. Oto kilka powodów, dla których warto rozwijać umiejętności pisarskie: ...