• ORMs and LINQ are theft.

    The developers steal DBAs' time so that they may have an easier ride. They meet their deadlines more easily while making the DBA's job harder.

    As someone who takes an active interest in the performance of DB-objects, SPs are important.

    SQL Server collects all manner of usage data and other useful data on the objects within the DB.

    If a DB or function is performing poorly, I, as DBA, can rectify it. Not so with LINQ code.

    I know how often an SP has been executed since the last server restart. I can find out which SPs have used a certain index in the last while. I can determine the average number of logical reads, physical reads and so on. I have something concrete with which to base my corrections.

    For us DBAs maintenance and continual improvement are two of our tasks. The developers work within the parameters of their sprints and this work is usually new development, not fixing the crap that they have already coded.

    If a manager comes and says that the application is running more slowly than usual, and all of the DB calls are made via LINQ, then I can only tell so much before having to send him to the developers to alleviate the problem. The DBAs become less useful (because they can't fix the problem as easily as they once could) and the developers become more stressed because they have to interrupt their sprint-work. It is a lose-lose situation.

    And for all those developers who say that there should be no business logic in the DB, well, the DB itself is business logic. It is (or, at least, should have been) the structural personification of the business logic within the data resides.