The problem has been the same since the PC first came out: users can "do things" with a PC/laptop/smartphone/tablet and think that "doing things" makes them an expert on IT. So when they come up with a "great idea for a new application", they can not and will not fathom the fact that it can take months or years to implement, is going to cost hundreds of thousands if not millions of dollars, and will be obsolete before it ever hits production due to changing business needs.
There is no cure for the "wisdom" of people who tell you how to do your job, or how their 14 year old nephew could write the application in a few weeks. They've made up their mind that you're just a lazy SOB trying to milk the company for money and a cushy job, and will never, ever, ever understand just how much effort goes into security, design, testing, porting, etc. To them, everything is "easy."
The real problem is that companies let such users and managers make business decisions based on "their gut instinct" instead of properly planned and projected schedules. Because heaven forbid you should ever tell the marketting manager that he can't have his shiny Sharepoint solution because it doesn't provide anything useful to the company that can't be accomplished with a properly organized set of folders on a shared drive/server somewhere.
No, they're the ones who sign for the budgets, and they're the ones who like the "shiny", so you're the one who gets stuck trying to make the shiny work with all the line of business systems that are actually important to the operation of the business.
And if you even hint that you can't do it, well, there's a company overseas that's promising to do it in a month as an offshore service, so you're fired.
Which, in a nutshell, is how the bean counters and their ilk get away with their bad business decisions: they constantly hold the threat of offshoring and termination over your head to beat Mr. IT into submission.