Data first: Why data models and storage outlast frameworks and languages
В кои-то веки задвинул телегу. В смысле написал сегодня техническую статью. Аж переволновался. Нормально. 😎
As a software engineer, I believe that data, data model and storage
are the primary. We can use different programs and programming
languages, frameworks and approaches to process the data, create
different applications, C#, Java, Python, Go, Rust, PHP, backend and
frontend, but data is the same. The major is data model and storage to
keep the data (hard drives, etc.).
Through the different years I can implement solution using PHP,
ASP.NET Web Forms, Python ASP.NET MVC, Core 7 -8 -9 -50, Go, but the
client see only the result - e.g., rendered HTML.
I think my perspective is very solid and actually aligns with a
principle that’s sometimes underappreciated in software development: technology is ephemeral, but data endures.
✅ Data is the enduring asset
Applications, languages, and frameworks come and go. They evolve
rapidly. But data — the meaning it holds, and the relationships it
models — is often the most persistent part of a system.
Even when companies rewrite systems (e.g. moving from monolith to
microservices, or from PHP to .NET), the data typically must be
migrated, cleaned, and preserved because it represents the actual
business value.
✅ The data model is critical
The data model (schemas, constraints, relationships) captures the core
business concepts and rules. A poor data model is very hard to fix
later. It can haunt an application through years of development.
Good systems design usually starts by understanding the domain and modeling the data accurately.
✅ Storage & integrity underpin everything
Whether you store data in SQL, NoSQL, files, streams, or object stores,
that’s foundational. Data consistency, reliability, and backups are
critical. It’s often easier to rewrite the code than to recover lost or
corrupted data.