Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 49,235 posts.
My Billion Dollar Mistake
At my last company, KISSmetrics, I made a mistake that I truly believe lost me a billion dollar opportunity. It’s not something I’m proud of, and it’s one of the main reasons I’m now obsessed with building products the right way. I wrote the painful details of exactly what happened so you don’t have to make the same…
Deprecated Linux networking commands and their replacements
In my article detailing the command line utilities available for configuring and troubleshooting network properties on Windows and Linux, I mentioned some Linux tools that, while still included and…
CM0 – A new Raspberry Pi you can't buy
This little postage stamp is actually a full Raspberry Pi Zero 2, complete with eMMC storage and WiFi. But you can't get one. Well, not unless you buy the CM0NANO development board from EDAtec, or you live in China. This little guy doesn't have an HDMI port, Ethernet, or even USB. It's a special version of the…
Tractor
The electric tractor is finished! I have been working on this on and off for about 6 months. It is a toy for children (and me) to drive around the garden.
Comprehensive Guide on Data Visualization with Pandas
Visualization has always been challenging task but with the advent of dataframe plot() function it is quite easy to create decent looking plots with your dataframe, The **plot** method on Series and DataFrame is just a simple wrapper around Matplotlib plt.plot() and you really don’t have to write those long matplotlib…
Not Your Problem
Struggling to complete your game? Discover practical strategies to overcome distractions, stay focused, and manage your game development project effectively.
Decode Like It's 1999: MPEG-1 Decoder in JavaScript
A few years ago I started to work on an MPEG1 Video decoder, completely written in JavaScript. Now, I finally found the time to clean up the library, improve its performance, make it more error resilient and modular and add an MP2 Audio decoder and MPEG-TS demuxer. This makes this library not just an MPEG decoder, but…
Distributed Erlang
I'm a two hit wonder
PostgreSQL, Memory and the Cloud
This post explains how Linux memory overcommit and OOM-killer behavior can turn a single runaway query into a full PostgreSQL crash, and why many managed cloud database services fail to disable overcommit the way self-hosted PostgreSQL recommends.
Typical implementations of payment processing and related security issues
Thanks to @yarbabin for the logo Electronic payment systems have existed on the Internet for a long time, and some bugs in them are twenty years old. We’ve found critical vulnerabilities allowing us…
Adding row polymorphism to Damas-Hindley-Milner
Intro to HM
Close the Washington Monument
Securing the Washington Monument from terrorism has turned out to be a surprisingly difficult job. The concrete fence around the building protects it from attacking vehicles, but there’s no visually appealing way to house the airport-level security mechanisms the National Park Service has decided are a must for…
Experiments in Constraint-Based Graphic Design
Basalt is system for graphic design that allows a designer to think in terms of relationships between objects, and it makes it easy to build and reuse abstractions.
Adding C-style for loops to Python (2022)
Thousands of cam girls live right now from Colombia, the US, Europe and Asia. Watch free with no signup, and see when each model is usually online.
Beginner's Guide to Wi-fi Interception
You know how security people get all uppity about SSL this and SSL that? Stuff like posting creds over HTTPS isn’t enough, you have to load login forms over HTTPS as well and then you can’t send auth cookies over HTTP because they’ll get sniffed and sessions
Happy 10th Birthday, Sidekiq
It’s hard for me to believe these words but I pushed Sidekiq’s first commit on Jan 16th, 2012. Ten years ago. The public announcement. One month later. One quarter later. Some context for those new to this blog: Sidekiq is the most popular background job system for the Ruby programming language. Every application has…
Font Rendering from First Principles
Learn what it takes to build a font renderer from scratch in C.
Startup Competitive Advantages that Work
It's not a question of if someone copies your business idea, it's when.
SPDY: What I Like About You
I've been working on implementing SPDY as an experiment in Firefox lately. We'll have to see how it plays out, but so far I really like it. ...