Low-Competition Niches In Retail Software
This is a guest post by Joannes Vermorel, founder of the Lokad Forecasting Service. Software developers seem to be herd animals. They like to stay very close to each other. As a result, the marketp…
Topics /
The most popular blog posts about software engineering on Hacker News. 14,544 posts.
This is a guest post by Joannes Vermorel, founder of the Lokad Forecasting Service. Software developers seem to be herd animals. They like to stay very close to each other. As a result, the marketp…
Overall discussion on compilers and IRs (LLVM IR, SPIR-V, and MLIR): why they are in their current manner and how they would evolve
Homoiconicity (code as a data structure) is one of the pillars of the Clojure language. It gives the extensibility and flexibility to the language.
I always got fascinated by heap memory. Questions such as How heap memory is obtained from kernel? How efficiently memory is managed? Is it managed by kernel or by library or by application itself?…
Writing an MS-DOS-compatible boot sector in C: parsing the FAT BIOS parameter block, finding IO.SYS, and loading it via BIOS INT 13h in real mode.
This post is about two new command-line utilities: rep and ren. Both are available on GitHub.
Yesterday I was curious about how git push works over SSH. I’m getting more used to using strace to figure this kind of thing out, so I gave it a shot. If I strace pushing to this site’s repository, this shows up:
Make your own NBA shot charts. Open-source, interactive dashboard interface to NBA Stats API built with R and Shiny
As a side-quest I recently decided to write a branchless utf8 decoder utilizing the pext or "parallel extract" instruction. It's compliant with rfc-3629 , meaning that it doesn't just naively decode the code-point but also checks for overlong encoding, surrogate pairs and such. Compiled with gcc -O3 -march=x86-64-v3…
Back in the 90s, one book was ubiquitous in the world of Computer Graphics. Commonly called "The CG Bible", Computer Graphics: Principles and Practice gathered a huge part of the knowledge of the time. It was commonly referenced by the best programmers of that era in interviews and articles . By 1998, the book…
Depth of field blur is an effect that is used in many modern games as a cool graphics effect. A nice example of this is of course my own gam...
Derek Sivers official site. Thoughts on philosophy, culture, self-improvement. Author of Useful Not True, How to Live, Hell Yeah or No, Anything You Want.
A write-up of a full shader debugging session to find out why my Voronoi Diagram shader was stuttering in one specific machine.
After countless commits, the generosity of dozens of proofreaders, and far too long proofreading the index, Modern Perl: the book is available! You can buy a lovely print version from any well-stocked online vendor (and you're more than welcome to...
I'll give a brief outline of how to enable HTTP/2 cleartext (h2c) in a Go API server when you are using Go 1.24 or newer. This is useful in Cloud Run environments, which handles TLS termination but can take advantage of HTTP/2 features.
This post is a work in progress.Inspired by a recent purchase of the Red Book, which providesa curated list of important papers around database systems, I’ve decidedto begin assembling a list of im...
This page is slowly getting outdated. In my spare time, I've been working on a major syntax revision, Firefox compatibility issues and a new version of this page.
At a fundamental level, a programmer needs to manipulate bits. Modern processors operate over data by loading in 'registers' and not individual bits. Thus a programmer must know how to manipulate the bits within a register. Generally, we can do so while programming with 8-bit, 16-bit, 32-bit and 64-bit integers. For…
ramblings by Adam Perry
In this article, we will discuss zippers in the Clojure language. These are an unusual way to work with collections. Using a zipper, you can traverse a data structure arbitrarily and modify its content as well as search in it. A zipper is a powerful abstraction that pays off over time. However, it is not as…
A blog about computer programs, databases, and the future of software development.