Random thoughts on databases and .NET developers after running my #PostgreSQL Superpowers talk:
- most of them don't do SQL, just EF,
- don't use Explain to analyse query plans,
- MSSQL is still the go-to,
- PostgreSQL is still seen only as a no-cost alternative,
- DB is just a bag for data for them
- most of them don't do SQL, just EF,
- don't use Explain to analyse query plans,
- MSSQL is still the go-to,
- PostgreSQL is still seen only as a no-cost alternative,
- DB is just a bag for data for them
Comments
- They don't use specific features an exact db gives them (but still choose MSSQL).
- most haven't seen stored procedures and while loop in SQL for some time (if at all),
- rarely use views and even rarer materialised views.
Is it good or bad? You choose.
I don't because I've learned there are multiple .NET bubbles (enterprise, SaaS/product, startups etc.) and it's different in every single one.
But since my consulting times started and I'm constantly switching between the bubbles, I do encounter exactly what you describe as much as the exact opposite of it 🙂.
Of course there are people that have a different experience, and that's not related entirely to .NET space, but just notes that I took from the audience I had.
Not an attack at all.
It's not just a domain of .NET developers; most software engineers are no longer experts in database features. Furthermore, they often lack access to DBAs. Migrating to SaaS solutions has only made this gap more apparent.
I also see this pattern in the node ecosystem, and generally the whole business application world. It's not specific to dotnet.
Moving to cloud has made it worse.
And the dominant culture is to use what Microsoft provides without asking any questions.
Especially now that we can scale with money and we're not limited by the machine's capacity.
On the other it's amazing that even with such level of ignorance you still can land a product that earns big buck to your company (thank gods for the corporate budget management).
Claiming the .NET dev-sphere is "out of touch" because they primarily flock to EF and MS is developer elitism and gatekeeping. If EF does everything you need, going pure SQL "just because" is counterproductive
Any dev should understand at least 1 layer below the one that they're using, be it EF/SQL or ASP.NET/HTTP. It's what's fair to expect from a professional.