Lock Contention
Recently, I revisited Resolving a year-long ClickHouse lock contention post and spoke about it at C++ Russia 2025 conference.
Recently, I revisited Resolving a year-long ClickHouse lock contention post and spoke about it at C++ Russia 2025 conference.
Programming languages typically make a distinction between normal program actions and erroneous actions. For Turing-complete languages we cannot reliably decide offline whether a program has the potential to execute an error; we have to just run it and see.
When Staff+ engineers transition from a team lead to an org-level lead, the increased ambiguity often leads to feeling lost and overwhelmed. This article explores the "Performance Cliff" phenomenon and offers practical strategies to adapt, stay organized, and redefine success in a leadership role.
What would happen if we didn't use TCP or UDP?
Visualize Ownership and Lifetimes in Rust. Contribute to cordx56/rustowl development by creating an account on GitHub.
An explanation of what algebraic effects are and why they are useful for managing side effects
I figured out a really simple pattern for experimenting with new Python packages today:
tl;dr: yes, although I found an approach without ZWJ. In fact, you can encode data in any unicode character. This sentence has a hidden messageσ σ σ σ σ ©σ σ σ ©σ σ ₯σ σ σ σ ₯σ σ σ σ €σ σ σ σ σ σ σ σ σ σ σ σ σ £σ £σ σ σ σ σ σ σ σ €σ σ σ σ €σ σ ¨σ €σ . (Try pasting it into this decoder)
Experiments and Tailored Tooling for High Fidelity Web Archives.
Jujutsu (jj), a new version control system written in Rust, has popped up on my radar a few times over the past year. Looked interesting based on a cursory look, but being actually pretty satisfied with Git, and not having major problems with it, I havenβt checked it out. That is, until last week, when I finally decided to give it a go! I dived into a couple blog posts for a few of hours, and surprisingly (noting that weβre talking about a VCS) I found myself enjoying it a lot, seeing the consistent design, and overall simplicity it managed to achieve.
CedarDB is a relational-first database that supports all your workloads, from transactional to analytical to graph, accessible through PostgreSQL's tools and SQL dialect.
An interesting twist in my recent usage of SQLite was the fact that I noticed my research scripts and the database intertwine more. SQLite is unique in that it really lives in-process, unlike standalone database servers. There is a feature to that which does not get used very frequently, but can be indispensable in some situations. By the way, the talk about the system that made me me to explore SQLite in anger can now be seen here. Normally it is your Ruby (or Python, or Go, or whatever) program which calls SQLite to make it βdo stuffβ. Most calls will be mapped to a native call like sqlite3_exec() which will do βSQLite thingsβ and return you a result, converted into data structures accessible to your runtime. But there is another possible direction here - SQLite can actually call your code instead.
Everything you need to know about query planning can be understood from this query: SELECT * FROM xy WHERE y = 3 ORDER BY x Imagine we have two indexes, one...
These sound like dismissals or absurdities from the outside, but once you learn what they really mean, they take on a new light. In this article, I want to explain the third. (See the appendix if you are curious about the first two.)
In this tutorial, I will teach you how to write your own virtual machine (VM) that can run assembly language programs, such as my friendβs 2048 or my Roguelike. If you know how to program, but would like to gain a deeper understanding of what is going on inside a computer and better understand how programming languages work, then this project is for you. Writing your own VM may sound a little scary, but I promise that you will find it to be surprisingly simple and enlightening.