Why I wrote a book about interpreters
Last week I’ve self-published my first book called “Writing An Interpreter In Go”, which you can get at interpreterbook.com . I want to tell you a little bit about why I chose to write this particular book.
The latest blog posts to take off on Hacker News. 2,307 posts.
Last week I’ve self-published my first book called “Writing An Interpreter In Go”, which you can get at interpreterbook.com . I want to tell you a little bit about why I chose to write this particular book.
This means that while hardware computing horsepower increases at roughly 60%/year, compiler optimizations contribute only 4%. Basically, compiler optimization work makes only marginal contributions.
A step-by-step guide to make your computer a music expert.
There will come a time when you will find yourself asking “What the heck is that process doing?”. To uncover the mysteries behind the behaviour of a process, we have a tool called strace .
Joe Duffy's Blog | Adventures in the high-tech underbelly
is a geospatial, temporal, and linguistic analysis of recent tweets about U.S. presidential candidates. I used Pandas, TextBlob, and Cartopy. [source]
Rust claims to enable abstraction without overhead. How does that claim hold up in practice?
AWS seems to have a dominant position in enterprise computing, but Google is trying to change the rules to favor their inherent strengths.
Neural networks have the rather uncanny knack for turning meaning into numbers. Data flows from the input to the output, getting pushed through a series of transformations which process the data into increasingly abstruse vectors of representations. These numbers, the activations of the network, carry useful…
Slack is great. Many smarter people than me also think that Slack is great. Slack is great because its simple and easier to deal with than emails. With all t...
A point-by-point rebuttal of Zed Shaw's Unicode and 2to3 complaints, with a trainer's view on which Python version to teach beginners in 2016.
Last week Joe Chilcote discovered an interesting message when imaging a Late 2016 MacBook Pro TouchBar (from here on out referred to as TBP): A critical software update is required for your Mac. To…
This is a big issue and it has been there for a long time. Just a month ago I finally got verification that the Microsoft Product Groups n...
An oft-repeated fact on programming forums these days is that a decent optimizing compiler will always beat a puny human's attempt at hand-written assembler. There are rare cases, like MPEG decoders, where making good use of the SIMD instructions can allow assembly to massively beat the compiler. But generally you'll…
Have you ever felt awe and delight upon first experiencing a computer interface? An interface that surprised you with its strangeness, with a sense of entering an alien world?
This is Part 3 of “Making The Contender: Conception to Completion”. Here are links to Part 1 (how we made the game) and Part 2 (how we ran…
Summary Your phone probably contains banking, payment and personal information that can be remotely stolen via numerous known and unknown bugs in the Android software. This is attractive to criminals. Vendors (LG, Samsung, Xiaomi, etc.), after selling you their phone, have no incentive to keep your phone’s software up…
As it turns out, there is no correlation between programming ability and the frequency of Stack Overflow visits.
Due to continued visitation resulting in 404s to this article it has been restored from an older, and lost, version of this blog from content at – https://web.archive.org/web/20170811222717/https://www.robertputt.co.uk/2016/11/28/learn-from-your-attackers-ssh-honeypot/ , it may be incomplete, for example images being…
You find the latest version of my book at the usual place at This now contains all the material that I plan to put into it. New are “experience” parts about performance, function-like m…
Writing assembly language is something best left for the experts. To write code that runs directly on your microprocessor you need to know how memory segmentation works, what the intended use of each register is, how codes executes in real and protected modes and much, much more. And, of course, modern compilers will…