In one of his presentations, Alexey Milovidov, the author of ClickHouse, talks about what makes it so fast. The we have 17 different algorithms for GROUP BY. Best one is selected for your query part caught my attention. I decided to dig deeper and find out what are these 17 …
read moreOther articles
Making changes to a large C++ project
I recently worked on adding a DDSketch support in ClickHouse. ClickHouse codebase is large; larger than any codebase I've worked with before. It's written in C++, a language I haven't used since college. My experience with C++ was limited to writing small programs for timed programming contests. Having to work …
read moreSay no to debugger
Last Friday, I pair-programmed with my co-worker to debug an issue. While debugging, it came up that I don't use a debugger. I didn't have a good answer When they asked me why. I have been thinking about it since then, and I think I have an answer now. Broadly …
read moreWriting a JSON Schema generator for OpenTelemetry Collector
Have you ever wondered how text editing tools like VSCode, IntelliJ, and Vim know the JSON or YAML file structure you are editing and how it provides auto-completion, field descriptions, and (basic) validation? The answer is Language Server Protocol (LSP). LSP is a protocol that allows the editor to communicate …
read moreThreading and forking
Occasionally, you encounter an issue that teaches or makes you revisit the fundamentals. This is one such issue which is worth sharing. Until recently, I was heavily involved in a Python project that helps developers to instrument their code and troubleshoot performance issues. The primary audience1 of this library …
read moreLurker to maintainer pipeline
Microservices1 were a zero-interest rate phenomenon (ZIRP). This was the time when it was controversial not to do microservices. Every team had a few engineers who would passionately advocate for moving to this new cool architectural pattern in the town that solves all of your problems, technical or otherwise …
read moreWorking at a startup