Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 1,895 posts.
Compiling Julia for NVIDIA GPUs
For the few last months, I have been working on CUDA support for the Julia language . It is now possible to write kernels in Julia and without much hassle execute them on a NVIDIA GPU, but there are still many limitations.
Linguistic Harbingers of Betrayal
In life, love, war, and planetary colonization, even long-lasting friendships can end if one betrays the other's trust for his own gain. We studied the language of betrayal by observing players of Diplomacy , the game that ruins friendships . In this very popular game, players can form alliances and try to conquer the…
Graphics Analysis of an NES Game's Select Menu
In Star Versus’s two player mode, the first thing players see is a menu to select their ships, handicaps, and arenas. Although straight forward in concept, this menu actually maxes out the NES’s graphics in multiple ways. Specifically, it uses each available palette, requires all 64 sprites, and places 8 sprites onto…
Gradual typing for Clojure
Today’s programming landscape is dynamic and polyglot . Interlanguage interoperability is a mainstay — it’s almost unavoidable that a given piece of code will be used without the knowledge of the original author.
Sylph: the programming language I want
Creating a programming language is apparently all the rage these days, and it’s got me thinking about what I would really like to see in one. I’m starting to suspect the things I want are either impossible or mutually incompatible, so I’d better write them down and let smarter people tell me why I can’t have…
What will be the legacy of Go?
In October this year I had the privilege of speaking at the GothamGo conference in New York City. As I talk quite softly, and there were a few problems with the recording, I decided to write up my slide notes and present them here.
Java 7 changed the structure of String
Java 7 quietly changed the structure of String. Instead of an offset and a count, the String now only contained a char[]. This had some harmful effects for those expecting substring() would always share the underlying char[].
Cycling Lessons Learned from Amsterdam
Cycling Lessons Learned From Amsterdam That No One Talks About This post originally appears on Spacing Vancouver. By Darren Proulx and Samuel Baron I recently had the honour of visiting Amsterdam. …
Notes on Red Star OS 3.0
How to navigate North Korea's home-grown Linux distribution.
Service-Disoriented Architecture
“You can have a second computer once you’ve shown you know how to use the first one.” -Paul Barham The first rule of distributed systems is don’t distribute your system until you have an observable reason to. Teams break this rule on the regular. People have been talking about service-oriented architecture for a long…
Mastering Git submodules
Hair-pulling. Helpless rage. Clusterfucks. They leave much to be desired, yet sometimes are the right tool for the job. Let’s tame them!
The Curious Case of Linux Containers
The next person that says “Linux Containers will solve all our problems” is going to get taken out back and shot. This is a surefire way to…
Quantifying the Clickbait and Linkbait in BuzzFeed Article Titles
You probably do not know that the 3 most interesting things I found will blow your mind.
Vue.js: 2015 in Review
The year of 2015 has been a pretty crazy ride for Vue.js. The project has grown way beyond my expectations, so I’d like to take a look back and put things in perspective. StatsGeneral NPM downloads:
Writing Friendlier Clojure
I love the Clojure language, but I don’t think there’s any use pretending that the combination of expressiveness, power, and repl-driven development can result in some staggeringly dense code. Everyone that writes Clojure is guilty of this at one time or another; you start with the core of your function, evaluate it…
F*dging up a Racket
Source code can be found at: https://github.com/dyoo/brainfudge . The latest version of this document lives in http://hashcollision.org/brainfudge .
Grepping logs is still terrible
The other day, I wrote a controversial piece about why grepping logs is terrible , the reactions were interesting. I've got some great feedback (thanks!), and there were a lot of hostility too. I've been called incompetent, lazy, stupid and a systemd-fanboy and various other things. By people who didn't read past the…
GNU make insanity: finding the value of the -j parameter
The other day at work a colleague posed the seemingly innocent question "Can I find out the value of the GNU make -j parameter inside a Ma...