Live data from Hacker News

Ask HN: What are some examples of beautiful software?

news.ycombinator.com

1–10 of 262 posts

Ask HN: What are some examples of beautiful software?

#1
So I've been reading Paul Graham's - Hackers and Painters. A bit late, I know. And I find his ideas fascinating. One that struck a chord with me, was the idea of taste, recognising good taste. I'd like to know examples of beautiful software and what makes it beautiful.

Re: Ask HN: What are some examples of beautiful software?

#2
Personally, I like Tarsnap and anything from the OpenBSD project. Of course, this is highly subjective, and I would not call the code 'beautiful'. However, to me, these are a few examples of code performing complex tasks written in a simple, straight-forward way that I can follow and understand.

Re: Ask HN: What are some examples of beautiful software?

#3
The most beautiful I'm aware of is Robert Strandh's SICL (https://github.com/robert-strandh/SICL). CL-PPCRE (https://github.com/edicl/cl-ppcre) is very nice as well, imo.

What makes them beautiful? They're very straight forward and clearly communicate what they're doing, and how.

And the parentheses in their language of choice softens the visual display of the code -- while the semantics of the language cause the shape of the code to communicate quite a bit about how the machine will go about executing it.

There are no surprises.

In terms of conceptual beauty, it'd be hard to beat Screamer (https://github.com/nikodemus/screamer).

What makes this beautiful? The way it makes a hairy problem seem simple and straight-forward.

Re: Ask HN: What are some examples of beautiful software?

#10
Varnish cache.

1) Configured via a special DSL (Varnish Configuration language) that gets translated into C, compiled and loaded into the Varnish process via a .so. Perfect combination of expressiveness and speed. You can even inline raw C code in it!

2) Heavy, good use of virtual memory. Varnish allocates quite a lot of gigabytes and leaves it up to the operating system to decide what should be in RAM and what should be on disk.

3) LRU garbage collection of cached objects requires a synchronized priority queue. Varnish people transformed the decades old idea of implementing a heap in an array that every CS graduate knows and came up with a faster, paging-aware solution (http://queue.acm.org/detail.cfm?id=1814327).

Post reply on HN