11 comments

[ 14.3 ms ] story [ 283 ms ] thread
I just hope the future is not in that font..
This article is another classic case of confusing the logical schema with the physical implementation. The future of DBs is allowing more separation of the two, not less, and more end-user choice over a physical implementation that matches up well with actual access patterns.
These database discussions are becoming more and more lame.

Folks: simply because you can write SQL does not mean that you have something insightful to say about ACID

>> "Nor do I expect developers to understand SQL."

I do not agree. I expect all of my developers to be proficient in both C# and SQL. I expect them to be able to properly design object oriented solutions and entity relations. And I expect them to know better than to use HTML tables for general purpose layout. There is no such thing as "one's natural paradigm".

Not everyone uses C# and SQL to write their webapps. Or for that matter, even OOP.
And even in the C# world LINQ is doing a good job of isolating developers from the details of working with SQL.
For simple apps, yes. But actually I was surprised to find out that they have been on and off plans in attempt to kill linq2sql and actually if you inspect the produced sql code(out of the box) .. well it can use a lot of optimizations.

I do think o/r mappers are the way to go, although having better tools does not mean that you should start handwaving when it comes to db internals.

It is, to use a Spolskyism, a leaky abstraction.
Maybe if all you're doing is writing silly blogging software, then you can get away with that. I need to develop apps the report live on nation-wide sales and inventory data, down to the individual shipment. You start dealing with a database intended to hold 10, 20 years of warehoused data, application languages turn into a blur in the background.
He stated his developers must know this not all developers.

Also any web app that is not using some form of OOP must be a very small or very confusion application (confusing to modify not use).

Totally not the point. C# is just an example of an application language. The point is that there is no reason why a developer can't master the full stack.