Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 49,217 posts.
Using Waifu2x to Upscale Japanese Prints
In my spare time I’ve been working on a database of Japanese prints for a little over 3.5 years now. I’m fully aware that I’ve never actually written about this, personally very important, project on my blog — until now. Unfortunately this isn’t a post explaining that project. I do still hope to write more about the…
My Startup School Europe talk: The Technology
Note: This is the talk I gave at Startup School Europe, which was held last Saturday in London. You've heard a lot of great startup advi...
Building video chat into my personal website using WebRTC, WebSockets, and Go
Recently I've become more and more interested in how WebRTC works, so a few weeks ago I decided to add a page to my website where I could set up peer-to-peer video chats. There are plenty of libraries and services out there to make this extremely easy, but knowing that WebRTC is now well supported natively across…
When Parallel: Pull, Don't Push
I’ve noticed a small pattern across a few of my projects where I had vectorized and parallelized some code. The original algorithm had a “push” approach, the optimized version instead took a “pull” approach. In this article I’ll describe what I mean, though it’s mostly just so I can show off some pretty videos…
How a Technical Co-Founder Spends His Time
From August 2014 to December 2015, I manually tracked all of my work time, minute-by-minute, and analysed the data in R.
16×16 Pixel Art Tutorial
Apparently pixel art is cool once again, and if you are reading this blog, chances are, you like pixel art. As my first actual article on the site, I thought I’d make a little tutorial on how to pixel your own 16*16 sprite, that you can use as a favicon for your website or game. There are many ways to go about pushing…
A Virtual Machine
Magicians protect their secrets not because the secrets are large and important, but because they are so small and trivial. The wonderful effects created on stage are often the result of a secret so absurd that the magician would be embarrassed to admit that that was how it was done.
Microsoft, Please Stop This Madness
Microsoft have released a beta of Internet Explorer 9. This much is good, they’re back in the game. The engine supports modern standards—and for the first time Internet Explorer now renders this website (which has been HTML5 since early 2008 ).
Avast Antivirus Remote Stack Buffer Overflow with Magic Numbers
Blog about anti-virus software vulnerabilities.
Why 451?
Today, the IESG approved publication of “An HTTP Status Code to Report Legal Obstacles”. It’ll be an RFC after some work by the RFC Editor and a few more process bits, but effectively you can start using it now.
Reverse engineering the Sega Channel game image file format
Sega Channel was a games-on-demand service that gave cable subscribers access to a library of around 50 Sega Genesis games per month in exchange for a monthly fee (typically $10-$15/month depending on the cable provider). It operated between June 1994 (with a nationwide rollout in December 1994) and June 1998. Cable…
Demangling C++ Symbols in Rust
I wrote a Rust crate to demangle C++ symbols: cpp_demangle. Find iton crates.io and github.
Mistakes we made adopting event sourcing and how we recovered
Good judgement is the result of experience ... Experience is the result of bad judgement. — Fred Brooks
How a computer boots up
The previous post described [motherboards and the memory map] memory-map in Intel computers to set the scene for the initial phases of boot. Booting is an involved, hacky, multi-stage affair - fun st
Being Present: You have ten to twelve years to connect with your kids
I've recently come back to yoga after a five year hiatus. I didn't realize how much my body missed it. I stopped doing yoga because I couldn't handle the mental aspect of the practice. I struggle with being present mentally for 90 minutes. In fact, I find it impossible. Even as I've come back to […]
Writing for Engineers
This article is available as Korean- (thanks to longfin ) and Chineese- (thanks to webup ) translation.
Navier-Stokes fluid simulation explained with Godot game engine
When I first stumbled upon fluid simulations in game dev I was amazed on how good the effect could be. I really wan...
Viewing Matrices and Probability as Graphs
Today I'd like to share an idea. It's a very simple idea. It's not fancy and it's certainly not new. In fact, I'm sure many of you have thought about it already. But if you haven't—and even if you have!—I hope you'll take a few minutes to enjoy it with me. Here's the idea: Every matrix corresponds to a graph. So…
Google Account Recovery Vulnerability
Global Main Authentication and Identification Library (GMAIL) was exposed to a security threat by Oren Hafif.
Crafting Painterly Shaders
A detailed essay on my research and process of building a shader to mimic paint, watercolor, and aquarelle by exploring various implementations of the Kuwahara image smoothing filter.