Actually by compartmentalizing yourself you end up as one of the consuming worker-bees. The far reaching exposure you get from a 4-year degree is designed not just to train you to work, but to become a leader and contribute not just in the workplace but also society. Things like political science and business may not directly apply to your job, but they do apply to your life.
Sorry bud, but that's not always how it works. Actually, I guess it does.
We have people with bachelor's degrees in CS on my former team (I left two days ago after 2 1/2 years because I couldn't take it anymore), they are certainly "leaders" and contribute to society....
It'd be nice if they stopped "leading" occasionally and spent some time.... *coding* we wouldn't need 7 people to do a 5 person job.
It's nice that you know tons of data structures, algorithms, how to build a compiler, how to diagram state machines, and all the other good stuff that comes with a CS degree. And you know, now that I have some experience and know my flaws as a programmer in the knowledge department, college seems like a great idea.
*After* I've cut my teeth. See, dropping out of high school, working at tons of fast food restaurants and busting my way up to a position that I was happy in (Programming Lead) taught me something that I will never, ever learn in a college setting: How to bust my ass.How to be a self-starter.How to get the job done when I don't have any one to lean on.
Re: your comment on the vacuum, the guys who are actually doing the work are collaborative - the guys with the degrees (of which I can only think of one exception on a 7 man team, 4 have degrees) come in and recite Grady Booch or Knuth verbatim, shit on everything and leave.
While I was there, our main app was about 90k LOC, and I wrote roughly 30% of the existing code and maintained nearly 90% of it, and I am one person on a 7 man team. With no degree. Heck, I have no high school diploma. And no, these were not designed for me, if collaboration did not happen I was the sole designer and the implementor, the documentor, and the teacher to foreign offices.
I did a brief 1-year stint in college - where I was lectured, told by people who had never worked in the industry that my methods were incorrect because they weren't their answers, and generally talked down to. If I wanted a kinder, gentler, more PC version of the military, I would just go back to work. I eventually was expelled because I smoked pot once in my dorm room and got caught by my RA. Obviously the focus is on education and not instilling a feeling of superiority. I could easily get that by subscribing to religion, and I don't need 4 years or more of certified brainwashing to get it.
My hope is that if I return to college, to sit in the back, float through the early courses and get to the good stuff in a timely manner. When I get to that point, I'll probably have enough "bending over" experience (I can leave a job when it frustrates me and easily get a new one, as a good portion of my skills do not relate to my field) to get through the rest of it so I can read the nice books, get the fancy pieces of paper and start telling people what to do and not do anything myself.
I grow tired of working twice as hard as my peers with a degree. One of the guys on my previous team quit a job because he'd have to learn Java, and now, he refuses to learn the language we use now. He knows C and C++. His programs that he submits to the team for review in those languages don't compile, and the ones in our primary language don't even meet the language spec (to degrees that it chokes the lexer at the compile stage). However, he has a degree and while I was working there was paid almost $10k a year more than I was. His production contribution over a period of nearly 2 years has been 30 lines of insignificant code that anyone on this team (with or without degrees) could write.
God, you know, I've been thinking about flipping jobs recently and I have a NC contract, and I work on e-commerce backends for a living.
Thank god it only covers companies that market goods for musicians. I'm looking at a heck of a lot of downtime to re-invent my career otherwise.
Oh yeah, and I get to keep anything that I do in my off-time. No, I don't live in California.
Moral? Read your fucking contract. (I know, I'm probably poster #80 to write this) If you don't like the contact, be nice at first, and of course, if not, heck, you're not taking the job, so enjoy the flight and hotel and have a little fun with it, eh?
Remember, for the most part in the eyes of the law, especially with respect to salary exempt employees, you are being paid to provide a service to the company. That is where it ends. The company only owes you a smidgeon above what they would have to give consideration to any other company, instead of you. That contract is like any other business contract, and should be treated as such.
Companies with arcane contracts simply don't attract talent. The contact I signed was drafted by our HR team initially, edited by the current staff in my department and then our boss fought HR to make sure it happened. I am grateful for that. Very, very grateful, as the market was not very good at the time and unfortunately I probably would have signed it if it required me to give up my first born child.
Change comes with resistance, but you must work within the system. After all, how many techies here would even consider a job without subsidized Medical Insurance? I'm sure some of you don't even look at anything that doesn't have stock options listed.
Actually, I replaced my linux desktop with a Mac about 5-6 months ago. I "took the plunge", rather blindly only on recommendations, and bought a machine I always felt was over priced and not worth the value.
That assumption was quite ignorant of me. Panther (10.3) is a very, very nice system. I am quite happy I made the switch.
P.S., to keep up "with the joneses", I installed FC2 last week. 5 lock ups on boot, countless lockups while running. It was a first for me - XP + SP1 was more stable than a linux operating system. I was thoroughly impressed.
Unfortunately the mac hasn't locked up yet after 6 months of laptop sleep/restore use (it's also my workstation at work, which I use full-time), so I haven't had much dawdle time unless I create it myself.
Anyways, the point of my post was not to troll, but that you guys really need to see more than just shades of grey. Linux is great and has uses, but for christ sakes, have some diversity.
When was the last time you walked into a game store and purchased a game because you liked it, regardless if it ran on linux or not?
Gawd. It's as if you guys really think there is some "one true OS" or something.
Get with the real world. WIndows makes a great gaming machine, but when I want quick keyboard navigation of the system to get to a shell where I can run almost any unix program I would need out there, I sure as heck don't look at the gaming box. I sure as hell wouldn't use either OS X or Windows as a server, but OS X Server is starting to look nicer every day.
It's ironic how so many of you (probably) have so many computers but put the same OS on all of them. Have you no sense of adventure or wish to learn alternate perspectives? Are you that short sighted? Waiting for the latest geek guru to come up with the new ideas may be how you work, but most of them know enough to look around and see how others are doing it and cherry-pick the stuff they think is good and add a few ideas of their own. Heck, all OSX is is a lot of polish on a mishmash of OS 9, NeXTStep, and FreeBSD.
P.S. - I bought my first Mac (Powerbook 15" Combo) 6 months ago, they're finally usable now.
This whole "Linux on the desktop" thing is so overblown, I wish those who were pushing it would just grow up and stop pushing it like it was here.
Linux and FreeBSD make for great workstations. Desktop to me says "workstation with entertainment potential".... Maybe it says something different to you, but when I want emacs and a compiler, I look to linux (actually, nowadays I look to MacOS, but for several years I did look to linux). When I want to play City of Heroes or Counter-Strike, I look to windows.
When I want a rock solid server that takes a licking and keeps on ticking and is the same no matter where I go, I look to FreeBSD. When I want to make sure that some fringe application compiles or I need specific software support, I look to linux.
Really, using a mix of operating systems allows those systems to be geared towards what they do best. Face it, SDL is no DirectX, and NT's cmd.exe is nothing compared to bash, tcsh or zsh. Linux's development model pales in comparison, stability-wise to FreeBSD's, and MacOS gives you all the benefits of a solid unix and toolset along with a GUI that doesn't suck and is here now.
And all of these systems have drawbacks. MacOS doesn't have a case-sensitive filesystem, and it's level of GUI control really hampers the fine-tuning aspects of the system (/etc anyone?). Using FreeBSD means that you have to really look hard into what hardware you're buying to run the system on. Windows, as we all know, isn't the most stable operating system on the planet, and the amount of free autonomous services that are full featured and stable is very small.
That leaves us with linux. linux tries to do everything for everyone but does all of it at a level lower than all of the systems listed above. Except for hardware support, perhaps. Of course, this does have it's uses. You can get a lot done on a linux box, and they make great workstations. It's easy to find online and has a great support community. There is ample documentation (if you know where to look for it). Linux is a great starter if you want to learn unix.
There's two good reasons for this, and a lot of people don't seem to realize it.
Truckers bring you stuff that you need at a much cheaper rate than most other things. Those of you interested in your semi-local organic manufactured food? It comes from truckers. Anyone here ever work for a fast food joint? They get trucks every morning. In other words, a lot of things that you take for granted are brought to you by trucks.
The second reason is quite simple. The truckers are part of this little union called the teamsters. The teamsters get pissed, the truckers stop delivering stuff, and your pocketbook gets hit a heck of a lot harder than any tax could bring.... Truckers are a lot cheaper than pilots, airplane engineers or UPS delivery-men, when you factor in how much time to how much product is being delivered.
As much as some of these taxes suck, there are good reasons for some of them. It takes a relatively small amount of your money to make your life a heck of a lot happier (carried on the backs of others, no less).
Perhaps you could read the solutions that were proposed here.
It's not as much about being accurate or training the user as it is presentation of those things.
A trouble ticket system will alleviate your frustration - those with numerous problems will show up in your statistics, and heck, you might even have something to back your angst up. Perhaps if you have a group of these people you could convince IT to save money by sending them to training - effectively getting them out of your hair.
Educating your users in a constructive fashion - believe it or not, gives them more incentive to learn. Irate learners don't learn at all, or the next time, they do the next thing they don't know about themselves instead, which as I'm sure you know causes more problems than it fixes. Of course, this means less time to get the things done that you need to get done.
The comment I was replying to was a very typical conversation. It was not only insulting to the user, but condescending.
Of course, I tried to provide constructive solutions (you know, setting an example and all that), and of course, you prove my point yet again by being condescending.
My father was a mechanic and now manages mechanics. You think they don't get this kind of problem every day? They just handle it much, much better (I've seen it first hand). The reason is, if they don't, people stop coming back and the money stops flowing.
Face it - HelpDesk is the lowest rung of technology jobs. If you want to move on to do something better, take advantage of having a lot of different personalities in your face to gather some patience and people skills so when you move onto something better you're a valuable member of the team.
I'm not saying people are (or should attempt to be) perfect. I just see a lot of people who don't even try. Reading the vast majority of the posts for this article pretty much sums that up.
Re:Finally something to address this....
on
Are You Annoying?
·
· Score: 1
It's easier to preach when you have done it and survived. HelpDesk and friends is the technology parallel to working the cashier at McDonalds. You don't get dirty working it, but it sure is annoying.
Good attitudes and constructive insight go far towards getting you a better job in the company, or at least, a higher wage and more priviledges.
Do you get paid to help people, or grade them on their ability to learn?
I mean, if you don't like doing your job, maybe it's time to find a new one, eh?
Re:The three worst annoyances in software developm
on
Are You Annoying?
·
· Score: 1
Have you thought about being constructive?
All of these are good points, but a rephrasing of your speech can go a long way.
One of the tricks myself and another programmer on my team use when #1 starts asking us questions is saying, "I don't remember", or "I don't know". This way no one is insulted and the effect is the same. They're forced to read the manpage.
#2 is a little more difficult. We have a programmer at work who has been there 2 years and still hasn't picked up the primary programming language. I mean, he can't even write code that parses properly. This one is a problem for management, as far as I can tell. Pointing it out to them will save you a lot of hell, but after that, I don't think there's much you can do about that other than politely explaining that the problem is in their code. Point it out enough times, and hopefully they'll get the point. Otherwise, you're left to more devious devices to get the point across. As mentioned before, this one is particularily hard to get across in a constructive way.
#3 is solved by setting an example. Sometimes, describing the problems you go through helps. Sometimes, solving their problems for a while helps, but it really depends on the person. A combination of #2 and #3 are particularily bad, and my example earlier is one of those people. I'm still figuring this one out myself.
The point is, do you want to be angry and bitter all day at your teammates or do you want to get stuff done? Helping your teammates (what a concept!) in a constructive way goes a long way to making the latter happen.
As much as you're going to hate this, in this scenario the IT user is the poor communicator. The user in your scenario doesn't have the skill set to communicate properly.
Ask questions like:
"Can you start the program?" "Are you using web mail?" ("desktop client" may be too high-brow or technical for them - believe it or not, and most people know what web mail is - obviously there's only two choices here)
The last thing the IT user says is really condescending. This is exactly what the article talks about.
Re:i'd go a step further
on
Are You Annoying?
·
· Score: 2, Informative
Ugh.
Work for the team, or contract yourself out. IT is like a support medic, if there's no one to support your job is useless.
Either way, soon enough you'll be out of a job (or won't get one) if you're a prick.
Finally something to address this....
on
Are You Annoying?
·
· Score: 4, Insightful
I know it's fun to be smug about this, but this is a serious problem amongst programming teams.
Two teams that I have worked in now seem to hold the belief the the size of one's penis is proportional to the amount of stuff you know - technical or otherwise. Yes, even if it's never going to be relevant to the job at hand, and certainly if it can be used to make someone else feel inferior.
I deal with this every day and now I dread coming into work. However, I doubt that relocating will solve the problem, just suspend it for a while as most programmers seem to be very shy to the new person.
I think what the funniest thing is, however, is that when you do it back to them - to see how they'll react, they get just as mad as I would. They simply have no concept of the damage they do - I mean, none of us are perfect and I'm sure I have done it a few times myself, but I work hard to make sure I don't come off like an ass, even when I want to.
My manager of course, fosters this kind of communication - he thinks (I was told this directly) it creates a more productive environment. In my experience, it disallusions me and makes me want to work less, take more vacation/sick days to get out of work, and generally feel unwelcome everytime I step into the office.
What do I do? I'm a lead programmer at one of the top 50 e-commerce websites in the world. I think I can hold my own and then some when it comes to doing my job, that's never been the problem. IOW, I'm not a marketing guy who's technologically illiterate.
This attitude pushes talent away (we've had several talented interviewees not interested in our team after they interviewed), and productivity will only increase when the people with the problem are either excised or learn how to effectively communicate with their teammates.
Actually by compartmentalizing yourself you end up as one of the consuming worker-bees. The far reaching exposure you get from a 4-year degree is designed not just to train you to work, but to become a leader and contribute not just in the workplace but also society. Things like political science and business may not directly apply to your job, but they do apply to your life.
Sorry bud, but that's not always how it works. Actually, I guess it does.
We have people with bachelor's degrees in CS on my former team (I left two days ago after 2 1/2 years because I couldn't take it anymore), they are certainly "leaders" and contribute to society....
It'd be nice if they stopped "leading" occasionally and spent some time.... *coding* we wouldn't need 7 people to do a 5 person job.
It's nice that you know tons of data structures, algorithms, how to build a compiler, how to diagram state machines, and all the other good stuff that comes with a CS degree. And you know, now that I have some experience and know my flaws as a programmer in the knowledge department, college seems like a great idea.
*After* I've cut my teeth. See, dropping out of high school, working at tons of fast food restaurants and busting my way up to a position that I was happy in (Programming Lead) taught me something that I will never, ever learn in a college setting: How to bust my ass. How to be a self-starter. How to get the job done when I don't have any one to lean on.
Re: your comment on the vacuum, the guys who are actually doing the work are collaborative - the guys with the degrees (of which I can only think of one exception on a 7 man team, 4 have degrees) come in and recite Grady Booch or Knuth verbatim, shit on everything and leave.
While I was there, our main app was about 90k LOC, and I wrote roughly 30% of the existing code and maintained nearly 90% of it, and I am one person on a 7 man team. With no degree. Heck, I have no high school diploma. And no, these were not designed for me, if collaboration did not happen I was the sole designer and the implementor, the documentor, and the teacher to foreign offices.
I did a brief 1-year stint in college - where I was lectured, told by people who had never worked in the industry that my methods were incorrect because they weren't their answers, and generally talked down to. If I wanted a kinder, gentler, more PC version of the military, I would just go back to work. I eventually was expelled because I smoked pot once in my dorm room and got caught by my RA. Obviously the focus is on education and not instilling a feeling of superiority. I could easily get that by subscribing to religion, and I don't need 4 years or more of certified brainwashing to get it.
My hope is that if I return to college, to sit in the back, float through the early courses and get to the good stuff in a timely manner. When I get to that point, I'll probably have enough "bending over" experience (I can leave a job when it frustrates me and easily get a new one, as a good portion of my skills do not relate to my field) to get through the rest of it so I can read the nice books, get the fancy pieces of paper and start telling people what to do and not do anything myself.
I grow tired of working twice as hard as my peers with a degree. One of the guys on my previous team quit a job because he'd have to learn Java, and now, he refuses to learn the language we use now. He knows C and C++. His programs that he submits to the team for review in those languages don't compile, and the ones in our primary language don't even meet the language spec (to degrees that it chokes the lexer at the compile stage). However, he has a degree and while I was working there was paid almost $10k a year more than I was. His production contribution over a period of nearly 2 years has been 30 lines of insignificant code that anyone on this team (with or without degrees) could write.
The other guy avoids the situation entirely by
God, you know, I've been thinking about flipping jobs recently and I have a NC contract, and I work on e-commerce backends for a living.
Thank god it only covers companies that market goods for musicians. I'm looking at a heck of a lot of downtime to re-invent my career otherwise.
Oh yeah, and I get to keep anything that I do in my off-time. No, I don't live in California.
Moral? Read your fucking contract. (I know, I'm probably poster #80 to write this) If you don't like the contact, be nice at first, and of course, if not, heck, you're not taking the job, so enjoy the flight and hotel and have a little fun with it, eh?
Remember, for the most part in the eyes of the law, especially with respect to salary exempt employees, you are being paid to provide a service to the company. That is where it ends. The company only owes you a smidgeon above what they would have to give consideration to any other company, instead of you. That contract is like any other business contract, and should be treated as such.
Companies with arcane contracts simply don't attract talent. The contact I signed was drafted by our HR team initially, edited by the current staff in my department and then our boss fought HR to make sure it happened. I am grateful for that. Very, very grateful, as the market was not very good at the time and unfortunately I probably would have signed it if it required me to give up my first born child.
Change comes with resistance, but you must work within the system. After all, how many techies here would even consider a job without subsidized Medical Insurance? I'm sure some of you don't even look at anything that doesn't have stock options listed.
Actually, I replaced my linux desktop with a Mac about 5-6 months ago. I "took the plunge", rather blindly only on recommendations, and bought a machine I always felt was over priced and not worth the value.
That assumption was quite ignorant of me. Panther (10.3) is a very, very nice system. I am quite happy I made the switch.
P.S., to keep up "with the joneses", I installed FC2 last week. 5 lock ups on boot, countless lockups while running. It was a first for me - XP + SP1 was more stable than a linux operating system. I was thoroughly impressed.
Unfortunately the mac hasn't locked up yet after 6 months of laptop sleep/restore use (it's also my workstation at work, which I use full-time), so I haven't had much dawdle time unless I create it myself.
Anyways, the point of my post was not to troll, but that you guys really need to see more than just shades of grey. Linux is great and has uses, but for christ sakes, have some diversity.
When was the last time you walked into a game store and purchased a game because you liked it, regardless if it ran on linux or not?
Wow! Thanks for the tip.
Gawd. It's as if you guys really think there is some "one true OS" or something.
Get with the real world. WIndows makes a great gaming machine, but when I want quick keyboard navigation of the system to get to a shell where I can run almost any unix program I would need out there, I sure as heck don't look at the gaming box. I sure as hell wouldn't use either OS X or Windows as a server, but OS X Server is starting to look nicer every day.
It's ironic how so many of you (probably) have so many computers but put the same OS on all of them. Have you no sense of adventure or wish to learn alternate perspectives? Are you that short sighted? Waiting for the latest geek guru to come up with the new ideas may be how you work, but most of them know enough to look around and see how others are doing it and cherry-pick the stuff they think is good and add a few ideas of their own. Heck, all OSX is is a lot of polish on a mishmash of OS 9, NeXTStep, and FreeBSD.
P.S. - I bought my first Mac (Powerbook 15" Combo) 6 months ago, they're finally usable now.
God, please spare me from something that's worse than X.
There are a lot of things that will happen in the future. I'll believe it when I see it in common use.
This whole "Linux on the desktop" thing is so overblown, I wish those who were pushing it would just grow up and stop pushing it like it was here.
Linux and FreeBSD make for great workstations. Desktop to me says "workstation with entertainment potential".... Maybe it says something different to you, but when I want emacs and a compiler, I look to linux (actually, nowadays I look to MacOS, but for several years I did look to linux). When I want to play City of Heroes or Counter-Strike, I look to windows.
When I want a rock solid server that takes a licking and keeps on ticking and is the same no matter where I go, I look to FreeBSD. When I want to make sure that some fringe application compiles or I need specific software support, I look to linux.
Really, using a mix of operating systems allows those systems to be geared towards what they do best. Face it, SDL is no DirectX, and NT's cmd.exe is nothing compared to bash, tcsh or zsh. Linux's development model pales in comparison, stability-wise to FreeBSD's, and MacOS gives you all the benefits of a solid unix and toolset along with a GUI that doesn't suck and is here now.
And all of these systems have drawbacks. MacOS doesn't have a case-sensitive filesystem, and it's level of GUI control really hampers the fine-tuning aspects of the system (/etc anyone?). Using FreeBSD means that you have to really look hard into what hardware you're buying to run the system on. Windows, as we all know, isn't the most stable operating system on the planet, and the amount of free autonomous services that are full featured and stable is very small.
That leaves us with linux. linux tries to do everything for everyone but does all of it at a level lower than all of the systems listed above. Except for hardware support, perhaps. Of course, this does have it's uses. You can get a lot done on a linux box, and they make great workstations. It's easy to find online and has a great support community. There is ample documentation (if you know where to look for it). Linux is a great starter if you want to learn unix.
If you haven't crashed a linux box, you obviously aren't pushing it hard enough.
Unix is not a panacea. Shit happens.
There's two good reasons for this, and a lot of people don't seem to realize it.
Truckers bring you stuff that you need at a much cheaper rate than most other things. Those of you interested in your semi-local organic manufactured food? It comes from truckers. Anyone here ever work for a fast food joint? They get trucks every morning. In other words, a lot of things that you take for granted are brought to you by trucks.
The second reason is quite simple. The truckers are part of this little union called the teamsters. The teamsters get pissed, the truckers stop delivering stuff, and your pocketbook gets hit a heck of a lot harder than any tax could bring.... Truckers are a lot cheaper than pilots, airplane engineers or UPS delivery-men, when you factor in how much time to how much product is being delivered.
As much as some of these taxes suck, there are good reasons for some of them. It takes a relatively small amount of your money to make your life a heck of a lot happier (carried on the backs of others, no less).
Speaking from experience here, if you can't put up with someone who's "annoying", then you're even worse off than they are.
You might want to take some of your own advice.
Perhaps you could read the solutions that were proposed here.
It's not as much about being accurate or training the user as it is presentation of those things.
A trouble ticket system will alleviate your frustration - those with numerous problems will show up in your statistics, and heck, you might even have something to back your angst up. Perhaps if you have a group of these people you could convince IT to save money by sending them to training - effectively getting them out of your hair.
Educating your users in a constructive fashion - believe it or not, gives them more incentive to learn. Irate learners don't learn at all, or the next time, they do the next thing they don't know about themselves instead, which as I'm sure you know causes more problems than it fixes. Of course, this means less time to get the things done that you need to get done.
The comment I was replying to was a very typical conversation. It was not only insulting to the user, but condescending.
Of course, I tried to provide constructive solutions (you know, setting an example and all that), and of course, you prove my point yet again by being condescending.
My father was a mechanic and now manages mechanics. You think they don't get this kind of problem every day? They just handle it much, much better (I've seen it first hand). The reason is, if they don't, people stop coming back and the money stops flowing.
Face it - HelpDesk is the lowest rung of technology jobs. If you want to move on to do something better, take advantage of having a lot of different personalities in your face to gather some patience and people skills so when you move onto something better you're a valuable member of the team.
I'm not saying people are (or should attempt to be) perfect. I just see a lot of people who don't even try. Reading the vast majority of the posts for this article pretty much sums that up.
Nice. :)
It's easier to preach when you have done it and survived. HelpDesk and friends is the technology parallel to working the cashier at McDonalds. You don't get dirty working it, but it sure is annoying.
Good attitudes and constructive insight go far towards getting you a better job in the company, or at least, a higher wage and more priviledges.
Headphones and internet radio.
Works for me.
Would you like to explain what I do, then?
We have another team for content display.
Thank you for solidifying my point!
It sounds like, to me at least, that your problem is more with your management than with the individuals.
Excellent point.
Thank you. It's good to see there are some professionals on /.
Do you get paid to help people, or grade them on their ability to learn?
I mean, if you don't like doing your job, maybe it's time to find a new one, eh?
Have you thought about being constructive?
All of these are good points, but a rephrasing of your speech can go a long way.
One of the tricks myself and another programmer on my team use when #1 starts asking us questions is saying, "I don't remember", or "I don't know". This way no one is insulted and the effect is the same. They're forced to read the manpage.
#2 is a little more difficult. We have a programmer at work who has been there 2 years and still hasn't picked up the primary programming language. I mean, he can't even write code that parses properly. This one is a problem for management, as far as I can tell. Pointing it out to them will save you a lot of hell, but after that, I don't think there's much you can do about that other than politely explaining that the problem is in their code. Point it out enough times, and hopefully they'll get the point. Otherwise, you're left to more devious devices to get the point across. As mentioned before, this one is particularily hard to get across in a constructive way.
#3 is solved by setting an example. Sometimes, describing the problems you go through helps. Sometimes, solving their problems for a while helps, but it really depends on the person. A combination of #2 and #3 are particularily bad, and my example earlier is one of those people. I'm still figuring this one out myself.
The point is, do you want to be angry and bitter all day at your teammates or do you want to get stuff done? Helping your teammates (what a concept!) in a constructive way goes a long way to making the latter happen.
As much as you're going to hate this, in this scenario the IT user is the poor communicator. The user in your scenario doesn't have the skill set to communicate properly.
Ask questions like:
"Can you start the program?"
"Are you using web mail?" ("desktop client" may be too high-brow or technical for them - believe it or not, and most people know what web mail is - obviously there's only two choices here)
The last thing the IT user says is really condescending. This is exactly what the article talks about.
Ugh.
Work for the team, or contract yourself out. IT is like a support medic, if there's no one to support your job is useless.
Either way, soon enough you'll be out of a job (or won't get one) if you're a prick.
I know it's fun to be smug about this, but this is a serious problem amongst programming teams.
Two teams that I have worked in now seem to hold the belief the the size of one's penis is proportional to the amount of stuff you know - technical or otherwise. Yes, even if it's never going to be relevant to the job at hand, and certainly if it can be used to make someone else feel inferior.
I deal with this every day and now I dread coming into work. However, I doubt that relocating will solve the problem, just suspend it for a while as most programmers seem to be very shy to the new person.
I think what the funniest thing is, however, is that when you do it back to them - to see how they'll react, they get just as mad as I would. They simply have no concept of the damage they do - I mean, none of us are perfect and I'm sure I have done it a few times myself, but I work hard to make sure I don't come off like an ass, even when I want to.
My manager of course, fosters this kind of communication - he thinks (I was told this directly) it creates a more productive environment. In my experience, it disallusions me and makes me want to work less, take more vacation/sick days to get out of work, and generally feel unwelcome everytime I step into the office.
What do I do? I'm a lead programmer at one of the top 50 e-commerce websites in the world. I think I can hold my own and then some when it comes to doing my job, that's never been the problem. IOW, I'm not a marketing guy who's technologically illiterate.
This attitude pushes talent away (we've had several talented interviewees not interested in our team after they interviewed), and productivity will only increase when the people with the problem are either excised or learn how to effectively communicate with their teammates.