SQLite
2025-10-06 SQLite File Format Viewer { sqlite-internal.pages.dev }
SQLite File Format Viewer This tool helps you explore the SQLite file format internals according to the official specification. It's designed for developers and database enthusiasts who want to understand the internal structure of SQLite database files.
invisal/sqlite-internal: Playaround with SQLite internal { github.com }
![]()
2025-10-06 Download HeidiSQL { www.heidisql.com }
2025-10-06 How bloom filters made SQLite 10x faster - blag { avi.im }
That’s what the researchers did! They used a Bloom filter, which is very space efficient and fits in a CPU cache line. It was also easy to implement.
They added two opcodes:
FilterandFilterAdd. At the start of the join operation, we go over all the rows of dimension tables and set the bits in the Bloom filter which match the query predicate. The opcode isFilterAdd.During the join operation, we first check if the row exists in the Bloom filter at each stage. If it does, then we do the B-tree probe. This is the
Filteropcode.
2025-10-06 SQLiteStudio { sqlitestudio.pl }
.NET
2025-07-14 Rejigs: Making Regular Expressions Human-Readable | by Omar | Jul, 2025 | Medium { medium.com }
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
var emailRegex =
Rejigs.Create()
.AtStart()
.OneOrMore(r => r.AnyLetterOrDigit().Or().AnyOf("._%+-"))
.Text("@")
.OneOrMore(r => r.AnyLetterOrDigit().Or().AnyOf(".-"))
.Text(".")
.AnyLetterOrDigit().AtLeast(2)
.AtEnd()
.Build();
Nice! The improved version at the top looks very concise and clean! 💖 :D
C || C++
2025-11-15 Reallocate memory | Field Guide { programmers.guide }
2025-11-05 zserge/grayskull: A tiny, dependency-free computer vision library in C for embedded systems, drones, and robotics. { github.com }
🏰 Grayskull
Grayskull is a minimalist, dependency-free computer vision library designed for microcontrollers and other resource-constrained devices. It focuses on grayscale images and provides modern, practical algorithms that fit in a few kilobytes of code. Single-header design, integer-based operations, pure C99.
Features
- Image operations: copy, crop, resize (bilinear), downsample
- Filtering: blur, Sobel edges, thresholding (global, Otsu, adaptive)
- Morphology: erosion, dilation
- Geometry: connected components, perspective warp
- Features: FAST/ORB keypoints and descriptors (object tracking)
- Local binary patterns: LBP cascades to detect faces, vehicles etc
- Utilities: PGM read/write
2025-11-05 By the power of grayscale! { zserge.com }
When people talk about computer vision, they usually think of OpenCV or deep neural networks like YOLO. But in most cases, doing computer vision implies understanding of the core algorithms, so you can use or adapt them for your own needs.
I wanted to see how far I could go by stripping computer vision down to the bare minimum: only grayscale 8-bit images, no fancy data structures, plain old C, some byte arrays and a single header file. After all, an image is just a rectangle of numbers, right?
This post is a guided tour through the algorithms behind Grayskull – a minimal computer vision library designed for resource-constrained devices.
2025-11-02 Notes by djb on using Fil-C (2025) { cr.yp.to }
I'm impressed with the level of compatibility of the new memory-safe C/C++ compiler Fil-C (filcc, fil++). Many libraries and applications that I've tried work under Fil-C without changes, and the exceptions haven't been hard to get working.
I've started accumulating miscellaneous notes on this page regarding usage of Fil-C. My selfish objective here is to protect various machines that I manage by switching them over to code compiled with Fil-C, but maybe you'll find something useful here too.
Timings below are from a mini-PC named
phoenixexcept where otherwise mentioned. This mini-PC has a 6-core (12-thread) AMD Ryzen 5 7640HS (Zen 4) CPU, 12GB RAM, and 36GB swap. The OS is Debian 13. (I normally run LTS software, periodically upgrading from software that's 4–5 years old such as Debian 11 today to software that's 2–3 years old such as Debian 12 today; but some of the packages included in Fil-C expect newer utilities to be available.)Related:
- I've posted a script to help auditors see how Fil-C differs from upstream sources (clang, glibc, ...).
- I've posted a self-contained
filian-install-compilerscript (replacing the 20251029 version) to download+compile+install Fil-C on Debian 13 in what I think are Debian-appropriate locations, along with glibc and binutils compiled with Fil-C. A run took 86 minutes real time (for 477 minutes user time and 52 minutes system time).- I've posted the start of a
filian-install-packagesscript to download+compile+install Debian source packages, using Fil-C as the compiler (afterfilian-install-compilerhas finished). This script has various limitations that need fixing, but it does work for a few packages already (e.g.,./filian-install-packages bzip2), after the installation ofdh-execetc. described below.- I've posted a graph showing nearly 9000 microbenchmarks of Fil-C vs. clang on cryptographic software (each run pinned to 1 core on the same Zen 4). Typically code compiled with Fil-C takes between 1x and 4x as many cycles as the same code compiled with clang.
2025-11-02 FreeDOS Books { www.freedos.org }
Teach yourself how to write programs with the C programming language. We'll start with simple command line programs, and work our way up to writing a turn-based game.
- Part 1. Let’s Learn Coding (general overview)
- Part 2. Introduction to C Programming (
#include,#define,main(), data types, operators, … and more)- Part 3. Flow Control (flow control and loops)
- Part 4. Functions (user-defined, standard library, and recursion)
- Part 5. Arrays (fixed-size arrays, pointers, variable-sized arrays)
- Part 6. Files (reading and writing files)
- Part 7. Advanced Programming (realloc and getline)
- Part 7½. Advanced Programming (binary, iteration shorthands, …)
- Part 8. Console Programming (conio)
- Part 9. Putting it Together (writing a turn-based game)
- Bonus Programming Videos
2025-10-18 EbookFoundation/free-programming-books: 📚 Freely available programming books { github.com }
https://ebookfoundation.github.io/free-programming-books/
C
- 256-Color VGA Programming in C - David Brackeen
- A Tutorial on Pointers and Arrays in C - Ted Jensen (PDF) ( 🗃️ archived)
- Algorithms Design (in C) - Paulo Feofiloff (HTML)
- Bare-metal programming for ARM - Daniels Umanovskis (PDF)
- Beej's Guide to C Programming - Brian "Beej Jorgensen" Hall (HTML, PDF) (CC BY-NC-ND)
- Beej's Guide to the GNU Debugger (GDB) - Brian "Beej Jorgensen" Hall (HTML) (CC BY-NC-ND)
- Build Your Own Lisp - Daniel Holden
- Build Your Own Redis with C/C++ - build-your-own.org (HTML) ( 🚧 in process)
- C Elements of Style - Steve Oualline
- C for Python Programmers - Carl Burch
- C Handbook - Flavio Copes (HTML, PDF)
- C Internals - Rajeev Kumar (HTML)
- C Notes for Professionals - Compiled from StackOverflow Documentation (PDF)
- C Programming - Wikibooks
- C Programming Boot Camp - Paul Gribble
- C Programming Tutorial - Tutorials Point (HTML, PDF)
- Coursebook - B. Venkatesh, L. Angrave, et al.
- Deep C
- Essential C - Nick Parlante (PDF)
- Essential C - Krzysztof Kowalczyk, StackOverflow Contributors
- Everything you need to know about pointers in C - Peter Hosey
- Functional C (1997) - Pieter H. Hartel, Henk Muller (PDF)
- Hashing - Prakash Hegade
- Introduction to Programming and Data Structures in C - CodeAhoy (HTML)
- Learn to Code With C - The MagPi Essentials (PDF)
- Learning GNU C - Ciaran O’Riordan (PDF)
- Let us C - Yashavant Kanetkar (PDF)
- Modeling with Data - Ben Klemens (PDF)
- Modern C - Jens Gustedt (PDF) (CC BY-NC-ND)
- Object-Oriented Programming With ANSI-C - Axel-Tobias Schreiner (PDF)
- Programming in C - Bharat Kinariwala & Tep Dobry
- Programming in C - Kishori Mundargi
- Structures and C - Prakash Hegade
- The Basics of C Programming - Marshall Brain (PDF)
- The C book - Mike Banahan, Declan Brady, Mark Doran (PDF, HTML)
- The C Programming Language Handbook - Flavio Copes (PDF, EPUB, Kindle) (email address requested)
- The Current C Programming Language Standard – ISO/IEC 9899:2018 (C17/C18), Draft - Open Standards Org - www.open-std.org (PDF) ( 🗃️ archived)
- The GNU C Programming Tutorial - Mark Burgess, Ron Hale-Evans (PDF)
- The GNU C Reference Manual - Trevis Rothwell, James Youngman (HTML) (PDF)
- The little book about OS development - Erik Helin, Adam Renberg
- The New C Standard - An Economic and Cultural commentary (2009) - Derek M. Jones (PDF)
- TONC GBA Programming - Game Boy Advance Development
C++
- A Complete Guide to Standard C++ Algorithms - Šimon Tóth (PDF, LaTeX) (CC BY-NC-SA) ( 🚧 in process)
- A Modular Structured Approach using C++ - Kenneth Leroy Busbee (PDF) (CC BY)
- An Introduction to the USA Computing Olympiad, C++ Edition - Darren Yao (PDF)
- C++ Annotations - Frank B. Brokken (HTML, PDF)
- C++ Coding Standard - Todd Hoff (HTML, PDF)
- C++ Core Guidelines -
edt.:Bjarne Stroustrup, Herb Sutter- C++ For Programmers - JT Kalnay (PDF)
- C++ GUI Programming With Qt 3 - Jasmin Blanchette, Mark Summerfield (PDF)
- C++ Language (HTML)
- C++ Notes for Professionals - Compiled from StackOverflow Documentation (PDF) (CC BY-SA)
- C++ Programming - Panic, et al.
- C++ Programming: Code patterns design - WikiBooks (HTML)
- C++ Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- C++ Tricks
- C++ Tutorial - Alex Allain
- CS106X Programming Abstractions in C++
- Elements of Programming - Alexander Stepanov, Paul McJones (PDF)
- Essential C++ - Krzysztof Kowalczyk, StackOverflow Contributors (CC BY-SA)
- Financial Numerical Recipes in C++ - Bernt Arne Ødegaard (PDF)
- Fundamentals of C++ Programming - Richard L. Halterman (PDF) ( 🗃️ archived)
- Game Programming Patterns (HTML)
- Google's C++ Style Guide
- Hands-On System Programming with C++ - Rian Quinn (Packt account required)
- How to make an Operating System - Samy Pesse
- How To Think Like a Computer Scientist: C++ Version - Allen B. Downey
- Introduction to Design Patterns in C++ with Qt 4 - Alan Ezust, Paul Ezust (PDF)
- Joint Strike Fighter, C++ Coding Standards - Bjarne Stroustrup (PDF)
- Learn C++ Programming Language - Tutorials Point (PDF)
- LearnCpp.com (HTML)
- Learning C++ eBook - Compiled from StackOverflow Documentation (PDF) (CC BY-SA)
- Matters Computational: Ideas, Algorithms, Source Code - Jorg Arndt (PDF)
- Modern C++ Tutorial: C++11/14/17/20 On the Fly - Changkun Ou (PDF) (CC BY-NC-ND)
- More C++ Idioms - Sumant Tambe, et al. (WikiBooks)
- Open Data Structures (In C++) - Pat Morin (PDF) (CC BY)
- Programming Fundamentals - A Modular Structured Approach using C++ - Kenneth Leroy Busbee (PDF)
- Software Design Using C++ - Br. David Carlson, Br. Isidore Minerd
- Software optimization resources - Agner Fog
- The Boost C++ libraries - Boris Schäling (HTML) (CC BY-NC-ND)
- The Rook's Guide to C++ - Jeremy Hansen (PDF)
- The Ultimate Question of Programming, Refactoring, and Everything
- Think C++: How To Think Like a Computer Scientist - Allen B. Downey (PDF)
- Thinking in C++, Second Edition, Vol. 1. - Bruce Eckel (Vol. 2)
- Working Draft, Standard for Programming Language C++, 2021 Revision - Thomas Köppe (PDF) ( 🚧 in process)
2025-10-07 Heap based scheme machine. · GitHub { gist.github.com }
as a single C file
2025-09-27 Jacob Sorber - YouTube { www.youtube.com }
2025-09-27 Sean Barrett - YouTube { www.youtube.com }
2025-09-05 Memory is slow, Disk is fast - Part 2 { www.bitflux.ai }
Sourcing data directly from disk IS faster than caching in memory. I brought receipts. Because hardware got wider but not faster, the old methods don't get you there. You need new tools to use what is scaling and avoid what isn't.
The article benchmarks different ways of scanning a 50 GB dataset and shows that a carefully pipelined disk I/O path can outperform naive in-memory access when using mmap and the page cache. It highlights how modern hardware favors bandwidth scaling over latency improvements, making streaming, batching, and overlapping computation with I/O essential for high throughput.
Key Takeaways:
- In tests, mmap with page cache delivered 3.71 GB/s, SIMD unrolled loops on cached data 5.51 GB/s, disk I/O with io_uring 5.81 GB/s, and preallocated in-RAM reads 7.90 GB/s. Disk streaming with io_uring outperformed naive cached-RAM paths.
- mmap overhead from page faults makes it slower than reading into preallocated buffers, even when data is in RAM.
- io_uring enables deep queues, batched async I/O, and overlap of compute and fetch, making it ideal for streaming workloads.
- Modern hardware has flat latency but rapidly increasing bandwidth, so performance comes from streaming and batching, not random fine-grained access.
- Proper tuning matters: high queue depth, multiple workers, 16 KB aligned buffers, NUMA pinning, and RAID0 across SSDs all improved throughput.
- Profiling showed that cached-RAM scans were compute-limited until vectorization was optimized; memory was not the bottleneck.
- With multiple SSDs and DMA-to-cache features, disk throughput can approach or exceed naive in-memory scans, making out-of-core processing viable.
- Best practices: build async pipelines, profile compute loops, use aligned preallocated buffers, disable unnecessary FS features, and pin workloads to NUMA domains.
- Key advice: do not assume RAM is always faster; measure, profile, and design for streaming pipelines.
2025-10-10 ashtonjamesd/lavandula: A fast, lightweight web framework in C for building modern web applications { github.com }
2025-10-10 Show HN: I built a web framework in C | Hacker News { news.ycombinator.com }
faxmeyourcode 14 hours ago | next [–]
This is some of the cleanest, modern looking, beautiful C code I've seen in a while. I know it's not the kernel, and there's probably good reasons for lots of #ifdef conditionals, random underscored types, etc in bigger projects, but this is actually a great learning piece to teach folks the beauty of C.
I've also never seen tests written this way in C. Great work.
C was the first programming language I learned when I was still in middle/high school, raising the family PC out of the grave by installing free software - which I learned was mostly built in C. I never had many options for coursework in compsci until I was in college, where we did data structures and algorithms in C++, so I had a leg up as I'd already understood pointers. :-)
Happy to see C appreciated for what it is, a very clean and nice/simple language if you stay away from some of the nuts and bolts. Of course, the accessibility of the underlying nuts and bolts is one of the reasons for using C, so there's a balance.
2025-10-10 Love C, Hate C: Web Framework Memory Problems { alew.is }
line [1] takes Content-Length off the http packet. This is a non validated value basically straight from the socket. line [2] allocates based on that size. Line [3] copies data into that buffer based on that size. But it's copying out of a buffer of any size. So passing a
Content-LengthLarger than therequestsent in will start copying heap data into theparser.request.body.Another interesting choice in this project is to make lengths signed:
😁 Fun / Retro
2025-11-15 DOOMscroll — The Game { gisnep.com }
2025-11-04 When Stick Figures Fought - by Animation Obsessive Staff { animationobsessive.substack.com }
2025-10-27 DOSBox SVN, CPU speed: 3000 cycles, Frameskip 0, Program: MARIO { www.myabandonware.com }
2025-09-29 I'm Not a Robot { neal.fun }
This is a game!
2025-09-29 MitchIvin XP { mitchivin.com }
💖 Inspiration!
2025-11-13 Visual Types { types.kitlangton.com } Typescript
Visual Types is an animated, semi-interactive TypeScript curriculum by Kit Langton that teaches the type system through strong visual metaphors and motion rather than walls of text. It presents itself as a "humble collection of semi-interactive TypeScript lessons", focusing on giving newcomers durable mental models for how types behave at compile time and how they relate to runtime values.
2025-11-02 raine/anki-llm: A CLI toolkit for bulk-processing and generating Anki flashcards with LLMs. { github.com }
A CLI toolkit for bulk-processing and generating Anki flashcards with LLMs.
2025-10-27 DeadStack / Technology { deadstack.net }
2025-10-26 ZzFX - Zuper Zmall Zound Zynth {killedbyapixel.github.io}
2025-10-19 Notepad.exe - Native macOS Code Editor for Swift & Python { notepadexe.com }
2025-10-11 BreadOnPenguins/scripts: my scripts! { github.com }
2025-10-10 mafik/keyer: Firmware & goodies for making a KEYER (one-handed chorded keyboard). { github.com }
I've built a tiny hand-held keyboard
2025-10-04 Fluid Glass { chiuhans111.github.io }
2025-09-29 Handy { handy.computer }
Handy is a free, open-source speech-to-text application that runs locally on your computer. It allows users to speak into any text field by pressing a keyboard shortcut, with the app instantly transcribing speech into text. Designed for accessibility, privacy, and simplicity, Handy ensures that transcription happens on-device without sending data to the cloud.
Handy is an open-source speech-to-text app that anyone can download, modify, and contribute to.
It works via a keyboard shortcut (push-to-talk) that lets users dictate text directly into any text field.
Users can customize key bindings and choose between push-to-hold or press-to-toggle transcription modes.
All transcription is processed locally, ensuring privacy since no voice data is sent to external servers.
The app emphasizes accessibility, making advanced speech tools available for free without a paywall.
2025-09-29 consumed.today { consumed.today }
2025-09-29 Learning Persian with Anki, ChatGPT and YouTube | Christian Jauvin { cjauvin.github.io }
The article by Christian Jauvin describes his personal journey of learning Persian (Farsi) using a combination of tools and strategies: Anki for spaced repetition, ChatGPT for clarification and reinforcement, and YouTube with browser extensions for immersive listening practice. He emphasizes creating personalized flashcards, integrating visual aids, leveraging dual subtitles, and repeating structured listening exercises to deepen both reading and auditory comprehension.Anki as the core tool: Building a continuous deck with grammar-focused phrases, often sourced from YouTube lessons, helps reinforce memory more effectively than single words.
Card variety matters: Using "basic" cards for reading practice and "basic and reversed" cards for translation fosters both recognition and recall skills.
Challenge of Persian script: Despite knowing the alphabet, different letter forms and the absence of vowels make reading slow and difficult, requiring consistent practice.
ChatGPT as a tutor: By pasting screenshots of flashcards into a ChatGPT project, Jauvin gets instant explanations and contextual clarifications, supporting faster knowledge consolidation.
Dual Subtitles extension: Watching Persian YouTube videos with synchronized English and Farsi subtitles provides both learning material for new cards and contextual understanding.
Tweaks for YouTube extension: Fine-grained playback control (1-second skips) aids focused listening and pronunciation practice.
Listening technique: Steps include slowing playback to 75%, reading subtitles first in English, listening carefully to Farsi, cross-checking with Farsi script, and repeating out loud.
Iterative repetition: Rewatching videos multiple times allows the learner to progress from partial recognition to real-time understanding, which feels both effective and motivating.
Immersion mindset: Jauvin stresses the importance of “feeling” comprehension, even when not every word is known, by aligning meaning and sound during active listening.
Practical and replicable system: The method combines accessible digital tools with structured repetition, offering a practical framework for self-directed language learners.
2025-09-29 UTF-8 Playground { utf8-playground.netlify.app }
2025-09-29 Why our website looks like an operating system - PostHog { posthog.com }
2025-09-29 Elements of Rust – Core Types and Traits { rustcurious.com }




















Visual Types is an animated, semi-interactive TypeScript curriculum by Kit Langton that teaches the type system through strong visual metaphors and motion rather than walls of text. It presents itself as a "humble collection of semi-interactive TypeScript lessons", focusing on giving newcomers durable mental models for how types behave at compile time and how they relate to runtime values.







Handy is a free, open-source speech-to-text application that runs locally on your computer. It allows users to speak into any text field by pressing a keyboard shortcut, with the app instantly transcribing speech into text. Designed for accessibility, privacy, and simplicity, Handy ensures that transcription happens on-device without sending data to the cloud.
The article by Christian Jauvin describes his personal journey of learning Persian (Farsi) using a combination of tools and strategies: Anki for spaced repetition, ChatGPT for clarification and reinforcement, and YouTube with browser extensions for immersive listening practice. He emphasizes creating personalized flashcards, integrating visual aids, leveraging dual subtitles, and repeating structured listening exercises to deepen both reading and auditory comprehension.Anki as the core tool: Building a continuous deck with grammar-focused phrases, often sourced from YouTube lessons, helps reinforce memory more effectively than single words.

