Topics /
Software Engineering
The most popular blog posts about software engineering on Hacker News. 780 posts.
Distributed Systems in Haskell
I recently completed UT Austin's Distributed Computing class, taught by Lorenzo Alvisi. My project partner Pato and I decided to give it a go in Haskell, and ended up using Haskell for all project assignments (Chandy-Lamport, Paxos, and Bayou).
K-Nearest Neighbors from Scratch
Using JavaScript, we implement the k-Nearest Neighbors algorithm from the bottom up.
Go Debian: Writing Debian tooling in Go
As some of the world knows full well by now, I’ve been noodling with Go for a few years, working through its pros, its cons, and thinking a lot about how humans use code to express thoughts and ideas. Go’s got a lot of neat use cases, suited to particular problems, and used in the right place, you can see some clear…
Decommissioning a free public API
A post-mortem on running and decommissioning Telize, a free public REST API
Help me sort out the meaning of “{}” as a constructor argument
In Effective Modern C++ , one of the explanations I have in Item 7 ("Distinguish between () and {} when creating objects") is this: If ...
State of Bootstrap 4 vs. Foundation
Bootstrap 4 and Foundation 6 are the latest versions of the most widely used CSS frameworks out there. Foundation 6 is stable whereas Bootstrap 4 hasn’t been released yet. However, before you wonder why I am comparing a stable framework version vs an alpha one, let me set the record straight by saying that Bootstrap 4…
On Uber’s Choice of Databases
Uber provides bad advice about PostreSQL vs. MySQL
What Golang Is and Is Not
At Dan’s Stuff, we bring you the thrill and excitement of car auctions near me right to your screen. Our blog is dedicated to helping you navigate the fast-paced world of car auctions with confidence and expertise. We provide in-depth guides, expert advice, and the latest news to ensure you have all the information…
Lessons from Doom (2010)
A high-minded goal like “expand the boundaries of the medium” doesn’t always mean forging ahead in crazy new unknown directions. Sometimes it means examining lost evolutionary lines in game design – picking up ideas that were abandoned long ago and seeing if there’s any new life in them. The game I keep coming back to…
Category Theory and Declarative Programming
This is part 11 of Categories for Programmers. Previously: Natural Transformations. See the Table of Contents. Introduction to Part II In the first part of the book I argued that both category theo…
Common shell script mistakes (2008)
Portability and Robustness issues commonly found in shell scripts
Rules for Writing Safety Critical Code (2006)
Ten rules for writing safety critical code, to facilitate analysis and increase software reliability
How well do you know CSS display?
This article has been translated to Japanese by Kana Takahashi on POSTD. The display property is one of the most important CSS properties we use for layout.…
Getting Started with Tokio
If you're interested in writing servers in Rust, Tokio is a project that should definitely be on your radar. It promises to leverage the exciting new work on futures in Rust to make it easy to build extremely efficient networked servers with natural, composable code.
Python Patterns (2013)
python patterns diagram Over the past few months a number of people have come to me for guidance regarding various aspects of Python development, so I ...
Reducing the maximum latency of a bound buffer in Erlang
Recently I came across two great articles on the Pusher blog: Low latency, large working set, and GHC’s garbage collector: pick two of three and Golang’s Real-time GC in Theory and Practice . The articles tell the story of how Pusher engineers reimplemented their message bus. The first take was done in Haskell. During…
Type Punning Functions in C
C has a reputation for being inflexible. But did you know you can change the argument order of C functions if you don't like them?
How to Worry Less About Being a Bad Programmer
I just came across another manifestation of imposter syndrome, in the form of “Am I really a developer or just a good googler?”