About:

Fredrik Kihlander is an engine programmer and amateur cook who blogs about C++, Python, and game development.

Website:

Specializations:

Interests:

C++ Python Game development Code-related topics

Outgoing Links:

Subscribe to RSS:
The text is a rant about the use of std::variant in C++ and the difficulty of deciphering the error messages it produces. The author discusses the challenges of working with C++ and the lack of clear error messages in the standard...
The author shares a list of links to blog posts, presentations, and videos that they found interesting. They have not had time to work on their hobby projects and decided to share the links instead.
The author discusses the importance of looking outside of one's own 'tribe' in the tech industry, encouraging readers to be open-minded and learn from different sources. They emphasize the value of gaining insights from various pe...
The text discusses the author's experience with zig while writing a NES-emulator and the neat trick he discovered to extend an enum in zig. The author shares the process of using zig's meta-programming facilities to achieve this, ...
The text discusses the possibility of hashing strings in C++ at compile time, comparing the overhead of hashing strings at compile time to using a preprocessor or script. The author generates test cases using a python script and m...
The author shares some of the software tools they use and recommend for development work, including clink, WinMerge, WinDirStat, Everything, ImHex, bat, Python, Visual Studio Plugins, Smart Command Line Arguments, and Compile Scor...
The text discusses a c++-technique to handle callbacks that the author has not seen written about before. It compares the use of std::function with a new approach called Kihlanders reverse, which aims to provide a good API at low ...
The author talks about his project of optimizing an old code in his game-engine. He discusses the process of swapping memory buffers, using memcpy() in chunks, and manual vectorization with SSE and AVX. He compares the performance...
The author writes about their experience learning the Zig programming language by building a simple image to ASCII converter. They discuss their struggles and successes with the language, highlighting both the good and bad aspects...
The article discusses the behavior of memcpy() and memmove() in C and C++, highlighting the undefined behavior that occurs when the source and destination buffers overlap. It also explores the differences in behavior between diffe...