Functions are vectors
Conceptualizing functions as infinite-dimensional vectors lets us apply the tools of linear algebra to a vast landscape of new problems, from image and geometry processing to curve fitting and machine learning.
Topics /
The most popular blog posts about software engineering on Hacker News. 14,531 posts.
Conceptualizing functions as infinite-dimensional vectors lets us apply the tools of linear algebra to a vast landscape of new problems, from image and geometry processing to curve fitting and machine learning.
It's that time of the year again, a new version of Python is just around the corner. With the Python 3.15.0b1 feature freeze, we know what's...
Update 2024-01-12 : Ken Shirriff has an an excellent blog post on why “cargo cult” is a poor term of art.
A case against measuring AI-assisted engineering by code volume and other vanity metrics instead of outcomes.
How and why to use the second most powerful question known to software development
Developers suck at writing documentation. We like to say RTFM but often there ain't no FM to R. At best we have a half-arsed collection of notes, some obsolete tips, and a link to a desolate forum full of people asking the same questions again and again. That's no way to treat our users. I naïvely believe there's a…
This article is part of a series about Street Fighter II and the CPS-1. It is recommended to read the previous entries before reading this one.
In 2015, I gave a talk in which I called Donald Knuth the Patron Saint of Yak Shaves . The reason is that Donald Knuth achieved the most perfect and long-running yak shave: TeX.
A common refrain is that threads can do everything that async/await can, but simpler. So why would anyone choose async/await?
As software developers, I think we can agree that open-source 1 code has transformed the world . Its public nature tears down the walls that prevent some pieces of software from becoming the best they can be. The problem is that too many valuable projects stagnate, with burned-out leaders:
Detailed look into all the machinery involved in rendering Emoji
Writing a SQL database from scratch in Go: 1. SELECT, INSERT, CREATE and a REPL
Comparing the core values of our text editors, describing the history of Neovim's development, and discussing the rise of VSCode.
Written pieces, talks, and other bits by Zach Holman.
About 5 years ago I was working on a project written in style still common for today:
This article has been moved to: http://thejameskyle.com/dear-javascript.html
If you lived through the shift from handcrafted server pets to immutable infrastructure, you should sense something oddly familiar about what's happening now.
A cheat sheet of real-world timing and memory numbers to guide performance-sensitive decisions.
Crusader Kings III is a pretty impressive game. It’s impressive not only for its official content, but also for its extensive modding…
Most of what modern software engineers do involves APIs: public interfaces for communicating with a program, like this one from Twilio. I’ve spent a lot of time…
I wrote a self-hosting C compiler which I named 8cc in 40 days. This is a log when I was writing it from scratch by myself in 2012. The code and its history are available at GitHub .
Oh, Steve, you do make me laugh, always. And it's so long between posts these days I hardly believed it when Safari hinted that there was some action over at Steve's. Thank you.
How does AWS Lambda work under the hood? Let's find out together!
We generally know that when we buy a piece of technology that it will not last forever, connectors wear out and/or go out of fashion. But I think the most frustrating reason to have to get rid of something is that drivers stop being made for devices.