Best of 2013

The blog posts Hacker News loved most in 2013. 857 posts.

Software Engineering
691

Understanding the FFT Algorithm

The Fast Fourier Transform (FFT) is one of the most important algorithms in signal processing and data analysis. I've used it for years, but having no formal computer science background, It occurred to me this week that I've never thought to ask how the FFT computes the discrete Fourier transform so quickly. I dusted…

703

Obscure C++ Features

This page is a collection of obscure C++ features, gathered over the years as I've explored different corners of the language. C++ is very big and I'm always learning more about it. Hopefully you'll learn something from this page even if you already know C++ pretty well. The features below are roughly ordered from…

709

Exploiting a Go Binary

Earlier this year, tylerni7 showed us a proof of concept for a 32 bit Go exploit using this issue . geohot and I had a wager over who could get the first remote code execution on play.golang.org : he won, but just barely ;-). Props also to ricky for helping to find the underlying cause/writing the patch. Here is a…

710

Coding with gumption

The first and only mention of Gumption Theory in modern writing is found towards the end of Robert Pirsig’s Zen and the Art of Motorcycle Maintenance. The author sets out a plain and uncomplicated approach to attaining and maintaining the state of mind required to repair a motorcycle. It takes about 20 pages. And the…

716

On Scala

This is one of a series of posts on languages, you can read more about that here . Scala's blending of programming paradigms in a single language is impressive. It's fun to write code in and is a good language for leaning into the functional plus static typing paradigm. As much as I like

720

Gotk3: GTK3 the Go way

Today marks the first release of gotk3, Conformal’s own GTK3 bindings for Go (available on Github here ). These bindings were developed out of a frustration with other GTK bindings for Go either using ancient versions of GTK, not handling memory in a way a Go developer would expect, or simply not working at all on our…