Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

This feels wrong. 8 joins is almost certainly reporting stuff, not transactional. Contrary to what some SQL-averse devs think, 300 lines of SQL is actually more maintainable than the equivalent ~1000 lines of application code. It's also much faster. And I do think that's the real conversion, because SQL is a much higher level language than currently available application languages. It's also declarative in nature, which helps maintainance.

A highly normalized DB can easily end up with 8 joins required for some function. That's really not out of the question. "Sorting out" the schema then would be... denormalization, which is a thing, but you need to know why you're doing it. And I think 8 joins isn't enough of a reason.



Yes but developers (or at least web backend developers, who are the ones I interact with the most) are extremely averse to SQL and normalization.


I think that's what was meant by "reporting stuff, not transactional".




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

Search: