Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 21,844 posts.
Understanding JavaScript function invocation and "this"
Over the years, I've seen a lot of confusion about JavaScript function invocation. In particular, a lot of people have complained that the semantics of this in function invocations is confusing. In my opinion, a lot of this confusion is cleared up by understanding the core function invocation primitive,
Gevent For the Working Python Developer
The structure of this tutorial assumes an intermediate level knowledge of Python but not much else. No knowledge of concurrency is expected. The goal is to give you the tools you need to get going with gevent, help you tame your existing concurrency problems and start writing asynchronous applications today.
Implementing Levenshtein Automata
Thanks to Ken Hironaka for kindly taking a lot of time to read and fix countless errors in this blog post!
Reducing Go execution tracer overhead with frame pointer unwinding
The Go Execution Tracer (aka runtime/trace) was designed to achieve low enough overhead to be usable on “a server in production serving live traffic”. This is achieved by writing events into per-P buffers, using RDTSC for timestamps, and encoding into a relatively efficient binary format.
My process for building a feature
I’m maintaining a lot of different projects at the moment. I thought it would be useful to describe the process I use for adding a new feature to one of …
Dolphin Progress Report: February 2017
As most of you know, Dolphin was born a GameCube emulator. A lot of its core design and concepts are based around assumptions made that it would only be a GameCube emulator. And, as a GameCube Emulator, Dolphin performs admirably, with the ability to boot every single title and a large portion of the library having no…
Using Python to Encode Cassette Recordings for my Superboard II
See Part 3 to see real-time audio encoding/decoding used in conjunction with telnet.
OCaml 4.01 for iOS 8
The current OCamlXARM compiles by default for iOS 7.1, but using it for iOS 8 is not too difficult. The only thing that changes is the name of the SDK, which can be specified with the -ccopt option of ocamlopt.
Recognize Digits Using ML in Elixir
Machine learning allows you to solve once unimaginable problem. Elixir's support for machine learning through Nx and Axon let us do impressive thing while staying in our favorite language.
Papers I like (part 2)
Continued from part 1. Once I was about a thousand words into describing background for GEMM, it became pretty clear that it made more sense to group the numerical math papers into one post, so her…
Desperate Perl Hacker
I owe a whole lot to Perl. So does the practice of computing in general, and the construction of the Web in particular. Perl’s situation is not terribly happy; I wouldn’t go so far as to say “desperate”, but certainly these are not its glory days.
Go Data Structures: Interfaces (2009)
Go's interfaces—static, checked at compile time, dynamic when asked for—are, for me, the most exciting part of Go from a language design point of view. If I could export one feature of Go into other languages, it would be interfaces.
The impact of language choice on github projects
Although I spend a lot of my play-time fooling about with other languages, my professional and released code consists of Python, C, C++ and, alas, Javascript. I've lived in this tiny corner of the magic garden of modern software development for 10 years, and I'm itching to strike out in a different direction for my…
PyPy can now load and run CPython extension modules natively
PyPy is now able to load and run CPython extension modules (i.e. .pyd and .so files) natively by using the new CPyExt subsystem. Unlike the ...
Why Textmate 2.0 is not Developed in the Open
I got a letter asking me why I didn’t use the 1.0 model for developing 2.0, that is, released 1.0 when it reached “usable” and then incrementally improved it.
PyPy gets faster
Python, Linux, Bicycles, Books, Games, Etc.