Hacker News new | ask | show | jobs
by TickleSteve 2996 days ago
If you're architecting your application around a particular mechanism, be that a db or comms mechanism or whatever, then you're tightly coupled to it. This is a mistake.

Most applications need to store data, but most applications dont need to store data in a particular db.

1 comments

Taking this attitude to your design is a great way to tank your performance before you've even started. I have seen too many projects suffer from overzealous architecture that treats the database as a persistence layer. Designs that start out trying to abstract away the persistence layer wind up building a complex caching layer.
I agree, I'm not arguing for complete abstractions here, just showing that the fact that you can abstract away the differences means that the db is not a "defining" part of the system.