• Well, that sounds a little biased - Dev teams aren't just out to justify their budgets. Quite often they act sincerely where they see bad practice. The fact that the spreadsheet can work in under a second is completely irrelevant if it's got bad code or bad practice (such as unnecessary and risk-laden human intervention required.

    If humans have to cut and paste info into a spreadsheet, or worse, transcribe it, they are 100% certain to make a mistake one day: missing some cells, getting a decimal point in the wrong place etc.

    Working in BI for years, I've seen End User Computing (EUC) of a wide variety of quality, some of it is amazingly complex for an untrained user to have come up with, and while I have a lot of respect for that - they're often riddled with mistakes - from the simplest rounding errors to logic errors that would only occur in rare circumstances and take days to track down.

    However, the biggest problems with EUC are:

    Lack of independent testing. If there is any rarely do any of the best practices in testing get done, particularly regression testing, and there is usually no formal testing stage.

    Lack of code re-usability, modular design etc: leading to different parts of the business using different business logic and getting different results, or changes in business logic not being universally applied, and also a massive overhead once spreadsheets start 'spawning'.

    The Dunning-Kruger effect: good to see that mentioned in the UOH article - The amount of arrogance from senior managers when it comes to their EUCs is overwhelming, sometimes it feels like you're criticising their children's looks.

    Managing change: related to code reuse, but having gone through several phases of redundancies; mergers, data migrations, and - working in the finance industry - regulatory changes, the hardest part is tracking down the sometimes 100s of independently developed processes and analysing them - they rarely have design documents, and if they do, they're well out of date as several different users have added and changed them. They have no test plans and no version control.

    Yet, every company I've worked at has known the problem, and yet still produces them - the problem is that the manager is looking for a short term solution and doesn't want to waste his time specificing the problem and helping with the design of a good system. It's hard to get them to see the big picture - and if we're telling her that we can give her a solution in 8 weeks time and she needs some figures for Friday, she'll do it anyway, then after a few weeks it's become part of their business process and they can gradually add new parts, and she's not interested in our permanent replacement. Like the frog in the pan of hot water, she's not noticing the incremental additions and manual work going into that EUC.