Several years ago, Blue Bridge was working with a local company as web application developers. We had already built one application for them on Joomla! that allowed their remote employees to submit complicated forms to a central database. They wanted us to provide a quote on another project they were executing for one of their clients. After going to a few meetings, my client emailed me and asked what technology the project would be built with? I replied that it would be built on the LAMP stack. If you're not familiar, the LAMP stack is the underlying technology for nearly every site on the web because it's free, open source, and proven. The next day I got an email from my client saying that their client's IT department wanted the project built on a .Net Microsoft stack because that was "better." Even though it was going to cost Blue Bridge our role on the project I told my client, "Then build it in .Net. Give them what they want." These days, I still agree with the sentiment to give the client what they want, or more accurately what they need, however my response now would be: "If they want an IT department built application, why are they asking for quotes from professional developers?"
Most people have an unspoken panel of experts around them that they go to for advice. These "experts" command very broad categories of knowledge. For example, when I was a teenager my best friend's mom wanted myself and her son to accompany her to CompUSA to help buy a computer. We were experts because we were kids who played video games and had some association with technology. We may have been in a marginally better position than her to make these sorts of choices but were far from capable of making a well-informed decision.
In the case of the IT department, they likely knew plenty about servers and so on, but very little about web application development and were basing their advice on hearsay and what little topical information they encountered. Web application development requires a tremendous amount of knowledge to execute well and wanting the app built in .Net because it’s “better” is not practical advice. The only likely difference in end result for their situation was a tripling of the total cost of ownership.
Very few people have the energy and time to make themselves experts for every decision that comes along. This is why we rely so much on our panel of armchair experts. However, if we recognize that they're not actually experts, how do we go forward? I believe the first thing is to take their recommendations with a grain of salt. Next, we need to dig deeper and try to get an idea of what they actually know by questioning their advice. E.g. “How will this affect our goals? How will doing it an alternate way affect them?" This gives us an idea of the depth of their knowledge and provides fodder for the follow up step – asking if they know any topic experts they can provide greater insight. Finally, we should gauge how much effort we want to put into this. After all, the reason we're asking our armchair expert is because we're trying to save time and energy. The rule of thumb is impact. If you want to find 34th St., ask anyone walking around. If you want to develop a complex web application, talk to web developers.