Micah's Secret Blog

A Deep Dive into SQLite's Query Optimizer

15 minute read Published: 2024-08-27

I love databases, but they are still largely a magical black box to me, so in this post, I'm going to explore how SQLite's query optimizer works. We'll delve together into the process of how SQL queries are parsed, optimized, and executed, with a particular focus on the optimization phase. By the end of this post, you'll have a better understanding of how SQLite's query optimizer works and how it can help you write more efficient queries.

vimtutor-sequel: The Extended vimtutor

4 minute read Published: 2024-08-04

The vimtutor program is the essential starting point for anyone looking to learn the basics of using Vim. In as little as a half hour, you can learn 90% of what you'll ever need for vim, however, there are many useful motions and commands that are left out of the program. This article details the simple software package I wrote to address this limitation, vimtutor-sequel.

An Optimistic Take: AI's Augmentation of Software Professionals

10 minute read Published: 2024-07-19

No doubt you've heard it before: "AI will make programmers obsolete" or "AI will take your job." But is this narrative accurate? News stories like Cognition AI's Devin, albeit found to be categorically a hoax, have nonetheless fueled fears among software professionals about the future of their careers. However, the most current look at the state of AI in software development suggests a more nuanced and hopeful future.

How Do Software Packages Work?

7 minute read Published: 2024-06-04

How do software packages work behind the scenes? How are they created, distributed, and installed? In this post, we'll explore the lifecycle of software packages, from creation to installation, using the Node Package Manager (NPM) and the Autoprefixer package as real-world examples.

Bloom Filters: Space-Efficient Probabilistic Data Structures

8 minute read Published: 2024-05-25

In the realm of computer science, efficiency is often the key to solving complex problems. One elegant solution that stands out for its efficiency is the Bloom filter. Despite being relatively lesser-known, Bloom filters offer a powerful method for determining set membership while using minimal space. This post explores what Bloom filters are, how they work, their applications in various fields, and compares them with other data structures.