Skip to main content

Posts

Showing posts from 2023

The Build System Is Dead. Long Live The Build System!

Have you ever been working on a really large product? If you have ever worked with C++, C#, or Java programming languages you've definitely been involved in writing build scripts for make, make, maven, babel, or other, possibly even custom-developed build systems. And that's... That's a pain in the ass...

AoT Compiled Languages Metaprogramming: A Nascent Trend Or Another Esoteric Practice?

This is a humble endeavor to briefly cover the modern state of metaprogramming. Not All Runtime Code Is Written By Programmers Metaprogramming itself is not a new approach to writing software. It originates in the 1970s and since that time even became a popular coding style for Lisp programmers. It is also widely used in interpreted languages like Python for different purposes like unit-testing and alternating existing code behavior (for example, the  gevent  library uses this approach to  patch standard library objects  to express its behavior via standard library APIs).

Text Files Do Not Exist

Discussing two misleading terms of software engineering: text files and binary files. It's a bitter truth for every experienced and even beginner coder. We all know that everything stored in memory (of all kinds) is physically stored as a sequence of bytes in binary form, basically, as meaningless byte sequences that only programmers give meaning to with a code. Thus, there is no difference between so-called text files and binary files at a low level, and I believe we also have to stop making this difference at higher abstraction levels in our code.