Why Ruby is an acceptable Lisp (2005)
Random code snippets, projects and musings about software from Eric Kidd, a developer and occasional entrepreneur.
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 6,985 posts.
Random code snippets, projects and musings about software from Eric Kidd, a developer and occasional entrepreneur.
One of the best things about modern cryptography is the beautiful terminology. You could start any number of punk bands (or Tumblrs) named after cryptography terms like ‘hard-core predicate&#…
By all accounts, TypeScript has been a big success for Microsoft. I've seen loads of people sparkle with joy from dousing JavaScript with explicit types that can be checked by a compiler. But I've never been a fan. Not after giving it five minutes, not after giving it five years. So it's with great pleasure that I can…
Stubbornness and disrespect, programming languages and operating systems, obsessive epistemology and formalist propaganda, Austrian economics and contemporary verse
In this post, I’ll iteratively optimize an implementation of matrix multiplication written in CUDA.My goal is not to build a cuBLAS replacement, but to deepl...
Vulnerability in Chrome, Firefox, and Opera makes users susceptible to phishing with Unicode domains
If you type “WAIT6502,1″ into a Commodore PET with BASIC V2 (1979), it will show the string “MICROSOFT!” at the top left corner of the screen. Legend has it Bill Gates himself inserted this easter egg “after he had had an argument with Commodore founder Jack Tramiel”, “just in case Commodore ever…
The urge to replace the mainframe has reinvented the mainframe and its problems.
The word is out that I have decided to resign my tenured faculty job at Harvard to remain at Google. Obviously this will be a big change in ...
Investigating some details of SIMD related frequency transitions on Intel CPUs.
This new edition has been the occasion to overhaul the presentation in many places, but its main purpose is the update to the new C standard, C23 . The goal was to publish this new edition of Modern C at the same time as the new C standard goes through the procedure of ISO publication. The closest approximation of the…
Well, the typing issue is a thorny one. I think as a general rule, the reddit types are too eager to denounce it immediately and tell us all that Ruby is the answer, or whatever it is this week, and the Java purists and academics make the opposite argument. Coming from someone from a dynamic background, I didn't use a…
Cleaner, easier-to-reference repo of Scott Alexander’s The Whispering Earring (that’s the Schelling title, real title below). Original from livejournal is ba...
I'm assuming you're familiar with the basic idea of what a Turing machine is . There are a few parts to building one in Magic: a tape extending in two directions storing cells of a few different "colours"; a processing head that can read the current cell's colour, write a new colour and change its state if necessary…
So the other day I both defined Tcl procedures all by myself and used them interactively, and I liked it, to the point where it felt like some kind of local optimum. This entry is an attempt to cope with the trauma of liking Tcl, by means of rationalizing it. I'll first tell the story of my fascinating adventures, and…
The Scala language is large and complex, and it provides a variety of tools that a developer can use to do the same thing in a variety of ways. Given the range of possible solutions to every problem, how can a developer choose which one should be used? This is the first in a series of blog posts aiming to provide…
These past days, I have done a lot of thinking about bitcoin that ended up with me investing all of the money I had...
Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it?
(Note: this is the second part of this story. You can read the first part here.) Despite the rejection from 23AndMe, I kept pushing. I applied to all the big hiring websites. Hired rejected me from...
October 2007 (This essay is derived from a keynote at FOWA in October 2007.) There's something interesting happening right now. Startups are undergoing the same transformation that technology does when it becomes cheaper. It's a pattern we see over and over in technology. Initially there's some device that's very…
( These are notes that I wrote up from a talk that I gave at the National Academies Forum on Cyber Resilience . You can tell that it was in Washington, DC because of the “cyber”.
I give some advice each year in my annual Sphinx tutorial at PyCon . A grateful student asked where I myself had learned the tip. I have done some archæology and finally have an answer. Let me share what I teach them about “semantic linefeeds,” then I will reveal its source — which turns out to have been written when…
Iron Law of Bureaucracy: the downwards deletionism spiral discourages contribution and is how Wikipedia will die.
Does DNB increase IQ? What factors affect the studies? Probably not: gains are driven by studies with weakest methodology like apathetic control groups.