SQLite has about 155,800 lines of code, and its test suite has roughly 92 million lines. That is ~590x more test code than actual code 🤯
This is the level of testing you need for a real production database. Here are some types of tests they run.
Out-of-memory tests - SQLite cannot just crash when memory runs out. On embedded devices, OOM errors are common. They simulate malloc failures at every possible point and verify that the database handles them gracefully.
I/O error tests - Disks fail. Networks drop. Permissions change mid-operation. SQLite inserts a custom file system layer that can simulate failures after N operations, then verifies that no corruption occurs.
Crash tests - What happens if power cuts out mid-write? They simulate crashes at random points during writes, corrupt the unsynchronized data to mimic real filesystem behavior, then verify the database either completed the transaction or rolled it back cleanly. No corruption allowed.
Fuzz testing - They throw malformed SQL, corrupted database files, and random garbage at SQLite. The dbsqlfuzz tool runs about 500 million test mutations every day across 16 cores.
100% branch coverage - Every single branch instruction in SQLite's core is tested in both directions. Not just 'did this line run', but 'did this condition evaluate to both true AND false'.
Databases are really unforgiving :)
By the way, if you want to go deeper, I recommend reading the official SQLite documentation on their testing strategy. The doc is pretty practical and deep.
Have linked it below.
Confused between ML, NLP, Generative, and other AI models?
Here’s a quick breakdown of the 6 most important types of AI models you must understand in 2025 👇
1. Machine Learning Models
They learn from labeled and unlabeled data to classify, predict, and detect patterns. Think decision trees, SVMs, and XGBoost.
2. Deep Learning Models
Neural networks built for unstructured data like images, audio, and text. Includes CNNs, RNNs, Transformers, and GANs.
3. NLP Models
Focused on understanding and generating human language - used in chatbots, summarizers, and assistants like GPT and BERT.
4. Generative Models
These models create, from text to images to music. Powered by models like GPT-4, DALL·E, and StyleGAN.
5. Hybrid Models
Combine the best of rule-based and neural AI. Perfect for use cases needing both reasoning and context awareness (e.g., RAG pipelines).
6. Computer Vision Models
Built for images and videos. Used in object detection, facial recognition, and medical scans - powered by models like YOLO and ResNet.
Each AI model has its strengths and knowing which one fits your use case is half the battle. Save this guide as your cheat sheet!
What does the CPU internally do? Check out the animation...
The dance goes like -
1. Fetch
2. Decode
3. Execute
4. Memory Access
5. Write Back
See it in action here: https://t.co/PUztTJkl8o
I just finished setting up my System76 Oryp5 laptop with Fedora 40, NVIDIA, and System76 software. Fan control is working properly now, so it’s quiet. The only issue left is that I can't use my external keyboard and trackball connected to the external monitor.
While upgrading Fedora from 39 to 40, it got corrupted and failed to boot. I was reminded that using Linux as a desktop sometimes feels like penance. I’ve been using Linux as a desktop since 2002, but even after two decades, I still don’t consider myself an excellent Linux user.
I last used this laptop two years ago. During those two years, I became fully accustomed to macOS, so I feel uncomfortable using the touchpad on this laptop. When I scroll in the browser with two fingers, the scrolling moves down too quickly.
@thatstraw I love Linux and use it every day, but I don't have much to say about it when talking with people in the IT industry. It's strange… I definitely love it, yet I find myself with nothing to say.