Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 2,470 posts.
“Side Hustle” as a Sign of the Apocalypse
“Side hustle,” “mom-tech,” and “the sharing economy” are covering up something sinister
O'Reilly's Decision and Its DRM Implication
On Wednesday, I got mail from Laura Baldwin, President of O'Reilly, announcing that "as of today, we are discontinuing fulfillment of indiv...
Crazy Eddie Fraud
The Crazy Eddie fraud may appear smaller and gentler than the massive billion-dollar frauds exposed in recent times
An adventure in trying to optimize math.Atan2 with Go assembly
This is a recount of an adventure where I experimented with some Go assembly coding in trying to optimize the math.Atan2 function.
Designing a Lock-free, Wait-free Hash Map
Wait-free algorithms attract vast interest and are an area of intense research, the motivation being that true lock-free algorithms and data structures provide great …
Lost Generation: The Relay Computers
Our previous installment described the rise of automatic telephone switches, and of the complex relay circuits to control them. Now we shall see how scientists and engineers developed such relay c…
What is Hindley-Milner and why is it cool? (2008)
Anyone who has taken even a cursory glance at the vast menagerie of programming languages should have at least heard the phrase "Hindley-Milner". F#, one of the most promising languages ever to emerge from the forbidding depths of Microsoft Research, makes use of this mysterious algorithm, as do Haskell, OCaml and ML…
Without Flash the current web tech stack might look different
Google trends, Apple, Google Chrome and plenty of developers put a cross on Flash. In my opinion without Flash the current web tech stack might look different. Credentials I wrote my first line of code in ActionScript 2.0 it was 13 years ago and it was streamlined with the style of web. Big boom of
Why our outdated brains are making us unhappy
Why your outdated brain is making you unhappy and how to hack it.
Project Jigsaw: Complete
It’s been a long road, but at last the puzzle is complete: Today we delivered Project Jigsaw for general use, as part of JDK 9 .
In love with the BBC micro:bit
I finally got my hands on the micro:bit , the BBC ’s new educational computer and spiritual successor to the legendary BBC Micro , and I’m absolutely in love with its potential as a platform for learning how to code.
How Unix erases things when you type a backspace while entering text
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
Avoiding Startup Tarpits
Startup growth can be painfully slow. So slow that many entrepreneurs just give up and quit when their launch doesn’t go as expected. When…
System programming in Rust: beyond safety
System programming in Rust: beyond safety Balasubramanian et al., HotOS’17 Balasubramanian et al. want us to switch all of our systems programming over to Rust. This paper sets out the case. …
Crypto Tokens: A Breakthrough in Open Network Design
It is a wonderful accident of history that the internet and web were created as open platforms that anyone — users, developers…
Playing with Wolfram Playing Cards
A few weeks ago, I knocked my favorite mug off the counter and it shattered. RIP:
A Detailed Elliptic Curve Cryptography Tutorial
When adding two integers i and j of bitlength b, the result will be of bitlength b + 1 in the worst case. This means they can easily be naively added. If the result is larger or equal to F p one has only to subtract p from the result, i.e.:
Unexpected Consequences of Self-Driving Cars
Many new technologies have unexpected impacts on the physical or social world in which we live.
Brief thoughts on the “Google memo”
(I wrote this in reference to this memo and the ensuing uproar) First off, his argument had some flaws. For example, even if he was correct about personality differences between men and women being…
How I snatched 153k Ether after a bad Tinder date
Over the weekend, I did a lot of swiping right. I’ve never had a Tinder go this fast from match to agreeing on a date time this fast…
An epic treatise on scheduling, bug tracking, and triage
[Note 2017-12-29: the news.ycombinator.com discussion of this post is unusually useful. You may want to read it first.] [Note 2018-09-01:...
The Amazon Machine
Amazon is a machine to make a machine, and the machine it makes is more Amazon.
TLS 1.2 Session Tickets
Session Tickets, specified in RFC 5077 , are a technique to resume TLS sessions by storing key material encrypted on the clients. In TLS 1.2 they speed up the handshake from two to one round-trips.
Making a GTK Video Player with Haskell
Using Haskell, GTK+, GStreamer, xlib, and the haskell-gi bindings, we build a video player complete with seek and volume controls.