Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

We've all had them, managers who have either come from sales or last looked at code 10 or more years ago but think they know how to write code.

What can I do to give the impression that I'm grateful for his intervention, but keep it as short as possible so I can get on with my work?

Or, should I be engaging more with the manager to educate him/her with modern coding techniques and practices? After all, a manager who understands these will be able to talk sensibly to clients and more senior management when discussing the project and its timescales.

share|improve this question
    
If you can vote and think this is a useful question or it have useful answers below, please vote up. StackExchange sites need votes to build a good community. You can give 30 votes per day, don't waste them. Specially users with high reputation and low counting votes given please read this: meta.programmers.stackexchange.com/questions/393/… –  bigown Oct 5 '10 at 19:39
    
Please follow this proposal for that kind of question: Organization aspects –  bigown Dec 10 '10 at 20:39
5  
The artist working on the queen animations for Battle Chess was aware of this tendency, and came up with an innovative solution. He did the animations for the queen the way that he felt would be best, with one addition: he gave the queen a pet duck. He animated this duck through all of the queen's animations, had it flapping around the corners. He also took great care to make sure that it never overlapped the "actual" animation. –  Job Dec 13 '10 at 22:26
2  
In case Job's answer went over anyone's head, the artist then easily removed the duck when the manager critisized the obvious problem with his work. –  TheBigO May 25 '11 at 21:44

8 Answers 8

up vote 16 down vote accepted

I say, go ahead and try to engage and educate.

If they're honestly trying to help you, the chance to learn something could be valuable to them. If they're just shoving their nose in for ego or political reasons ("See, I'm helping, I'm helping!"), they'll likely get the notion you'll embarrass them if they keep this nonsense up -- or bore them to death with a wall of jargon they're only pretending to understand.

And if you've got the dreaded egomaniac who truly thinks they're an expert at your job no matter what evidence you can bring to the contrary, then smile, nod, and make whatever trivial cosmetic changes will make them go the hell away. And update your resume.

share|improve this answer
2  
Engagement is the only truly long term answer here. An honest and open working environment is [ultimately] a happy one. –  dwynne Sep 12 '10 at 12:42
2  
I had a boss like that at a 3-man company where I was the programmer. He was always making "helpful" suggestions and posing questions. Besides being professional and respectful of his position, I would give answers to satisfy him to try to make him go away to stop interrupting my work. But in thinking how to answer, or mulling over our conversations, I'd see the problems in other ways and find solutions. That was really aggravating because he then felt justified in continuing to interrupt me. And he was. I learned a lot and I hated it. –  Huperniketes Oct 15 '10 at 23:24

I usually just listen everything such person has to say. I agree to almost anything and I do it my way anyhow. Usually he never bothers to check.

share|improve this answer
    
This is the way I behave as well :) –  Emiliano Oct 11 '10 at 12:30

Group code reviews. Public embarrassment is always good for curbing those sorts of habits. :)

share|improve this answer

It can be very difficult, especially if the manager thinks they're a l33t h@x0r but hasn't coded anything in the last 10 years.

Start by using active listening. Make sure you understand exactly what point they're trying to get across. Rephrase it and shoot it back to them so that they know you understood them. Sometimes this is all they really care about.

If they insist on some implementation, ask yourself why you're refusing them. There has to be a reason. It probably breaks some fundamental software design principle... usually separation of concerns. Know your principles, and know why they're better than the alternative. Then quote the principles and explain why they should be followed in this case. That makes the discussion academic.

If you can't figure out why you don't like what they're saying, it's a good opportunity to question your assumptions.

share|improve this answer

I'd not educate if there has been a code history for him / her. The knowledge of development issues should have stuck in the mind.

Politely ask him/her whether you could discuss whatever he has in mind over lunch.

share|improve this answer

Sometimes one just has to sit down and listen, even when we don't want to.

One can only hurt the dignity of a person by not paying them attention.

Your manager is a person. Treat him like one. Look at him as if he were some guy in the street. No titles.

Doesn't that make him someone that may need a friend, someone who may feel lonely?

Have you thought about it from an emotional point of view?

Is he trying to convey an implicit message?

Talk to him. Just not about the problem. Ask him how is life going. He may feel appreciated and thus provide you with less work anxiety.

Have you considered or done this already?

If not, then why?

share|improve this answer

Do the same thing to him. Every time you see him, immediately start talking about his stuff regardless of whether or not you understand it or not ... "Hey, I think that marketing campaign should go like foo!" "Hey, I think our sales team should do bar!" "Hey, next time you talk to your manager, you should tell him quox!" He'll start avoiding you like the plague.

share|improve this answer

The problem here is that your manager obviously feels COMPETENT, when he IS NOT.

I've had such experience before and for me it worked if I subtly showed the guy that programming wasn't his domain.

For example, I might go at great lengths to explain a specific piece of code, descending all the way into talking about hash tables and linked lists, big O notation etc., until his face shows that he really feels unable to follow any more of your discussion.

So if you can pull this off you will most likely get rid of the silly questions and micromanagement.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.