“When I write a program, 50% of the code comes from me guessing what you want because you dont know what you want.”
This. Oh so this.
It’s not “the customer is always right”, it’s “the customer has precious little idea what he wants and we have to build something that will make him think it’s right”.
Usually, they assume you know what they want.
“This report is wrong. I didn’t want accounts that are late over 1 year”.
“I pushed this button and expected it to call the bank”.
These are people that blame the cable company when they push the wrong button on the remote.
These days the government mandates that the public will buy new air conditioners, detergents, toilets, light bulbs, televisions, etc.
The days of a BETTER mousetrap are gone, and the government will insist that you switch to something newer (but not necessarily better).
HR: "We want a website."
Me: "OK, I can work on getting one stood up. What do you want on it?"
HR: "Oh, this, and that. And some of the other thing. I dunno, why don't you put it together and we'll look at it?"
Me: "Well, I'm in IT, not HR. I'll be glad to provide a platform for you to work on, and show you how to use it, but the content needs to be made by you guys."
HR: "WHAT? We're going to need to work on this?"
Me: "yup. And, you need to keep it fresh. Putting out a brief "Letter from the CEO" once a year isn't going to cut it."
HR: "Content? What that? It's not something you do??"
Me: "Nope. Well, I'll be glad to give you a "What's new in IT" article once a quarter, or something. But you all will need to generate stories, or find people in the company to generate them. Then, you can upload them to the website. People like to see pictures of themselves. And read about awesome work they've done. You better get snapping!"
HR: "......."
I didn't make any friends in that meeting.
I have worked in business for 15 years after retiring from the military, for 3 different companies. The CEO of one of the companies told the IT Dept. to build a program that would basically run the entire company, from HR to engineering and logistics. I believe the budget and timeline were realistic. The programmers came and sat beside the key dept. heads at their desks and asked what the managers wanted. Then they listened. And asked questions. And then, eventually, we had a system that almost became a profit center in itself. If there was a bug, the programmer would come to you, look at what you were doing, and make adjustments. It worked great. Then I worked for a company that used an off the shelf system that nobody really knew. Then you would put in a help desk request, wait a few hours or a couple of days for the tech to call you. After you spent 10 seconds trying to explain the problem, they would cut you off, say “OK, I’ll fix it”. Then you would put in another help desk to get the first one fixed because the tech did not listen to you. Eventually you would ask them to put it back the way it was because that was less worse than the fix they attempted.
The point here is, instead of having a prima donna attitude sometimes you can assume the person you’re talking to knows how to do their job and are simply asking you to do yours.