Lua Case Insenstive Table



Introduction This is something I wrote for PenLight but alas it wasn’t merged. The problem they had is the use if __pairs which isn’t present in Lua 5.1. The project wants to maintain compatibility with 5.1 and LuaJIT which targes 5.1. All the Lua projects I deal... Continue reading

BPF Skid Plate



Introduction I decided to enhance the look of my Tacoma by buying a skid plate. While I do want something that will work as a skid plate, I didn’t want a lump of grey metal. The TRD Pro skid looks good but I’m not a big fan of trying... Continue reading

Moving From WordPress to Jekyll



Introduction When I first started this blog back in 2008 I hosted it myself using an Arch Linux instance with Linode. For the blogging platform I used WordPress MU because it was, and still is, one of the most popular blogging platforms. At that time the MU version... Continue reading

WordPress Gutenberg Editor is Garbage if You Need to Post Code



Introduction Recently WordPress.com (and WordPress in general) has started pushing the new Gutenberg editor. It uses a block based model instead of a traditional document centric one. This I don’t like but I also don’t mind. It’s a different way of composing and I can see the benefit. However,... Continue reading

Mergesort in C



Introduction Quicksort is most people’s go to sort function and that’s not a bad thing because it’s a really good general purpose sorting algorithm. A good implementation is really fast and, being an in place algorithm, it uses very little memory. The big drawback of Quicksort is that... Continue reading

General Comparison Functions in C



Introduction qsort, heapsort, mergesort, bsearch, and many more search and sort functions all take a compar argument to determine the sorting order of elements in an array. The compar function takes the form int (*compar)(const void *, const void *). The <code... Continue reading

Softening the Tacoma TRD Sport Ride



Introduction The TRD Sport is known to have the hardest ride of any of the Tacoma trims. You’d except this from the Sport model with a sport tuned suspension. Out of all the trims the Sport has the least body roll and is the best handling Tacoma. As with... Continue reading

KDocker 5.2 Released



This isn’t a huge release but includes a very nice new feature. Lock to desktop! This will force the an application to always open on same desktop (when using multiple desktop workspaces) that it was originally docked on. The default behavior is to still to open on the current desktop.... Continue reading

Went Back to the TRD Sport



Introduction Awhile back I wrote about my experience with the TRD Sport and TRD Pro where I concluded the Sport is better suited for me. Since writing that post, knowing that the Pro just isn’t right has been nagging at me. The ride and handling are the biggest things... Continue reading

Quicksort in C



Introduction Quicksort is one of the most common sorting algorithms and one of the most efficient. It’s so common that it’s part of C89. That said, it’s still good to know how it works, its strengths, and it’s weaknesses. It takes as a divide and conquer approach to sorting.... Continue reading

Byte Swapping in C



Introduction Some times you need to swap bytes. Sometimes you don’t. But right now we do. Well, we don’t but if we were implementing some sorting functions we’d need a good swap function. Sorting typically doesn’t move pointers around, instead it moves the bytes pointed to by the pointer.... Continue reading

KDocker 5.1 Released



After quite some time and a few people asking, I’ve put up a new release of KDocker. The big new feature in this release is the ability to save application settings. This way you can dock an application and you don’t have to go though and configure how KDocker interacts... Continue reading

Binary Search and Insert



Introduction When dealing with arrays it’s often necessary to keep their elements in sorted order. The easiest way is to use an insert algorithm that always puts element into the array in sorted order. That said, you don’t know where elements will end up in the array because if... Continue reading

Base64 Encode and Decode in C



Introduction A very popular way to encode binary data is Base64. The basis of this is an encoding table. As you might expect, there are 64 total characters that go into the tale. There are multiple implementations of base64 with slight differences. They are all the same except for... Continue reading