Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 49,211 posts.
The Kelly criterion: How to size bets (2019)
Let’s play a game. I have a coin that lands heads 60% of the time and tails 40% of the time. You have $25 and can bet on either side of the coin — every time you’re right you double your bet, and every time you are wrong you lose it.
Anatomy of a Scam
There is a lot of material about the not-so-nice VCs who take advantage of young and inexperienced founders. But the reverse also happens, founders that try to get money out of VCs for projects that have zero chance of every coming to fruit. Or worse still, founders that pretend to have something on the go when they…
How do HTTP servers figure out Content-Length?
Anyone who has implemented a simple HTTP 1.1 server can tell you that it is a really simple protocol. Basically, it's a text file that has some specific rules t…
Google has killed Android (the brand)
There are days where a trend you noticed becomes absolutely visible. Today is one of those days. I have seen the Android brand disappear o...
Skype 5 for Mac
A while back, when Skype's group videochat feature was still free, a friend of mine sent me a Skype message, asking me whether it was possible to do videochat with more than one person in Skype. "Sure," I replied, "you can do that, but you need to install the new Skype 5 beta." I sent her the link. A few minutes…
The woes of sanitizing SVGs
Scratch has a long history of SVG-related vulnerabilities. The source of these is that Scratch parses user-generated (ie. attacker-controlled) content into an <svg> element and appends it into the main document for various operations (eg. measuring SVG bounding box in a more reliable way than viewbox or width/height).
Why the world needs OpenStreetMap (2014)
Every time I tell someone about OpenStreetMap, they inevitably ask "Why not use Google Maps?". From a practical standpoint, it's a reasonable question, but ultimately this is not just a matter of practicality, but of what kind of society we want to live in. I discussed this topic in a 2008 talk on OpenStreetMap I gave…
Maddox on Link-Baiting Aggregation Sites
11 Sexy Girls with Star Wars tattoos you don't have the rights to publish
Diagnosing an Unusual WiFi Issue (2020)
Late last year, I started experiencing some unusual intermittent connection issues on my Desktop. In general, I had a stable connection with average latency; however, at (seemingly) random times throughout the week, I would start experiencing sudden 2000ms+ latency spikes every couple of seconds.
SQLite on Rails: The how and why of optimal performance
This is my personal site, where I write about Ruby, programming, and any of my varied fascinations.
Interactive examples for learning jq
Learn how to search, query, and modify JSON data with 25 interactive jq examples and explanations
Booting Linux in QEMU and Writing PID 1 in Go to Illustrate Kernel as Program
Most books and courses introduce Linux through shell commands, leaving the kernel as a mysterious black box doing magic behind the scenes. In this post, we will run some experiments to demystify it: the Linux kernel is just a binary that you can build and run.
Modernizing “less”
I have just spent an all-nighter doing something I didn't expect to do. I've " modernized " less (1). (That link is to the changeset.) ...
Installing Every Arch Package
Using algorithms and Julia to install as many packages as possible from the Arch Linux official repositories
Norton 360 Now Comes with a Cryptominer
Norton 360 , one of the most popular antivirus products on the market today, has installed a cryptocurrency mining program on its customers’ computers. Norton’s parent firm says the cloud-based service that activates the program and allows customers to profit from the scheme — in which the company keeps 15 percent of…
How hard can generating 1024-bit primes be?
On the one hand they are easy to explain, they are just numbers that have no factors other than one and themselves, but on the other hand they contain endless complexity. They show up in numerous places, ranging from mathematical concepts and conjectures to interesting looking visualizations and cryptography…
Container networking is simple (2020)
Begin with the basics to understand Docker and Kubernetes networking: learn how to create and interconnect Linux network namespaces using only command-line tools.
Are Aerospike Engines Better Than Traditional Rocket Engines?
Today we’re going to look at the history of aerospike engines, go over how nozzles work including things like overexpansion, underexpansion and even expansion ratios, we’ll look at the pros and cons of the aerospike, the physical limitations and problems, then we’ll compare the aerospike to some other traditional…
Simple sabotage for software (2023)
How to sabotage software productivity, in the style of CIA