3 ms·
pg prefers to avoid databases where possible. viaweb stored all its information in flat files, and so does hacker news.
by allenbrunson 18y ago
pg prefers to avoid databases where possible. viaweb stored all its information in flat files, and so does hacker news.
- eatenbyagrue 18y agoHmm, that seems a little... anachronistic. From my perspective, I figure the many thousands of programming hours that have gone into making your average RDBMS fast and reliable might be worth taking advantage of...
- lacker 18y agoThere have also been many thousands of programming hours invested in making your average filesystem fast and reliable. It all depends on what you want to do. If you want relational queries a RDBMS provides a huge advantage. If you only want key-value lookup an RDBMS might be overkill.
- CalmQuiet 18y agoWow! That's amazing. I guess I need to be learning more about pros/cons of such strategies for data storage. Thanks for tip on viaweb. Wikipedia article on that led me to pg's interesting article ( http://paulgraham.com/vwplan.html http://paulgraham.com/vwplan.html ) on original 1995 viaweb business plan. I'll head off and do searches on 'viaweb'/'webgen' and data structure.
- CalmQuiet 18y agoSo it turns out that when viaweb was sold to Yahoo pg learned that Yahoo was also using flat files. But "that was 1995 and there were no free db solutions," as someone pointed out. Couple years ago http://news.ycombinator.com/item?id=14608 http://news.ycombinator.com/item?id=14608 noted that Lisp works very well with flat files:: the plot thickens. Alas, what's a baby boomer accustomed to simple PHP/MySQL solutions to do... try to wrap his head around a completely new file and language approach?
- allenbrunson 18y agomy theory is that pg is a special case. i tried to learn lisp, given his appreciation for it, but i never could think of anything to do with it. most problems tend to strongly suggest a particular language, and in my case, that has never been lisp. i started a big data-intensive project awhile ago, and thought about using flat files. i tend to use them myself, whenever possible. but i couldn't easily see a way around contention issues between many coordinated processes, so i punted and went with mysql.