Topics /
Software Engineering
The most popular blog posts about software engineering on Hacker News. 14,544 posts.
Goroutines and APIs
Goroutines are a unusual and powerful programming language feature, so they are a tempting toy to play with, and they get a bit overused.
Building an IBM Watson-powered AI Chatbot in 50 lines of code
Developing a speech-to-text bot using IBM’s Supercomputer.
Emacs Lisp Readable Closures (2013)
I’ve stated before that one of the unique features of Emacs Lisp is that its closures are readable . Closures can be serialized by the printer and read back in with the reader. I am unaware of any other programming language that has this feature. In fact it’s essential for Elisp byte-code compilation because…
New Programming Jargon
Every field comes up with its own jargon, and oftentimes subgroups within a field come up with their own specific words or phrases (those of you familiar with Microsoft Canada’s Developer and Platform Evangelism Team know that we have our own term for “broken”, named after one of our teammates who is notorious for…
Emacs and shellcheck
Julia Evans had a great talk called Making Hard Things Easy . One of the takeaways for me was that I should be using tools for parts of a ...
Between Two Lisps (2020)
Out of all Lisps the ones I’ve come to appreciate the most are Scheme and Common Lisp.
Tagged Pointer Strings
Tagged pointers are an interesting technology used to increase performance and reduce memory usage. As of OS X 10.10, NSString got the tagged pointer treatment, and today I'm going to take a look at how it works, a topic suggested by Ken Ferry.
Language Pragmatics Engineering
On best practices and gradient descent.
Lmgrep: Lucene-based grep-like utility
Introduction to `lmgrep`: what is it and what it isn't. My a motivation to build it.
Rust's Object System
On the rust-dev mailing list, someone pointed out another “BitC retrospective” post by Jonathon Shapiro concerning typeclasses . The Rust object system provides interesting solutions to some of the problems he raises. We also manage to combine traditional class-oriented OOP with Haskell’s type classes in a way that…
Cursed Linear Types in Rust
Inspired by Jack Wrenn’s post on Undroppable Types in Rust, I set out to see if it’s possible to create types that must be used exactly once. From my understanding, those things are called linear types, but don’t quote me on that1. Unless you are quoting the title of this article which explicitly says linear types… I…
Getting started with Meteor and React
A mid-depth cap with classic style for any occasion, this Nike Club Cap comes in smooth cotton twill that's been softly washed for casual, daily comfort. Soft and unstructured, the precurved bill makes for easy styling, and the adjustable back-strap lets you find the right fit. Nike Hat Size 6 1/2 6 5/8 6 3/4 6 7/8 7…
Scott Aaronson explains his $200k bet (8 Signs A Claimed P≠NP Proof Is Wrong)
As of this writing, Vinay Deolalikar still hasn’t retracted his P≠NP claim, but a clear consensus has emerged that the proof, as it stands, is fatally flawed. The first reason is that weR…
How I made a game played in Notepad
Play games made by Sheepolution
Surviving without a superuser in Postgres 16
As I've written about before , a PostgreSQL superuser always has the ability to take over the operating system account in which PostgreSQL i...
Interview with Matt Might
Interview with Matt Might, a professor, programming languages researcher, investigator of rare disease, and popular blogger.
How to Write a Programming Book
If you read Programming books, then your goal is to learn. If you write Programming books then your goal is to teach. When I wrote my book…
The algebraic structure of functions, illustrated using React components
Did you know there’s an algebraic structure for functions? That may not surprise you at all. But it surprised me when I first found out about it. I knew we used functions to build algebraic structures. It never occurred to me that functions themselves might have an algebraic structure. The structure is fascinating…