Most cited
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 253 posts.
I almost failed to search a 37 GB text file in under 1 millisecond
... in which we check if your password has been compromised in many inconvenient ways, in a tale of destruction, obsession, and self-discovery.
Command-line tools for data science
Blog article by Jeroen Janssens. Sep 19, 2013. 21 min read. Data science is OSEMN (pronounced as awesome). That is, it involves Obtaining, Scrubbing, Exploring, Modelling, and iNterpreting data. As a data scientist, I spend quite a bit of time on the command-line, especially when there’s data to be obtained, scrubbed…
Modes, Medians and Means: A Unifying Perspective
Introduction / Warning Link to heading Any traditional introductory statistics course will teach students the definitions of modes, medians and means. But, because introductory courses can’t assume that students have much mathematical maturity, the close relationship between these three summary statistics can’t be…
The Marketing Behind MongoDB
Countless NoSQL databases competed to be the database of choice. MongoDB's marketing strategy helped it become the winner.
PostgreSQL community impact of 2nd Quadrant purchase
This blog is about my work on the Postgres open source database, and is published on Planet PostgreSQL. PgLife allows monitoring of all Postgres community activity.
Most Female and Male Occupations Since 1950
The shifting majorities of the sexes in the workplace.
I don't want to learn your query language (2018)
This is a bit of a rant but I really don't like software that invents its own query language. There's a trillion different ORMs out there. Another trillion databases with their own query language. Another trillion SaaS products where the only way to query is to learn some random query DSL they made up.
Reddit's database has only two tables
Steve Huffman talks about Reddit’s approach to data storage in a High Scalability post from 2010. I was surprised to learn that they only have two tables in their database.
ORM is an anti-pattern
ORM looks great early in a project but breaks down as complexity grows, forcing you to learn SQL anyway. Relations aren't objects. Either use NoSQL for object-like data or write a model layer with real SQL. ORM's abstraction is leaky, its efficiency poor, and the alternatives are better.
How RocksDB Works
Over the past years, the adoption of RocksDB increased dramatically. It became a standard for embeddable key-value stores.
AWS Elasticsearch: a fundamentally-flawed offering
I'm currently working on a logging project that was initially implemented using AWS Elasticsearch. Having worked with large-scale mainline Elasticsearch clusters for several years, I'm absolutely stunned at how poor Amazon's implementation is and I can't fathom why they're unable to fix or at least improve it. I…
Parallel Sequential Scan is Committed to PostgreSQL 9.6
I previously suggested that we might be able to get parallel sequential scan committed to PostgreSQL 9.5. That did not happen. However, I...
Mamba Explained: The State Space Model Taking On Transformers
The State Space Model taking on Transformers
Redis Streams and the Unified Log
Building a log-based architecture that’s fast, efficient, and resilient on the new stream data structure in Redis.
What are embeddings?
A deep-dive into machine learning embeddings.
SQLite as a Document Database (2020)
However recently it added a killer feature: generated columns . (This was added in 3.31.0, released 2020-01-22.)
Gzip beats BERT? Part 2: dataset issues, improved speed, and results
Summary : Update to my last post analyzing the gzip+knn paper. Some of the datasets have heavily contaminated train/test tests. I show some ways to significantly speed-up the gzip method. I present more results of my "fair" reimplementation .
Processing 40TB of code from 10M projects with a dedicated server and Go
The command line tool I created Sloc Cloc and Code (scc) (which is now modified and maintained by many other excellent people) counts lines of code, comments and makes a complexity estimate for files …
Data Science from Scratch: First Principles with Python
I am super-excited to announce that the book I've been working on for more than the last year, Data Science from Scratch: First Principles with Python is finally available! (buy from O'Reilly, use...
Spending $5k to learn how database indexes work
At Superwall we’re building an SDK to help App Developers increase their revenue by showing the right offer to the right person at the right time. Follow me on twitter for little tips and articles like this one.
ORM is an anti-pattern
ORM looks great early in a project but breaks down as complexity grows, forcing you to learn SQL anyway. Relations aren't objects. Either use NoSQL for object-like data or write a model layer with real SQL. ORM's abstraction is leaky, its efficiency poor, and the alternatives are better.
PgBouncer is useful, important, and fraught with peril
Updated 2024-09-17 to reflect updated PgBouncer support for protocol-level prepared statements 🐘 To start, I want to say that I’m appreciative that PgBouncer exists and the work its open source maintainers put into it. I also love working with PostgreSQL, and I’m thankful for the incredible amount of work and…
Datasette’s new JSON write API: The first alpha of Datasette 1.0
This week I published the first alpha release of Datasette 1.0, with a significant new feature: Datasette core now includes a JSON API for creating and dropping tables and inserting, …
NoSQL Data Modeling Techniques
NoSQL databases are often compared by various non-functional criteria, such as scalability, performance, and consistency. This aspect of NoSQL is well-studied both in practice and theory because sp…
Literate SQL
Complex queries are hard to read. Literate SQL is about writing queries that are as easy to read as a good novel.
Scaling Postgres with Read Replicas and Using WAL to Counter Stale Reads
Scaling out operation with read replicas and avoiding the downside of stale reads by observing replication progress.