March 4, 2019

Introduction to CMake

For the sake of maintainability it’s important that non-trivial software projects have some sort of build system, whether makefiles, autotools, cmake, or some language-specific tooling. Unfortunately, how to write a build system seems to be something that’s rarely explained to computer science students. While not somewhat controversial and not as popular as older solutions like autotools, I find that CMake is easier to learn and use in many cases. Read more

March 2, 2019

Shell Quoting

The difference between the different types of quotes as used by bash (and similar sh like shells) seems to keep coming up while reviewing code. It seems like people mostly use the double quote (“) and just hope for the best, but this can be problematic, depending on the data that you’re working with. Let’s try some examples: Read more

March 2, 2019


Welcome. This site is intended as an educational resource, mostly focused on computing. In interviewing potential interns, and even some colleagues, it’s clear that a lot of people don’t understand how things work. Copy/Paste from Stackoverflow is great for getting things done quickly and getting unstuck, but it often doesn’t really teach. Hopefully this blog can help clear things up. One thing that you might find confusing is the name. Depending on your browser, this blog might show up as the Unicode snowman emoji (☃), “xn–n3h” (its “punycode” representation) or some combination thereof. Read more

Powered by Hugo & Kiss.