What I Learned Blogging for a Year

2019 was the year I decided to just shut up about my plans to blog and actually do it.

I had drafted up plans about what I would do, how I would do it, my usual MO for an unknown plunge. This unfortunately tends to turn into an exercise in procrastination, but not this time. I had finally pushed myself to just go.… Read the rest

The Basics of Big O Notation

Big O notation expresses how an algorithm grows relative to the input and extrapolates the input out to something arbitrarily large or even infinity. This gives us how long an algorithm takes to run in best case and worst case scenarios.

This isn’t going to tell us exactly how long it takes to run an algorithm (for reasons we’ll get into in a bit), but gives a way to rank and compare algorithms as a whole, and gives you a scale of how big it will be.… Read the rest

Scribus Interruptus

This story starts and ends with a kid. Had I not had my kid, I probably would never have decided to just sit down and start a blog one day. Before my kid (and by extension, my blog), I had been used to long stretches of time to do whatever I wanted. Unfortunately, I wasted most of that time just screwing around on the internet.… Read the rest

Expanding Lua Functions

This article is an extension of our previous article on functions. We’re going to learn a few new tricks and see how they can be applied. It also will expand on classes just a little bit.

We’re going to cover passing a variable number of arguments to a function, and how to use functions as variables. Lua has a special construction for passing an arbitrary number of functions without using a table as: an array or a hash table (both are technically tables).… Read the rest

The Quick Guide to Understanding Quicksort

Quicksort is one of the most popular algorithms to sort with. It’s average use case is great, it’s relatively easy to implement, and it’s worst case isn’t that easy to stumble into. We’ll go over how it’s actually implemented and what can be done better with it.

Introducing Quicksort

Quicksort is a divide and conquer algorithm. It works by splitting the data set into increasingly smaller sets and recursively iterating over them until there’s nothing left.… Read the rest

Making Metrics Matter

More companies are looking to move from relying on intuition to relying on data-driven or data-informed approaches. One of the biggest obstacles to this process is creating meaningful metrics based on the data. The data collection itself is usually easy enough, but making the data paint an accurate picture of what is happening can be a lot harder. The same data set can lead to multiple conclusions depending on how it is filtered and processed.… Read the rest