Most cited
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 55 posts.
Functors, applicatives, and monads in pictures
Aditya Bhargava's personal blog.
research!rsc: Off to the Races
Go is defined to be a safe language. Indices into array or string references must be in bounds; there is no way to reinterpret the bits of one type as another, no way to conjure a pointer out of thin air; and there is no way to release memory, so no chance of “ dangling pointer ” errors and the associated memory…
JavaScript Isn't Scheme
It seems like I can’t spend five minutes on reddit these days without someone playing the JS-is-Scheme is card . I see everything from the innocuous, “JavaScript has a lot in common with Scheme”, all the way up to, “JavaScript is basically Scheme.” This is basically crazy. Or, at least it has a lot in common with…
Defer, Panic, and Recover
An introduction to the Go's defer, panic, and recover control flow mechanisms.
The Original Hacker's Dictionary (1988)
[This file, jargon.txt, was maintained on MIT-AI for many years, before being published by Guy Steele and others as the Hacker's Dictionary. Many years after the original book went out of print, Eric Raymond picked it up, updated it and republished it as the New Hacker's Dictionary. Unfortunately, in the process, he…
Baby's First Garbage Collector
When I get stressed out and have too much to do, I have this paradoxical reaction where I escape from that by coming up with another thing to do. Usually it’s a tiny self-contained program that I can write and finish.
Strings, bytes, runes and characters in Go
How strings work in Go, and how to use them.
PEP 373 – Python 2.7 Release Schedule
This document describes the development and release schedule for Python 2.7.
Why Asm.js Bothers Me
Please note that this post expresses my personal opinion and mine alone, not those of my employer or my teammates.
My Clojure Workflow, Reloaded
This is a companion post to my discussion with Craig Andera on Relevance Podcast Episode 32 and my Clojure/West talk Clojure in the Large. I've talked about ...
Introducing the Go Race Detector
How and why to use the Go race detector to improve your programs.
Parsing expressions by precedence climbing
I've written previously about the problem recursive descent parsers have with expressions, especially when the language has multiple levels of operator precedence.
Error handling and Go
An introduction to Go errors.
Learn Haskell Fast and Hard
I really believe all developers should learn Haskell. I don’t think everyone needs to be super Haskell ninjas, but they should at least discover what Haskell has to offer. Learning Haskell opens your mind.
Porting to Python 3 Redux
Some updated tips for porting software to Python 3.
The Revel Web Framework for Go
Edit, save, and refresh. Revel compiles your code and templates for you, so you don't miss a beat. Code doesn't compile? It gives you a helpful description . Run-time code panic? Revel has you covered .
Clojure from the ground up
This guide aims to introduce newcomers and experienced programmers alike to the beauty of functional programming, starting with the simplest building blocks of software. You’ll need a computer, basic proficiency in the command line, a text editor, and an internet connection. By the end of this series, you’ll have a…
Deconstructing K&R C (2010)
Learn C The Hard Way (LCTHW) is a practical book teaching real world useful C using the same proven Learn The Hard Way method. LCTHW teaches real robust C coding and defensive programming tactics on real hardware rather than abstract machines and pedantic theory. The book emphasizes breaking your code on purpose, and…
Effective Scala
Scala is one of the main application programming languages used at Twitter. Much of our infrastructure is written in Scala and we have several large libraries supporting our use. While highly effective, Scala is also a large language, and our experiences have taught us to practice great care in its application. What…
Ruins of forgotten empires: APL languages
One of the problems with modern computer technology: programmers don’t learn from the great masters. There is such a thing as a Beethoven or Mozart of software design. Modern programmers seem…