Many of us have opened a hex editor to analyze a file or to learn reverse engineering. One day I came across an interesting article on color-coding bytes . Without much hesitation, I decided to write an article — not just a tutorial on highlighting bytes, but a deep dive into the inner workings of a minimal hex editor. We'll explore how bytes become a hex dump, what approaches to highlighting…
During software development, we often face a choice between a language's convenience and its performance. Python has gained popularity due to its simplicity and elegance, but when it comes to low-level operations or tasks requiring high performance and speed, C comes to the rescue. We will be focusing specifically on integrating extensions at build time, not just loading libraries via ctypes . In…
On June 5, 2025, PEP-0734 was accepted. Judging by the information on the official website, it is a continuation of PEP-0554 . This PEP proposes adding a new interpreters module to support checking, creating, and running code in multiple interpreters within the current process. And going further, it is a continuation of PEP-0684 , which proposes one GIL per interpreter. Several full-fledged…
Every person who spends more than five minutes in a terminal runs into the same thing: the same long commands have to be typed over and over, and routine actions eat up time and attention. At first you put up with it, then you start optimizing. A simple alias in .bashrc or .zshrc feels like a small revelation. The first working script saved in ~/.local/bin feels like a breakthrough. It’s not just…
Good day, ladies and gentlemen! Sometimes some people get the urge to engage in outright indecency in programming — things that don't bring direct practical benefit but help to have fun. And I am no exception. In this article, I want to tell you about lifehacks, tricks (magical and not so magical), and algorithms in the C language! The idea to write this article came from my post . In it, I…