Slashdot Mirror


Politics-Oriented Software Development

thelesserbean writes "Up at K5 there's a tongue-in-cheek look at the dirty world of software development's inside politics. Presented as a guide, it is actually full of useful advice and lessons learned the hard way. For instance, in the 'Ass-Covering' section, we read: 'The chief difficulty is reaching a satisfactory compromise between ass-covering and not appearing too negative. (...) The emails you sent will be used in evidence against you. Keep a professional tone: before sending any sensitive email take a moment to think how it would look at an industrial tribunal.'"

126 comments

  1. HAHAHAHAH by PedanticSpellingTrol · · Score: 3, Funny

    One of the very first posts for this story at kuro5in was "Oh man, I bet slashdot is going to pick this up".

  2. I'm surprised corporations don't censor email more by ABeowulfCluster · · Score: 1, Insightful

    Seriously, they give email to 'everyone'.. what they should do is give corporate email accounts to select people who have to deal with outsiders.

  3. bad philosophy... by physicsphairy · · Score: 4, Funny
    before sending any sensitive email take a moment to think how it would look at an industrial tribunal.

    Now, if you're a sadist like me, that is probably *not* a good question to ask yourself. Or, at least, I can think of all sorts of stuff to write in my emails that would be friggin' hilarious to hear publicly recited by a no-smiles lawyer at an important tribunal.

  4. Developers! Developers! Developers! by syousef · · Score: 1, Funny

    Developers! Developers! Developers!

    --
    These posts express my own personal views, not those of my employer
    1. Re:Developers! Developers! Developers! by Anonymous Coward · · Score: 1, Funny

      What's your point? What's your point? What's your point?

    2. Re:Developers! Developers! Developers! by Black+Noise · · Score: 2, Informative
      --

      Cig? No, thank you.
    3. Re:Developers! Developers! Developers! by WasterDave · · Score: 1

      You can never get tired of monkey boy.

      Dave

      --
      I write a blog now, you should be afraid.
    4. Re:Developers! Developers! Developers! by vsprintf · · Score: 1

      You can never get tired of monkey boy.

      Not true. Once was enough. Ugh. Didn't he know that Secret had an anti-perspirant powerful enough for men?

  5. Education by feamsr00 · · Score: 5, Insightful

    You know, universities should pay more attention to real world scenarios like this. Maybe then there would be less effort on screwing with politics, and more on doing a good job. Oh well, just add this to the list of things fresh programers get slaped with right out of college.

    1. Re:Education by superpulpsicle · · Score: 2, Funny

      Yah as if management ever read the code. As long as the young guns act slave-ish for the first decade out of school, management will love them.

      I learned the hard way that telling management to get their own fucking coffee made me public enemy #1. Good developer vs bad developer only lie in between how well you handle firedrills and fetch coffee.

    2. Re:Education by AlanS2002 · · Score: 0

      Universities should not worry themselves about such base behaviour, they should continue as they are. Teaching undergrads how to be engineers. It's upper managements responsibility to ensure that all those under them are not acting like f*?!wits to their co-workers/subordinates and if they are fire them.

      --
      Not all conservatives are stupid,
      but it is true that most stupid people are conservative.
      - Hume
    3. Re:Education by bob65 · · Score: 2, Insightful

      Since when did universities become life training institutions? Universities exist for very specialized and niche reasons - if you want to take courses on software development politics, go start your own "life training school".

    4. Re:Education by Aadain2001 · · Score: 1

      I think the engineering departments are doing just fine and are producing decent workers. It's the business departments that need a good "enema" to clear up their practices and reduce the number of "managers" they produce that act like those described in the article. What is the reason for making the design process so political? Personal power and money, the two things business school teaches their students to maximize at all costs. Fix them and a LOT of problems will disappear.

      --
      Space for rent, inquire within
    5. Re:Education by Anonymous Coward · · Score: 0

      I'd also like to add: they should stop letting idiots go through the program. I mean seriously, if you see any idiot on campus, they're likely a business major... ...it's like, ``oh, if you're not smart enough to be in sciences, then go for business''.

    6. Re:Education by Anonymous Coward · · Score: 0

      Heeyyyyyyyy Im in business! (well its computer information systems, so i get an automatic business mgmt minor) Hell, I think Im doing better then the CS majors...

    7. Re:Education by feamsr00 · · Score: 1

      The thing is that they are moving to teaching business processes to the engineers (in this case CS majors). There is a class at my university called "Systems Analisys and Design" and part of the course is that you have to have a project team, with a leader and you must hold weekly meetings and have business processes and turn in forms, status reorts and the like, esentially as if the professor was your supervisor.

    8. Re:Education by AlanS2002 · · Score: 0

      Yeah that do the same at my uni and a little bit more. I think that is an adequate amount of 'you gotta get used to meetings and working in teams', beyond that you're eating away at making people more technically proficient. After all the world already has an oversupply of people who are not competent at what they do, yet seem perfectly able to tell other people how to do their jobs.

      --
      Not all conservatives are stupid,
      but it is true that most stupid people are conservative.
      - Hume
    9. Re:Education by SharpFang · · Score: 1

      Sure you are doing better. But because you are smarter or because it's just vastly easier than CS?

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    10. Re:Education by Anonymous Coward · · Score: 0

      A introductory course on politics (in the software development perspective) might help.

      It's not like the standard CS curriculum is so full that it couldn't admit an additional course.....

    11. Re:Education by zarr · · Score: 1
      esentially as if the professor was your supervisor.

      The problem is, this wont teach you anything about real life, until you get a professor that hates that class and are doing anything he can to sabotage it. Luckily, that happens all the time...

    12. Re:Education by Daniel+Dvorkin · · Score: 1

      Yes, exactly. Business is about the easiest thing you can major in, in any college, at any level. It's "education" for people who want a degree but are scared of using their brains.

      A number of people who were in my undergrad CS classes with me took upper-division B-school courses. They always got A's, and didn't have to work very hard for them, either. Now imagine how your typical management major would do walking into an upper-division CS course.

      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
    13. Re:Education by Daniel+Dvorkin · · Score: 1

      Bingo. The most important line in the article, IMO, and one that every techie should have burned in his brain:

      "Remember that managers are essentially secretaries who can fire you."

      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
    14. Re:Education by khallow · · Score: 2, Insightful

      Actually, I get the impression that some universities teach their students just fine. Look at how hard it is to prove cheating in many universities. That's life experience training if I ever heard of it.

    15. Re:Education by Anonymous Coward · · Score: 0

      I AM doing better, the majors are the EXACT SAME except I take accounting/bussiness courses instead of calculus courses. Dont EVEN begin to say that accounting is easier then calculus. You try wandering into your local beancounters office and ask to help out. And as for management, I really dont think managing people is the same as managing code. You know, they dont make the open source brain (hell if that were the case, a "social engineer" would be a much more sought after career!)

    16. Re:Education by vsprintf · · Score: 1

      Since when did universities become life training institutions?

      About since the time there were universities? They are supposed to train people for a professional life in the real world, at least from the charters I've seen. Not that it really works.

    17. Re:Education by vsprintf · · Score: 1

      Yes, exactly. Business is about the easiest thing you can major in, in any college, at any level. It's "education" for people who want a degree but are scared of using their brains.

      Actually, I think it's the education major that you duck into when failing your real major. Strangely enough, I never had a single professor whose major degree or doctorate was education. That's not to say I have a high opinion of MBA's - I don't.

    18. Re:Education by Tablizer · · Score: 1

      If universities taught that stuff, then they would have to admit that the world is F'd up. Not a good way to get prestigious funding.

    19. Re:Education by jtwJGuevara · · Score: 1

      Depends on the institution. My university, when it was founded, was originally a teacher's college. Ever since then it has prided itself on the quality of its education department. I dated a girl who was an education major and now currently live with my best friend who is an education major. The amount of time, work, and study they put into their courses is quite substantial - even above the work I did as an information systems major.

    20. Re:Education by vsprintf · · Score: 1

      I suppose YMMV with the school. We had a number of students transfer from CIS to education when they didn't make the cut. CIS required a "B" in all core classes, while education just required a passing grade. My university has high standards for CIS grads.

      I know I'm not too impressed with my kids' teachers. Some have been good, but some can't spell or even write a complete sentence. It's sad when they write letters to the local newspaper complaining about their pay and can't write a coherent paragraph. Some grammar Nazi teacher is bound to pick this comment apart. :)

  6. I thought you meant... by skids · · Score: 1

    This kind of politics-oriented software devel
    here

    (With apologies for the blatant plug.)

  7. Sounds good, but far from air-tight advice... by WaterBreath · · Score: 5, Insightful

    From the article:

    Also remember that someone who points out a problem early is a troublemaker; someone who fixes a problem at the last minute is a hero.

    That's a dangerous line to tread, because there's a third option: someone who identifies a problem at the last minute and can't fix it in time is shortsighted and incompetent.

    1. Re:Sounds good, but far from air-tight advice... by BlurredWeasel · · Score: 2, Funny

      Obviously, the solution: be smart and identify problems early, and solve them early, but publicly identify and show the problem at the last minute, go back to your cube, read slashdot for 3 hours, and then check in the new code and claim your raise/vacation time/complimentary release t-shirt.

    2. Re:Sounds good, but far from air-tight advice... by Anonymous Coward · · Score: 1, Funny

      The truly machiavellian add problems which will be easy for the creator to solve later, don't say anything about them, wait till last minute, or bet yet when the customers are screaming and fix the problem quickly and get the credit for being a hero.

    3. Re:Sounds good, but far from air-tight advice... by pixel_bc · · Score: 1

      On the other hand, someone who points it out after the fact AND can't fix the problem is usually labeled a "pundit" or "consultant."

    4. Re:Sounds good, but far from air-tight advice... by KontinMonet · · Score: 1

      All very well, but what if it's an obscure design problem and the code has already been developed?

      --
      Did he inhale?
    5. Re:Sounds good, but far from air-tight advice... by SharpFang · · Score: 3, Funny

      Fix: Report the problem early, but don't shout about it. Whisper it. Make the information get lost in the early phase. Phrase it as "There is a risk of... but this problem should be taken care of in a later phase of the project", or "We have to take * into consideration as well". Then it's "I said it would fail! Why didn't you listen?" Then even if you can't fix it on time, the manager who neglected the memo and assigned you other, less important work is to take the blame.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    6. Re:Sounds good, but far from air-tight advice... by fishbot · · Score: 2, Interesting

      That's a dangerous line to tread, because there's a third option: someone who identifies a problem at the last minute and can't fix it in time is shortsighted and incompetent.

      Sadly, that's why if a problem is found at the last minute and cannot be immediately fixed by the finder, it is never mentioned and the product ships, bugs and all.

      In my varied career as various types of software developer (web, database, UI, engineering, etc) I have found that the single most destructive force in software development is fear of retribution by clueless idi^H^H^Hmanagers.

      When an engineer cannot create without being labelled a disruptive force, cannot mention known problems without being labelled a trouble maker, and cannot ensure quality without being labelled incompetent, it is a sure sign the the prime reason for software failure is incompetent management who do not understand the, how shall I put it, unique mindset of the average engineer.

    7. Re:Sounds good, but far from air-tight advice... by khallow · · Score: 1

      Sounds like something for the customer to find out. We can always fix that in the Crud 2.0 release.

  8. ha ha ha! by RLiegh · · Score: 1

    I remember the days when it was kuro5hin who was second fiddle to slashdot!

  9. Government by digitalchinky · · Score: 2, Interesting

    The good thing about arse covering is that it works both ways - management send you a metric crap load of hate mail, store it, print it, keep it.

    Management meeting, threatened to sack you for simply existing, sideburns too long, whatever.

    I've think I've been on both sides of the fence long enough to know government is about running favors for each other.

    1. Re:Government by jokumuu · · Score: 1

      Well, the sad truth is, CYA seems to be the norm in larger organisations. I have mostly worked in smaller ones where actually doing your job is important, but the times I have worked in or for a larger organisation I have noticed that you need to save all your correspondance and make sure everything is in a traceable format.

  10. Re:I'm surprised corporations don't censor email m by froggero1 · · Score: 1
    Not a bad idea... but there is a TON of internal email traffic.

    Maybe a better idea would be to edit all the email server's /etc/hosts file to point hotmail, yahoo, and gmail to localhost?

    --
    ~/.sig: No such file or directory
  11. CYA can be a dragged... by __aaclcg7560 · · Score: 5, Interesting

    Covering Your Arse (CYA) was a big thing at the last company I worked for. Being a lead tester, I had to document everything that could be used against the developer to put the blame on them if the project screws up. The developer was also doing the same thing to me. That made crunch time in the last two weeks of the project particularly difficult since we're being nice and stabbing each other in the back at the same time.

    The department manager has the option of casting the blame on the lead tester and firing him if QA loses the blame game. I didn't like that option and documented everything that the manager did (but usuually didn't) do to protect my job. One manager got himself promoted out of the department because he thought I was going to get him fired on numerous occasions. (Not surprisingly since he was trying to screw up my projects to get me fired.) The next manager wrote me up for insubordination when he found out that I was documenting his actions when he explicitly told me not too. I quit my job soon after that. After six years of that crap, there has to be something better out there.

    1. Re:CYA can be a dragged... by NemesisStar · · Score: 4, Funny

      "The next manager wrote me up for insubordination when he found out that I was documenting his actions when he explicitly told me not too."

      If a manager asked that of me, I'd ask for it in writing.

    2. Re:CYA can be a dragged... by Rattencremesuppe · · Score: 1
      After six years of that crap, there has to be something better out there.

      Yes, there are not only big corporations out there. I guess that small / medium sized enterprises simply don't have the resources for such retarded games.

    3. Re:CYA can be a dragged... by eric76 · · Score: 2, Funny

      I knew one programmer who had a boss who was continually giving conflicting orders and trying to add useless projects to his workload.

      So he went out and bought a tape recorder and took it to the office.

      Whenever his boss came in to his office, he'd turn the tape recorder on and hold the microphone up for his boss to speak into.

      His boss would get pissed off and turn around and leave.

    4. Re:CYA can be a dragged... by khallow · · Score: 1
      If a manager asked that of me, I'd ask for it in writing.

      I was thinking exactly the same thing. Maybe the prior poster actually did that.

    5. Re:CYA can be a dragged... by __aaclcg7560 · · Score: 2, Informative

      Maybe the prior poster actually did that.

      That manager wouldn't put anything in writing. I wanted him to put in writing that I was required to work 80+ hours, seven days a week until my project was done. That, of course, would be in violation of the company's 60 hour/six day policy.

      About one-third of the department was trying nail the manager on anything, and (last I heard) about half of them choose to leave instead. Upper management isn't doing anything since the coporate office loves the manager's bottom line results. It takes a while for results of experienced people walking out the door to show up on the bottom line.

    6. Re:CYA can be a dragged... by Anonymous Coward · · Score: 0

      The last permanent job I had, I had been working at this company for over 6 years. I had a new manager and although I was promised a raise, I didn't get one. When I asked why, I was told that I had been given a salary cap. I was furious that I was not told about the salary cap from my manager when he found out about it. I learned that he kept it to himself so that I would not leave the department.

      I reported this to HR who agreed that he should have told me about the salary cap earlier. Because I had told HR that I was unhappy with the way I was being managed, my manager found out about it and put me on probation for insubordination and a bad attitude. Since my company had a policy that stated people can be put on probation for ANYTHING, HR approved the probation. I was told that either I quit and they will give me severance or they will fire me for my bad attitude. I quit. I also figured there must be something better out there.

    7. Re:CYA can be a dragged... by serutan · · Score: 1

      Of course I don't know the poster personally, but I have known a few with the same attitude, who say similar things like, "the manager got himself promoted out because he thought I was going to get him fired..." and every one of them, without exception, been full of shit.

    8. Re:CYA can be a dragged... by __aaclcg7560 · · Score: 1

      I'm only repeating what my new manager told me what I did to my old manager, and another manager confirmed what my new manager said (but not in writing). That was surprising since the only thing I was trying to do was my job. It's not my fault that the manager got in my way. ;)

      Besides, everyone knows that QA people are liars. Ask any marketing people when confronted with a class A bug report. :)

    9. Re:CYA can be a dragged... by NateTech · · Score: 2, Interesting

      This all comes back to the fact that most management can't seem to learn -- you shouldn't have a job.

      Sorry, but Quality Assurance is an attitude, not a department.

      Making it into a Department is a sign that people actally WANT someone to blame everything on, instead of taking the correct amount of time and resources to design and build correctly in the first place.

      --
      +++OK ATH
    10. Re:CYA can be a dragged... by Lonewolf666 · · Score: 1

      Heh.
      In the company I work for, we have a "Software Quality Assurance" department whose employees don't understand software development. As in, they are not programmers, let alone experienced software architects.
      All they (can) do is check the documentation for consistency and completeness. Admittedly they are good at that, put in a wrong date or forget a reference and they will find it.

      --
      C - the footgun of programming languages
  12. Quite good article but forgot the main reason. by luvirini · · Score: 5, Insightful
    Having read the article have to say that most of what is said is correct and unfortunately true.

    The only part that I really disagree with is the first point 1. Most software fails because it is designed to fail

    By the quite long experience the real reason why projects fail is much simpler: STUPIDITY

    Be that stupidity of those who defined the project, stupidity by those implementing, stupidity by the management, stupidity by the client, stupidity by subcontractors, stupidity by equipment providers, stupidity by...

    I am sure you get the point.

    1. Re:Quite good article but forgot the main reason. by jokumuu · · Score: 1
      well, lets not forget the other thing Incompetence

      Unfortunately the "Peter Principle" and other sources of people who are not qualified are well and alive.

    2. Re:Quite good article but forgot the main reason. by khallow · · Score: 1
      By the quite long experience the real reason why projects fail is much simpler: STUPIDITY

      Well, would the outcome be any different if people were bright? I bet not.

  13. Qualified people by Anonymous Coward · · Score: 2, Insightful

    This type of stuff is why the government normally has so few qualified people.

    The brainiac folks know how insidious politics like this are, and simply wont put up with working at a place that doesnt judge you on your skills.

    Its just a theory, but it explains an awful lot :)

    1. Re:Qualified people by rice_web · · Score: 1

      Ahem, I have a government job :)

      It's the best job I could ask for, save that the pay could improve. I have a great deal of flexibility, my work is appreciated and used extensively, and I've had enough time in between projects to write widgets that can be used in future programs, thereby reducing the time needed for the next project. I've worked there four years, starting with my freshman year in high school.

      --
      The Political Programmer
  14. Re:I'm surprised corporations don't censor email m by plover · · Score: 4, Interesting
    Lots of companies have had the problem mentioned in the article. While it's not exactly "censoring", ours has set up Exchange server to DELETE email older than 30 days, and called it a policy.

    Nobody can pull out the old emails and pull a trick like this if they've been deleted. And if you save them, you're violating policy, so you're screwed either way.

    Talk about a clusterfsck. My problem is I get documentation in emails, and that doc gets wiped after 30 days if I forget to save it somewhere.

    --
    John
  15. Read 'em and wipe. by Anonymous Coward · · Score: 2, Funny

    "Politics-Oriented Software Development"

    I work in the toilet-paper industry doing software development. I know all about ass-covering.

    1. Re:Read 'em and wipe. by Anonymous Coward · · Score: 1, Funny

      Ugh, you only know about ass wiping.

      I on the other hand, work in the diaper industry.

  16. nothing new by Yonkeltron · · Score: 5, Insightful

    i might get modded down for this but the thing i find most interesting is that so many of the points being attributed to software-development in the article seem to be applicable in any project in any environment.

    i help out in a school district and every single meeting i go to has me thinking about the same types of things. who is in it for education's sake and who just wants a feather in their cap?

    maybe it's more of a human element that just happens to be looked at here in the context of programming.

    --
    Keep the faith, share the code
    1. Re:nothing new by 1u3hr · · Score: 1

      I was working a news aggregation website; we had people sending us articles, some just cut and pasted, some translated, some evidently scanned faxes through OCR. So predictably there was a quality problem, as particularly the OCR articles tended to be full of literal gibberish. Not to mention getting three or more copies of the same story via different methods. I pointed this out to my boss, and he told me to document it and send an email to them each time. It had zero impact, as the staff at that office were simply motivated to send the greatest volume of articles in the shortest time; that's what their bosses wanted, and they complained when we didn't get their stories up on the site quick enough. The idea that having garbage on our front page might not be good just didn't matter, what they wanted was lots of "fresh" content. (Similar to Slashdot, I suppose.) Whether they were legible or useful didn't factor into it, so I just made a lot of enemies for myself. After a few months, like most dotcoms, we went bust.

  17. Re:I'm surprised corporations don't censor email m by Bill+Dog · · Score: 4, Informative
    Nobody can pull out the old emails and pull a trick like this if they've been deleted. And if you save them, you're violating policy, so you're screwed either way.

    Run away, if you can, from places like that. TFA says to keep a daily record of what you've done. I've worked at a place where that was violating policy, and was a firable offense. Needless to say, I ran away, when I could. (They also prohibited managers from saying anything good about people on their reviews (I'm not joking or exaggerating) -- basically, they wanted to be able to fire you in a trouble-free manner, and they wanted you to help!)

    --
    Attention zealots and haters: 00100 00100
  18. Favorite line from TFA by Anonymous Coward · · Score: 0

    "Remember that managers are essentially secretaries who can fire you."

    1. Re:Favorite line from TFA by QuestorTapes · · Score: 1

      Call me stupid if you like, but vas ist 'TFA'?

      Texas Forensic Association?
      Tennessee Firearms Association?
      Table Footie Association? (I like that one)
      Tampa Fencing Academy?
      Trifluoroacetic acid?
      Trees For Africa?
      Time Finance Adjusters? (seems to be repo men)

      (I felt whimsical; posted a selection of the more interesting sounding Google results for 'TFA' ;> )

    2. Re:Favorite line from TFA by TheophileEscargot · · Score: 1

      The F-ing Article. As in RTFA.

    3. Re:Favorite line from TFA by Anonymous Coward · · Score: 0

      Call me stupid but what does RTFA mean?

    4. Re:Favorite line from TFA by Anonymous Coward · · Score: 0

      It means "Fuck you, kid"

  19. Misleading title by Stormwatch · · Score: 3, Funny

    Politics-Oriented Software? Oh... I thought it was about the developement of something like Campaign 84 for the Colecovision...

    1. Re:Misleading title by SpecialRider · · Score: 1

      "Politically Oriented Software Development"....instead we could call it "Politically Object Oriented Software Development"......
      Then accurately refer to it as POO..

  20. This should help... by Anonymous Coward · · Score: 0

    ...I'm starting my new job on tuesday, and have met some of this crap in my last job (in my last workweek) -
    especially the "Why on earth did you do this (3 months ago) ?"-part rings many bells...

  21. What a good article by turgid · · Score: 2, Interesting
    That is a really good, well-written and insightful article. I wish I'd seen it 10 years ago.

    You young ones would do well to read it carefully and think about it. It will help you not only to survive but also to move up the food chain.

    Remember, if you do things "right" in your current job, even if you get fired for it (i.e. keeping a record of your work, achievements, problems, conflicts, etc.) it will help you when you go to get your next job.

    You can be choosy about who your next employer is.

    A good idea is to be a member of a professional organisation, such as the Britsh Computer Society, where you can achieve recognition for your efforts as you go along. It's more evidence to take with you when you go looking for a new job when the inevitable happens.

  22. Wrong Attitude by cowtamer · · Score: 3, Informative
    This article is quite exemplary of why software developers (i.e., "The Slashdot Crowd") have very low credibility with management.

    It is not because they dislike management (although I am sure that has some role). Nor is it because the Machievellian environment described in the article is inaccurate. It is because they prefer complaining about problems to solving them.

    Here's my version:


    "Politically Oriented Software Development"


    0) Don't Tick Anyone Off


    1) Be Smart, Willing, Able, and Nice to work with (SWAN)

    2) Don't add negative value. Remember that you are being paid to help your group/company make money. If this is not kosher, move on and join the Peace Core.

    2) Avoid sending e-mails whenever possible. If you must, keep them extremely neutral. Use phone calls and personal conversations for any type of discussion or criticism--technical or otherwise.

    3) Make sure your work is visible, and helps your group's visibility. Well developed, flexible software that meets the customer's needs provides the ultimate visibility.

    4) Disabuse yourself of the ridiculous concepts of "Customer Requirements" and "Use Cases." They will not come. If they do, they will mutate into uselessness VERY QUICKLY. Avoid people who believe in such nonsense. Instead, thoroughly analyze the problem, the customer, and the market and create your own "requirements."

    5) Innovate. Do "cool stuff" (prototypes, new concepts, algorithms, research) whenever there is a lull. If you do not do this, you will either get replaced or doom yourself to a life of mediocrity--probably both. Leverage the "cool stuff" at an opportune time to help your group.

    And if you think management is unnecessary (as many commenters on K5 seem to), go ahead and start your own _successful_ company.

    (BTW, IANAM--I am Not A Manager).

    1. Re:Wrong Attitude by Raseri · · Score: 3, Insightful
      I can sum up your post in 8 words:

      "Roll over and take it in the ass."

      I have had jobs in restaurants, factories, warehouses, IT, and even telemarketing, and almost all of my past employers engaged in the sort of disgusting behavior described in the article. It's never enough to just go to work, do your job, and go home. Some insecure prick above you will not stand for it and will do whatever he can to get rid of you, legal or otherwise.

      One of the things not mentioned in the article (at least not that I can recall) but worth pointing out is that this childish nonsense actually increases in frequency with larger companies, where there is typically more room for advancement. The best way to avoid this shit altogether is, as you mentioned, to start your own company; however, that is not plausible for most people, due to financial reasons, not having business know-how, et cetera. Unions aren't necessarily the answer either, as your union rep may be in with the person out to fuck you over (this was actually the case when I worked for a large plumbing-products manufacturer in Wisconsin). That sort of situation is, in fact, worse than no union representation at all because you pay your union dues every month and end up getting railroaded anyway.

      Back to your post now. I find it very telling that you chose the phrase "wrong attitude." You claim you are not a manager, but this is exactly the sort of empty phrase that managers use to cast non-asskissing employees in a negative light. "Attitude" is purely subjective; there is simply no way to quantify it. Therefore, any discussion of "a bad attitude" in regards to an employee's job performance can be interpreted as: "This person is good at what she was hired to do, but I don't want to say anything good about her because she doesn't kiss my ass." If it's true that you're not a manager, my guess is that you wish you were.

      </rant>


      Sorry for the long post, but I think you're dead wrong on this one.
      --
      Writhe your naked ass to the mindless groove.
    2. Re:Wrong Attitude by SharpFang · · Score: 2, Insightful


      0) Don't Tick Anyone Off

      okay.

      1) Be Smart, Willing, Able, and Nice to work with (SWAN)

      Be the pack mule of the team. Remember the budget rule? Spend less than your budget, have your budget cut next year. Slightly overspend and you have a chance for your budget to be extended. Same applies to work load. Do everything on schedule and next time the schedule will be tighter. Show you're willing and able to take project A and they will give you project B because it seemed you'd have too much slack.

      2) Don't add negative value. Remember that you are being paid to help your group/company make money. If this is not kosher, move on and join the Peace Core.

      If it's designed to fail, all the blame will be on you anyway.

      2) Avoid sending e-mails whenever possible. If you must, keep them extremely neutral. Use phone calls and personal conversations for any type of discussion or criticism--technical or otherwise.

      When it comes to blame, it's their documents vs your word. What is stronger?
      The key is to make the trail contain what you WANT it to contain, no matter what the communication says. Email them "I predict that can't be done on schedule", then call them 5 mins later stating you caught a bug in your calculations and it can be done after all. The email remains, the call is gone.
      3) Make sure your work is visible, and helps your group's visibility. Well developed, flexible software that meets the customer's needs provides the ultimate visibility.

      Yes, except - NOT TOO EARLY. First gain enough influence by quiet means. Then smash the others and remain on top. If you shout "Look, Daddy, Look at me!" you will get slapped by bigger kids really fast.

      4) Disabuse yourself of the ridiculous concepts of "Customer Requirements" and "Use Cases." They will not come. If they do, they will mutate into uselessness VERY QUICKLY. Avoid people who believe in such nonsense. Instead, thoroughly analyze the problem, the customer, and the market and create your own "requirements."

      This method gives your team and company automatically a long line of "maintenance and correction" opportunities. If they say Ethernet and you think "WiFi will be easier", prepare to crawl with the TP wire waist deep in snow in -30C because the WiFi antenna has frozen.

      5) Innovate. Do "cool stuff" (prototypes, new concepts, algorithms, research) whenever there is a lull. If you do not do this, you will either get replaced or doom yourself to a life of mediocrity--probably both. Leverage the "cool stuff" at an opportune time to help your group.

      You'll be the first one to blame.
      Nobody got fired about choosing Microsoft. Implement any experimental technology and whatever fails in the project (no matter how unrelated) it will be blamed on the technology and you.

      (BTW, IANAM--I am Not A Manager).
      Yes. You're redundant.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    3. Re:Wrong Attitude by KontinMonet · · Score: 5, Interesting

      I am a manager and I have seen this sort of politics all too often. SWAN is all very nice but unless you have support all the way up the chain, you end up spending vast amounts of time fending off back-stabbers, however SWAN you might be.

      Phone is better than email, but email must be used when people outright lie about what took place. If you confront people who are simply out to sabotage your every effort (perhaps because you got 'their' job), email trails and signed off notes in meetings followed by an email listing actions are mandatory. Otherwise, the job will not get done.

      Most people in this business strive for well-developed, flexible and accurate software. Unfortunately, 95% of the time, for some reason we inherit hurried, buggy and inflexible software. And we (as managers) are still expected to perform miracles in very limited timescales with despondent developers. Telling senior management you'd like 9 months and another 1.5 million to get their piece of shit looking like a shiny gold nugget just doesn't go down well, however diplomatically you put it.

      Use cases work well if they are targeted correctly. They can be very useful as an overview of the system to users. And how am I supposed to write my own requirements when the customer has a very different view? Customer requirements are a result of back-and-forth discussions, they know the market and the process better than you do.

      Innovation is all very well, but it has to be relevant. As a manager, if there is a lull, there is nearly always a ton of other things that have more priority.

      Finally, in my experience, most management in the software filed is dire. For example, in one place when I arrived, a project was already going badly. I had senior (and board level) managers coming to my teams and asking them to 'do just this little bit of documentation' or 'fix my laptop'. Senior managers who know just a little about software decided (over my objections) that the team should fix bugs their way (ie the stupid way). They would arbitrarily move people between teams working for different clients (again over my and other people's objections). It all ended up wasting large amounts of my teams' time in critical situations. On those occasions when I pointed out and proved time was being inefficiently used, I got flak for not being a 'team player'.

      After nine months of this crap despite repeated pleas and discussions and explanations of why they were jeopardising the project, the CEO started a 'blame hunt'. In a crisis meeting in the board room, he pointedly asked me that if the project slippage and possible loss of a big client was not my fault, then whose was it?

      By now, I'd had enough of diplomacy. He was not the one facing the ire of the client on a daily basis, I was. So I said it was his fault. I hadn't hired the people who were screwing up this project, he (and other senior management) had. If the buck stopped anywhere, it was with him.

      I expected to out of the door that day. After they found out what happened (this stuff rarely stays quiet), my teams and co-workers expected not to see me the next day either.

      What actually happened was that the owner of the company (who was in another country) sort of agreed with me. I outlasted the CEO and a number of the senior management. But, unfortunately, the damage had already been done and we lost the big project. I moved onto other things in the company and saw the owner a lot more. The company started going through a bad patch and shrunk considerably. Other parts were being poorly managed too. I saw the writing on the wall and jumped ship.

      --
      Did he inhale?
    4. Re:Wrong Attitude by QuestorTapes · · Score: 1

      A few comments:

      > 0) Don't Tick Anyone Off.

      If you do, apologize. Even if it might not be -really- your fault, apologize, and do it sincerely.

      > 2) Don't add negative value. Remember that you are being paid to help your group/company make money. If this is not kosher, move on and join the Peace Corps.

      Or other organization. I recently turned down an interview with a legal firm where I would have had to design software to more effectively screw people with the legal system. A week or two later I got an interview with a non-profit organization, doing something useful.

      > 2) Avoid sending e-mails whenever possible. If you must, keep them extremely neutral. Use phone calls and personal conversations for any type of discussion or criticism--technical or otherwise.

      Excellent point. Also, just get in the habit of using the phone; most non-techies prefer it. Follow up by email to confirm understanding of points discussed.

      > 4) Disabuse yourself of the ridiculous concepts of "Customer Requirements" and "Use Cases." They will not come.

      Don't entirely agree. Don't expect that requirements will be fixed in stone or even right the first time, though. They -will- evolve during development.

      > 5) Innovate. Do "cool stuff" (prototypes, new concepts, algorithms, research) whenever there is a lull. If you do not do this, you will either get replaced or doom yourself to a life of mediocrity--probably both. Leverage the "cool stuff" at an opportune time to help your group.

      Excellent advice. Another thing that often meets this cool/fun/innovative part is programming tools and utilities.

      Good points, cowtamer.

    5. Re:Wrong Attitude by Hognoxious · · Score: 1
      And how am I supposed to write my own requirements when the customer has a very different view? Customer requirements are a result of back-and-forth discussions, they know the market and the process better than you do.
      They should be the result of back-and-forth discussions. However sometimes the customers don't know, sometimes they can't tell you, sometimes they won't tell you[1].

      I've just completed a chunk of work like that where the lead analyst had to basically, by prior knowledge and guesswork, work out what the requirements were. And he got it mostly right, too.

      [1] For some strange reason they suddenly become much more articulate when the opportinity arises to explain why what you've produced isn't what they want.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    6. Re:Wrong Attitude by SharpFang · · Score: 2, Insightful

      Oh, that's wonderful!
      Write down every piece of the bullshit the customer says.
      Then write the program EXACTLY to the specs.

      And when they complain, write down everything again, and charge them a nice $$$ for "program extension" over everything that you do that wasn't in the original specs. Point it out exactly.

      The original contract was that the software does A, B, C and D, and D is done in X way. (though obviously it's stupid. You might have suggested it's stupid, but accept it if klient disagrees!) Now client decides C is redundant, D should be done in Y way and E and F are needed. So charge them for all that - it wasn't in the first specs...

      Next time they will state clearly what they really want.

      Remember: A correct program is not a program that does what the user thinks it should do. A correct program is a program which does everything (and nothing beyond) what the specification says. This is the only metrics. If you start guessing, you get the blame.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    7. Re:Wrong Attitude by cdrguru · · Score: 1
      If you think you're getting paid by the line of code, you're wrong. I don't care what arrangement you have. Internal development for a company, contractor being paid hourly, independent consultant paid for a job, it doesn't matter.

      What matters is that the end result is usable and fits what is needed. If you can get away with "making it the way they described" and the doing it over "the way it should be" once, you probably won't get away with it twice. Serious relationship-shortening move. Oh, you might not get fired but you won't be relied upon. If they have a choice - where you're a contractor - they will just find someone else.

      This is the kind of short-sighted nonsense that people came up with in the late '80s and '90s. The result - the dotcom experience. Sure way to have a company burn through a lot of VC money "getting it right" or (worse) "accepting the limitations". Where are those companies today? Right.

    8. Re:Wrong Attitude by roman_mir · · Score: 1

      Disabuse yourself of the ridiculous concepts of "Customer Requirements" and "Use Cases." They will not come. - this is a completely useles suggestion in itself. Developers are not the only ones working on a project. You have your BAs and you have your testers. If there are no documented use-cases (stories in XP,) it is impossible to measure the progress, it is impossible to set the goals, it is impossible to prioratise and it is impossible to write test plans. Let alone that it is impossible to design and code.

      Most of the time you don't have access to the real customers, the access to customers in the project development chain is delegated to the BAs.

    9. Re:Wrong Attitude by johnjaydk · · Score: 4, Informative
      And how am I supposed to write my own requirements when the customer has a very different view? Customer requirements are a result of back-and-forth discussions, they know the market and the process better than you do.

      I have a very simple system for figuring out requirements.

      First throw out the spec. it's either written by the users (and they don't know how to write it) or a manager (who don't have to write the code himself). Anyway the spec is wrong incomplete and misleading.

      Go see the users themselves (great excuse: I need to clear out some details) and have them TEACH you how to do the relevant part of their job. Then you know the environment, the lingo and get into a ping-pong on requirements and possibilities. This part can easy turn into the most interesting part of your day to day work and you end up knowing your business top-to-bottom.

      Second: The version 2 excuse. Promise two releases: rel 1 that only covers the bare essentials and rel 2 that covers the whole shebang including a gold-plated kitchen sink. The trick is to be agressive about moving features to rel 2 and focus on rel 1. When rel 1 is rolled out only the morons will complain about the missing sink or it's lack of gold. These morons are easily marginalised in a debate on return on investment on sinks wiht gold plating.

      These methods only works on reasonable small projects for inhouse consumtion. YMMW etc.

      --
      TCAP-Abort
    10. Re:Wrong Attitude by zwnbq · · Score: 1

      When rel 1 is rolled out only the morons will complain about the missing sink or it's lack of gold.

      This is an excellent strategy for dealing with the people who are bad at prioritizing requirements with respect to ROI.
    11. Re:Wrong Attitude by Anonymous Coward · · Score: 0

      This article is quite exemplary of why software developers (i.e., "The Slashdot Crowd") have very low credibility with management.

      I am sure I can come up with articles that are exemplary of how management (i.e. "the MBA crowd" ;-) ) have credibility in the engineering part of the slashdot crowd, just not when it comes to making software development processes not fail. I would say lack of affection (dislike) would be more descriptive of the relation between these two "crowds". The "they must be good at whatever the hell it is the do do" sentiment which I have personally sensed on both sides shows this isn`t just so much about lack of credibility as about a lack of affection.

      It is not because they dislike management (although I am sure that has some role). Nor is it because the Machievellian environment described in the article is inaccurate. It is because they prefer complaining about problems to solving them.

      Who are the problem solvers in the managers/engineer relationship? There are two parts to solving a problem. There is the building of a solution, but before that there is always the understanding of the problem. I feel strongly that the most important and complicated part of an engineers job is the understanding part. For many people problems in software development are little more complicated the "processing data x". I believe that what separates the engineers from the programmers/managers/rest of the world is that engineers will start asking where data x comes from now, where it goes to after processing, what data and its processing, source and destination looked like before, what they will look like in the future. There is only one way of unearthing complete problems and that is talking about them. You can call it complaining, problem brainstorming, whining the point is, it needs to be done before a complex problem can be solved.

      My answer to my own "who solves problems" question would be that ideally both managers and engineers solve problems together. Many parts of the problem a software development can be understood and solved by engineers in the blink of an eye. These tend to be the technical problems. Think of OO relational impedance mismatch, memory management, performance bottlenecks, synchronization problems or whatever. There are other parts of the problem that need to be understood well in order to solve it. These are often social/organizational/structural in nature. Think of which other companies should the software interoperate with, where are the priorities? Here managers could make themselfs useful provided they manage the communicate with engineers. Afterall they can communicate with the rest of the organization and still come out with solid decisions.

      This article in itself is the best illustration of my point I could wish for. It contains a not to short description of a problem and then a crucial step to a solution. Most importantly it has a very complete analysis of the problem. In my opinion this article says there is a problem not just with failing projects but with failing projects and programmers getting screwed in the ensuing "blame game". It identifies the screwed programmers as the most immediate problem, not the failing projects. This is a strategical decision, one I think many programmers would agree with. Its because of this more complete understanding of the problem that a simple and elegant but incomplete solution to the problem is possible.

      Now, this article doesn`t strike me as being intended as accurate, it appears to be intended one-sided rather then inaccurate. For example it doesn`t deal with projects that go well. I think this is a smart deliberate choice by the author. I think that the best way to get an accurate picture of the environment in which most software is developed is to read "optimistic" and "pessimistic" texts because the combination shows the really important part which is the disagreements in this field. There are many all to optimistic text about the software development p

    12. Re:Wrong Attitude by Anonymous Coward · · Score: 0

      If you do, apologize. Even if it might not be -really,- your fault, apologize, and do it sincerely.

      I tried that, and I'm not sure I'm willing to do it again. Apologize is another way to saying that it is my fault, which puts the blame back on me. I won't be surprised if this is another year that I don't get a raise.

      In the mean time I've learned:
      Do not offer constructive criticism

      the other person will take it as an attack and look for ways to knock you down.

      Posted anonymously because those who make the decision on my raise are known to read slashdot. (I don't think they know who I am, but better safe than sorry) I don't play politics well enough to turn this public attack to my advantage, while they can turn it against me.

    13. Re:Wrong Attitude by Anonymous Coward · · Score: 0
      If this is not kosher, move on and join the Peace Core.
      Nah, they're too hard-corp for me.
    14. Re:Wrong Attitude by QuestorTapes · · Score: 1

      I tried that, and I'm not sure I'm willing to do it again. Apologize is another way to saying that it is my fault, which puts the blame back on me.

      Sorry to hear that. When that happens, and I agree it does, I think it's an indication that the corporate culture is too unhealthy to stay with long-term.

      My feeling is that work is too big a part of your life to spend it doing things you hate.

      Good luck to you.

    15. Re:Wrong Attitude by Hognoxious · · Score: 1
      Serious relationship-shortening move.
      Not as serious (certainly not as immediate) as telling them "no". Some clients are just assholes, some are stupid and some are stupid assholes. If your experience is otherwise you're either very new to the game or very lucky.
      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  23. Politics is typical for the US by bvankuik · · Score: 3, Interesting
    I'm working for a North-West European branch of a large multinational with HQ in the US. The general opinion here is that the game of politics is played by the Americans. When we are at work without them, we just do our jobs and if the project fails, it's the fault of the team and not one of its members. Any disagreements or irritations (which WILL come out when the going gets tough) are treated with extremely blunt honestness; first discussed in private to get the sharp edge off, then in the team.

    Yes, that includes QA saying things to developers like "you don't even smoke-test your work and I'm NOT going to do that for you", or (developer to manager) "why do you ask with what I'm busy? You're the project manager".

    Of course, you have to let some steam off once in a while by joking and horsing around.

    1. Re:Politics is typical for the US by Anonymous Coward · · Score: 1, Interesting
      I work in the US branch of a large multinational based in Europe. We blame all our PHB problems on the Europeans.

      My guess is that in both cases the source of politics isn't the location of the global headquarters, it is the headquarters.

    2. Re:Politics is typical for the US by Anonymous Coward · · Score: 0

      Actually, most political situations arrise from dealing with generalizing morons like yourself.

    3. Re:Politics is typical for the US by bvankuik · · Score: 1

      Either you can't read or this is a bad troll. I was not talking about blaming. I was talking about taking responsibility, preferably as a team.

    4. Re:Politics is typical for the US by bvankuik · · Score: 1

      Reading back the original post, I was indeed overly generalizing.

    5. Re:Politics is typical for the US by bvankuik · · Score: 1

      Shit i can't read myself. Good observation, sorry.

    6. Re:Politics is typical for the US by QuestorTapes · · Score: 1

      Actually, that jibes with my limited experience working with Europeans business people in an American multinational.
      I wonder how much of it may be do to having to typically do more with less, however. The US office often threw $money$ at problems; the attitude was 'I want it yesterday; screw the cost; we'll just pass it on to the customer'.
      The Europeans were -much- more willing to give more time (personal or calendar) in exchange for reduced costs, with correspondingly better results (mostly; some of them also had an irritating habit of failing to mention problems until long after they discovered them. 'Oh, we've known about that since the begining of last quarter.')

  24. Think it'll make it to fark? by flynns · · Score: 1

    I find this highly amusing. Two day lag between kuro5hin and Slashdot :D

    ---
    *

    This will probably end up being posted (2.00 / 3) (#8)
    by wiredog on Fri Jan 28th, 2005 at 08:14:10 AM EST
    (my username at gmail dot com)

    on Slashdot. Especially if several of us submit it. Good work, and oh, so true.

    Wilford Brimley scares my chickens.
    Phil the Canuck

    * Submitted by wiredog, 01/28/2005 04:30:46 PM EST (none / 1)
    o Posted to /. front page by dave331, 01/30/2005 02:51:54 AM EST (none / 0)

    --
    'If you're flammable and have legs, you are never blocking a fire exit.'
  25. Evaluation by mmport80 · · Score: 1

    Things won't change until companies *meaningfully* evaluate their employee's performance. This is easier said than done, but most companies don't even try.

    Think about the differences between working and studying. In uni if you do good work you generally get rewarded for it, you don't get rewarded for sabotaging other students!

    1. Re:Evaluation by KontinMonet · · Score: 1

      ...companies *meaningfully* evaluate their employee's performance...

      Metrics for this can be pretty vague and subjective. I found that I had to work with a team for at least a year before I could allocate numbers to: 'DB design', 'problem solving', 'accurate testing' or whatever.

      Having said that, a proper evaluation also needs un upward component. Is the manager managing fairly? Is the team performance poor because the manager imposes stupid requirements? etc.etc. I've yet to see a company embrace that idea...

      --
      Did he inhale?
  26. insidious PostBlock censorship devise update by Anonymous Coward · · Score: 0

    not even politically motivated, robbIE MiSuses this junk just to protect his monIE supply (yet another example of how way too much is never enough), &/or his greed/fear/ego based felonious stock markup FraUD execrable cronIEs/sponsors.

    all in all, senseless greed motivated censorship could only delay the inevitable, which is freedom of speech, one of the mandates of the creators' wildly popular planet/population rescue initiative.

    consult with/trust in yOUR creators, rebuilding declining civilizations since/until forever. see you there?

  27. failing on purpose by Anonymous Coward · · Score: 0

    There are several other contexts where a project is designed to fail. Suppose that your company chose an external contractor for some work but a different one, which has some friends among the high management at your company, has more power to win contracts (by bribing politicians to name one). How long do you expect it will take for your bosses to start doing any effort to slow down the project until the company is "forced" to contract the other one?

    Having worked in such environments for a while I can assure that the article is quite optimistic from this perspective.

  28. Incremental dev. and time lines by KontinMonet · · Score: 2, Funny

    The article may be tongue in cheek, but it is bang on right about one thing: You might be doing incremental development but the senior management still want a 'clean' project. The system will be delivered end Q4 and no later. Yessir Mr. Big Customer, you have our word on it (without asking the development department if it's possible).

    After that, they hurry down to the development departments and after some panicky discussion and massaging of the project sheet, decide that Release 2 will happen 9am Nov. 15th. So yes, you do end up de-scoping during development. I have deliberately targeted sections for de-scoping and I am sometimes deliberately vague about will be delivered (rather than adding 40% contingency). For example, administrative functions will be delivered (but they might not have the gleaming front-end that they expected). And anyway, I get lumbered with a development team cobbled at the last minute (gotta save costs!) from half the losers in the company and a prima-donna who just sneers at the usefulness of unit testing and documentation.

    Managers have surprisingly little power to get the best people for the job. When a board level manager decides that all sourcing will be now be internal, instead of the shit-hot guy I interviewed the day before, I now have to persuade a luke-warm candidate who really didn't want to move, to relocate 800km. Senior managers so often think people are like PCs. Roll 'em in, plug 'em at the desk, they start being productive that morning! Project finished (well,sort of)? Roll 'em out, there's another desk waiting.

    --
    Did he inhale?
  29. Visible unpaid overtime by eric76 · · Score: 2, Interesting
    Keep to the minimum possible. Remember that the earliest part is most valuable since there are more witnesses: better to do half an hour Monday to Thursday than two hours on Wednesday. It also sounds better to say: "I've worked late four nights this week." No-one will be keeping track that closely anyway.

    At my first job out of college, being in a strange town with nothing to do anyway, I would routinely work late. When I left, instead of going down to the bottom floor, signing out, and then walking up several flights of stairs in the parking garage to where I was parked, I would just exit through the fire escape and walk down to where I was parked.

    Then one day I walked into the senior vice president's office and saw him looking at the night and weekend signin/signout log maintained by the guards on the first floor.

    After that, I always went down to the first floor and signed out.

    And it worked. One morning I really overslept and came in about 11 am to find a note that I needed to report to the senior vice president's office.

    So when I went in to report, I apologized for being so late. He told me not to worry since I worked late so much of the time.

    1. Re:Visible unpaid overtime by cdrguru · · Score: 1
      Important corallary to this - stuff is getting done. Overtime is irrelevent and potentially harmful if "stuff isn't getting done". It shows a general inability to manage time, to work with others (that are there during the day) and a lot of other bad things.

      Yes, management should be aware of the hours people are working, at least at a general level. If projects are being designed with 70-hour-weeks in mind but nobody knows it outside of the lowest manager, well then nothing is going to change. On the other hand, someone that works 70-hour-weeks normally but is accomplishing nothing more than everyone else it probably in trouble - maybe they are in over their head, maybe drugs, maybe a lot of things. But it is a red flag and trying to keep people in the dark about it is just silly.

      The original "idea" of pretending to be committed to a project's success while putting forth a minimal effort will have its own rewards in the end as well. Don't think everyone is that stupid to fall for it.

    2. Re:Visible unpaid overtime by eric76 · · Score: 4, Interesting

      In my case, it was really two things:

      1) I didn't have much else to do. I wasn't into hitting the bars nightly and I didn't want to sit around watching tv. Also, I only knew about two people in town (a couple of cousins) outside of work).

      2) I didn't necessarily spend all the time working. At the time, home computers were barely out, but I was too busy paying college debts to afford them.

      Those home computers that were affordable like the Radio Shack Color Computer weren't very attractive to me. What I wanted was a PDP-8 for home, but I just couldn't afford it.

      So I spent part of my evenings at the office figuring out how to really use the company's PDP-11/70 with RSTS/E.

      ---

      For example, we really needed more computing power when I arrived. The PDP-11/70 just wasn't enough. The funny thing was that it was only using about 30% of the CPU under heavy load. Most of the time it was waiting for disk accesses.

      We added 1 megabyte of memory, but that didn't make any difference.

      I experimented with disk caching. Under RSTS/E, you could either turn disk caching on for everything or just for selected files. Turning it on for everything didn't improve much apparently because you didn't have much memory to really cache much.

      But I dug through all the documentation and was appalled at how the disk caching worked. A minimal cache time of 30 seconds was defined. In other words, when you cached a disk block, it was there for 30 seconds before it could be removed and so there wasn't enough room to cache most disk accesses. Even allocated much of our new memory didn't help.

      So late one night, without telling anyone what I was going to do, I patched the operating system to change the thirty second cache time to five seconds. The results were phenomenal. We went from 70% CPU idle time to 0% CPU idle time. Since the vast majority of the cached disk blocks weren't needed after a few seconds, keeping them there thirty seconds was just blocking additional disk blocks from being cached. Caching all disk reads for five seconds had a phenomenal positive impact on the computer.

      When adding disk blocks to the disk cache, the algorithm would first remove any that had been there longer than the maximum cache time. So after patching the system to change the cache time, it was useful to observe the amount of memory used for the cache for a day or two and then adjust the maximum disk cache time up or down. If it was full most of the time, reduce it slightly since there were likely to be eligible disk blocks that weren't being cached. If it was not full, increase the time slightly until most of the memory allocating for the disk cache was being used.

      Modifying the disk cache time did lead to one problem.

      My boss didn't really understand computers much. When certain employees would complain that the computer was too slow, he'd up their priority.

      Before the disk cache time change, it made little difference because their processes still had to spend much of the time waiting for disk accesses. After the change, increasing the priority would allow the one process to use nearly 100% of the CPU time until it finished. Noone else could run anything -- it was as if the entire computer was frozen.

      Of course, everyone but my boss and the people who would get him to raise their priority hated this. But once he had raised the priority, it might take an hour or more to get enough CPU time to drop the priority back down.

      So it was time for another late night modification. I modified the utilty (correctly spelled - it had to fit in 6 leltters) program to act like it had raised the priority without actually doing so.

      Then everyone was happy. Someone would call my boss and he'd raise their priority. They were happy because their job would finish faster and he was happy because he'd look better to their boss. The rest of us were happy because we could still get our work done.

      I told a number of other RSTS

  30. Personal vs. Collective Motivations by letdinosaursdie · · Score: 2, Insightful

    I think that this article is a huge reason why the "open source" model is working... not just because it is a development strategy that may or may not be superior, but because it is a political alternative to the sort of corporate politics that are almost inevitable in a capital/industrial environment. Econodwarf wisdom idealizes a competition as a deliverer of optimal performance... tighten the screws, and output increases. but the competitive mindset doesn't disappear when employees clock in. The pressure that drives companies to compete among each other can also generate the internal competition that drives this sort of political BS. And the more complex and collaborative the problem is, the more vulnerable it becomes to this internal ego jockeying. I conjecture that's a huge reason why we see politics playing such a deadly role in the development of software. The problem with the "economic incentive" model that we seem to hold as the solution to all of societies problems and the deliverer of all of our culture's wants is that the incentive emphasizes the wrong thing. It pushes us to promote ourselves, whether for the sake of vanity or survival, and the product that results is often merely byproduct. Better would be an incentive that drove each toward the collective goal. In free software projects the incentive, while perhaps somewhat vanity oriented, seems much more about loyalty to the creation itself. The systems may break down along less integrated lines, like two unrelated projects that mesh together after the fact for an unplanned-for synergy, like the LAMP platform, but less energy is wasted in painful CYA-like activity. Obviously not every project can be developed collectively like this. Any ideas on how the community spirit can be better harnessed in an environment in which the job is less fun? Managers, from my experience of layer upon layer of them, don't seem to be it. How do companies make people want to work toward the project working? Is the current, sad, mess of a situation the best we can do? What do developers suggest?

    1. Re:Personal vs. Collective Motivations by mutterc · · Score: 1
      Open Source is also about shipping a quality product, rather than rushing a buggy, incomplete product out the door because {the customer demands it, we need to recognize revenue, there's a "temporary" "crisis"}. The goal in a for-profit corporation is to increase profits for the shareholders, and any product produced is simply a by-product.

      That's why it's possible for open-source software to not suck, whereas software developed by a for-profit corporation must suck.

      I don't think there's anything we can do about it, unless some radical re-plumbing of the marketplace happens (like software liability). The current market simply will not bear the cost of Software Done Right - if you try it, all of your customers will defect to the lowest bidder, who rushes an incomplete, bug-ridden product out the door.

  31. lies, damn lies, and politics by acousticnoise · · Score: 1

    i am sure this has all been covered in dilbert cartoons already.

    --
    Soundproofing Warning do no
  32. another K5 gem - Howto: write bad documentation by Anonymous Coward · · Score: 0
  33. Allow me to edit your treatise. by mosel-saar-ruwer · · Score: 1

    The two most important points you made were:
    Instead, thoroughly analyze ... the customer and create your own "requirements."
    What the customer wants and needs is paramount. Everything [and I mean everything] else is bullshit. Your job exists for the sole purpose of satisfying the customer [at a price that's profitable to the enterprise].
    And if you think management is unnecessary (as many commenters on K5 seem to), go ahead and start your own _successful_ company.
    This is the most important point, and it's the reason our ancestors died in hellholes like Argonne, Normandy, Bastogne, and Chosun Reservoir: So that pissants like you [dear /. reader] would have the freedom to tell these marxist-fascist organizational turds to go fuck themselves.

    PS: You made some other good points as well. For instance, I've been fired from the last two salaried jobs I had precisely because I sent emails that were politically incorrect.

    But fuck 'em. At my age, I've got to face the fact that loners like me just don't make good organization men.

  34. Re:I'm surprised corporations don't censor email m by roman_mir · · Score: 1

    Do you work for ADP?

  35. Re:I'm surprised corporations don't censor email m by AmberBlackCat · · Score: 1
    Seriously, they give email to 'everyone'.. what they should do is give corporate email accounts to select people who have to deal with outsiders.

    I suspect the companies prefer everybody having in-house email rather than something external. It probably helps them catch a lot of company employees up to no good (at least from the perspective of the company).

  36. Ship jumper by Anonymous Coward · · Score: 0

    If you thought Slashdot was a confessional for your past misdeeds - you were wrong. Judging by your inability to deliver and loss of the key account, it seems you deserved much of the blame for the downsizing of the company.

  37. Re:I'm surprised corporations don't censor email m by khallow · · Score: 1

    What's their retention policy on printouts of emails? Ie, print out the really important messages and file them.

  38. TFA is very good by roman_mir · · Score: 2, Insightful

    Very good description of the first principles. The projects don't matter, good design does not matter.

    All that matters is what is easily visible and even more importantly - the perception.

    -disclaimer-
    I am a contractor, worked as a contractor for the past 4 years. Prior to contracting I've done 5 years of permanent work. I live and work in Canada, Toronto. In the past 4 years I worked at 6 different organizations on a total of 18 contracts.
    --

    The goal of any contractor is to find a well-paying contract and to make sure that the job is done satisfactory, so that the contract maybe extended for other projects within the same organization (hopefully for more money.)

    My latest contract is quite interesting in that it is with an organization (no names) where the tactics are very close to those described in this submission. I was hired because a different architect was let-go (the union will not allow contractors to stay for more than 2 years,) and there was an important project to be done (the project is a legal obligation to the government, so it's serious.)

    The overal feeling within the department is that the head manager of the department is a micromanaging, self-indulging, brainless moron with a serious attitude problem. From point of view of this k5 story, this is the only IT department, so there is less competition between the management on the higher levels to compete. But there are many other problems. The air within the department is that of complete secrecy.

    You probably know the expression: job security?

    Well, everything around here is based on that. The projects' success does not matter. The effectiveness does not matter. Maintainability does not matter. What matters is that you do not do what you are not supposed to do, even if it takes you 5 minutes instead of waiting for the specialized help for a week. You do not invade into the very narrow spaces of very narrowminded people, who are good at one thing - maintaining their job security.

    Documentation to the projects is obviously outdated and has nothing to do with the system that needed to be improved upon. The system itself is based on technology (from a well known company) that should never have been used, but someone's ancle/aunt/father/brother whatever helped this tech to be pushed into the environment (obviously this tech is so obscure and specialized that noone else in the world uses it, so it's not updated.) The project is understaffed, the deadline is too damn close and the resources are not there (not enough money)
    --

    As a contractor I am interested in the project succeeding and as a developer I am interested to make sure that the design and development are based on some good principles.

    So here are the problems (obstacles) to success and the steps I had to take to go around them.

    1. The sources of the original system are controled by a special team. To gain access to the source control system there are too many obstacles. The advice to me was for our group to use a shared directory as a source control tool. Obviously this would not have worked - we would have spent all our time synching the sources. There are very serious barriers to getting a different source controlling tool being installed on a dev server.

    solution: install a source controlling tool on your own machine. Import the sources. Set up you developers as users. Don't forget to make sure that the master source gets backed up somewhere every night.

    2. Documentation to the original system is not good at all or non-existant. Knowledge is power and power is not to be shared with anyone. The tools for documentation control are out of reach.

    solution: install a Wiki server on your machine (I use Tomcat and JSPWiki, it's good enough.) Start by setting up project space in Wiki, create sections for requirements, design, testing, assumptions, team, migration, issues, resources, standards etc.
    Always update Wiki. Nothing must get past it. Remember:

  39. there are good managers too by Anonymous Coward · · Score: 0

    Ok, let me give you my take. I work in one of those companies that has a small software dept that is critical to survival of the company. Essentially, we get blamed when things don't go well and ignored when things are good.
    I am a manager that manages a project that historycally never had major problems in 9 years and brought home lots of bucks. I manage another project that is essentially infrastructure for the company and never gets noticed. Then I play hero when other projects fail and I fix them for good. The former type of projects gives me visibility, but my reputation is built on the fact that my projects work for good, not in the short term. In this way, I can distance myself from politics and leave projects when they become political. Because I have credibility I can do code reviews, architecture design and all the good practices. Oh by the way, (I think) I work harder than any of my employees. I work week-ends, they never do. Needless to say, people want to work in my projects. All my failures happened when I did not do all the good things that should happen in every project. Now, I prefer being fired over wasting time and resources. My company knows it, they need me, they need successfull projects, so they don't fire me. My VP doesn't like me, possibly because I told him his was bullshitting in a big meeting in the first days of his tenure, but guess what: my stuff works and our budget is limited. All of this to say: you can be a good manager, be successfull and be respected, although not always liked. It is not easy, takes effort, but at the end of the day, I go home happy. My employees go home happy. My customers go home happy.

  40. what a douche by Anonymous Coward · · Score: 0

    Cynicism appears to be the original author's primary job skill. In my experience, those who complain the loudest about "politics in the workplace" tend to be social retards. This shit just ain't that hard.

    Here's a better guide for office politics:

    1) give your boss timely and accurate information. If you're delivering bad news, include a coupla potential solutions for the issue. Otherwise, you're just the office "whiny bitch."

    2) understand different groups and individual have good reasons for their very different views on risk. If it always seems like "the fucking accountants won't let us change anything," there's a reason for this. Likewise, when "goddamn IT upgraded the server and now everything's fucked," there was a reason they upgraded beyond just trying to make your life more difficult. I've come to the conclusion design by contract between groups should be used for change--one group promises to avoid gratuitous changes for dubious benefit and the other group promises to avoid impeding change "just because."

    As a corollary for extra credit, there are two kinds of risk--risk of action and risk of inaction. In my experience, people readily understand the former but rarely understand the latter since it's often a long-term issue.

    3) Treat people the way you'd like to be treated. Put simply, if you wouldn't want your fuckup publicly pronounced, refrain from doing it to other people's unless they've done something illegal*. While you might think no one's noticed they've fucked up, everyone knows.

    4) Before I leave, some practical advice based on my own experience. If your boss' brother works for you, never ever write him a "Needs Improvement -- step up from being canned" review even if it's necessary. Even if she swears she won't care, she will.

    *this is different from "oughta be illegal" -- like my co-worker with a supa-fine ass and perky tits who always wears a thong and apparently doesn't like bras.

  41. Another by Anonymous Coward · · Score: 0

    ... microsoft certified engineer manual got out?

  42. Why not use AutoArchive? by melted · · Score: 1

    Just put it into your own *.pst after two weeks. There you go, problem solved. They can delete anything they want. You already have your own copy.

  43. People...blech.... by Anonymous Coward · · Score: 0

    This is why I'd rather do everything solo, and have the "other people" out of the picture. I'd like the software and hardware right infront of me, and the "peopleware" behind 6 inch thick plate glass with the blinds down. That would really help me to conentrate and get the job done.

    1. Re:People...blech.... by __aaclcg7560 · · Score: 1

      This is why I'd rather do everything solo, and have the "other people" out of the picture.

      I'm seriously considering this. I think I can do a better job taking care of my own arse instead of kissing someone else's. At least, I can get better health insurance that doesn't come from the lowest bidder.

  44. Re:I'm surprised corporations don't censor email m by vsprintf · · Score: 1

    They also prohibited managers from saying anything good about people on their reviews (I'm not joking or exaggerating)

    Are you at liberty to say what company that was? In our company (60,000+ employees), if you don't get something good on your review, you're on the way out. I haven't kissed butt in a while, and reviews are next month. Hopefully, my performance will save me. :)

  45. They do by bluGill · · Score: 1

    I've work for big companies that didn't play the blame game too much, and small companies that did all the time. I miss working for the big company because there the processes worked (we had a test department!), and action was taken before things became a crisis if possible. If there was no way to avoid a crisis everyone knew it was coming long before and was at least prepared. Well up until the end when they closed down, so not all was well.

    In all cases it is upper management who sets the tone. When upper management refuses to play heavy politics, the lower ranks don't have much to play with. When upper management starts playing those games everyone must. (I ignore them anyway, but I'm sometimes lucky to have my job because of that)