Why should it be? You can get a long long way by treating the filesystem as a database. The first engineers at Amazon used the same technique a lot, as do I.
I find it interesting how easy it is to criticize a functioning system based on some aspect of non-conformance with some hypothetical ideal. The idea that HN wouldn't run on a database is no less astounding than the idea that much of facebook runs on PHP. Design of real systems is often messy and imperfect and deviates from the ideal due to necessity of optimizing one or another factor that may not be obvious.
And I recall the last time I looked at the source (when it was released with Arc), it didn't use a database either. All the data is stored as files.
A link to (possibly an old version of) the source for those interested: https://github.com/nex3/arc/blob/master/lib/news.arc
Interesting read.
I'd love to see my median karma on my profile. Much more robust to outliers than average.
https://github.com/nex3/arc/blob/master/lib/news.arc#L2613
Just like Viaweb.
Files???? That's a joke right???
Why should it be? You can get a long long way by treating the filesystem as a database. The first engineers at Amazon used the same technique a lot, as do I.
24 replies →
I find it interesting how easy it is to criticize a functioning system based on some aspect of non-conformance with some hypothetical ideal. The idea that HN wouldn't run on a database is no less astounding than the idea that much of facebook runs on PHP. Design of real systems is often messy and imperfect and deviates from the ideal due to necessity of optimizing one or another factor that may not be obvious.
1 reply →