Hacker News new | past | comments | ask | show | jobs | submit login

From your profile i can see that your a smalltalk fan. Well, Alan Kay was onced asked where he thought the future of programming languages lies and he replied something along the lines of knowledge representation/logic programming.

guess what - relational databases are based on the first order logic, which is the most common method for representing 'knowledge', look at prolog or opencyc.

When you write sql you're actually working in a very high level language, higher than python or ruby or the language du jour.

I doubt Philip Greenspun is wrong. He learned programming directly from people at the mit ai lab.




The future may very well lie there, the present most certainly does not. Above all else I'm pragmatic and no matter how pretty SQL might be for getting the data you want, even if I ignore that it isn't actually relational, it simply doesn't fit well with the rest of the environment necessary to put a working application in front of a user today.

While I admire Alan Kay greatly, he's always been a bit of a dreamer. Dreams don't pay my bills, but object databases most certainly make me more productive, make my apps better, and my job much more enjoyable; SQL however, despite the fact that I know it very well, is always an annoyance that makes any project take long and require much more code than would otherwise be necessary.

As for Greenspun, everyone, no matter how famous or who taught them, is wrong about many things. Look at this website, we're having this discussion on a very popular site which uses a home-brew object database precisely because for many such sites a relational database is simply unnecessary and massive overkill and would create as many problems as it would solve. Relational database have their place, but they are a massively overused and over-applied solution. No blog, small website, or small biz appliction needs a relational database, they'd all be much simpler and work just as well with an OODB and quite frankly be faster and cheaper to develop.


Nearly right. Relational databases are based on a solid logical foundation. SQL is not.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: