I found an article that discusses the rise of NoSQL databases challenging relational databases in the 21st century. The article criticizes the centralization of databases in software architecture, highlighting the importance of prioritizing use cases over specific database technologies or frameworks.
The narrative follows the author’s perspective on the evolution of the software industry, expressing enthusiasm for the emergence of NoSQL databases but cautioning against letting databases dictate the center of application design.
The best paragraph of the article is
“It makes me crazy when I hear a software developer describe his system as a ‘Tomcat system using Spring and Hibernate using Oracle’. The very wording puts the frameworks and the database at the center. What do you think the architecture of that system would look like? Do you think you’d find the use cases at the center of the design? Or would you find the source code arranged to fit nicely into the pattern of the frameworks? Would you find business objects that looked suspiciously like database rows? Would the schema and the frameworks pollute everything?”
What do you think about this?