Slashdot Mirror


Psychology of a Programmer

bsadler writes "There is a pretty interesting article on the psychology of a programmer over at devx. It includes some suggestions that a manager might take into account when dealing with programmers. Maybe my boss will finally give me my own office."

34 of 460 comments (clear)

  1. It's not really psychology by xintegerx · · Score: 5, Insightful

    There is no psychology really involved... Just treat the programmers as the professionals they are. Treat them like people.

    1. Re:It's not really psychology by Orthanc_duo · · Score: 5, Insightful

      I think the big point is that programming is an art. Every programmer I know knows this on som elevel but lay people generally do not. I'm lucky in that my boss is a programmer

    2. Re:It's not really psychology by SpaceLifeForm · · Score: 5, Insightful
      It's not that simple. Just treating them like people is part of the problem. Most people can deal with interruptions because they don't stay on the same train of thought for very long. Non-programmer types when they interrupt a programmer *never* for a second believe they are really causing a problem. But, IMNSHO, those interruptions are real thought-killers.

      I'd like to LART some managers who come by every 10 or 15 minutes while I'm working on a project with a very tight deadline, and ask 'Is it done yet?'

      --
      You are being MICROattacked, from various angles, in a SOFT manner.
    3. Re:It's not really psychology by WindBourne · · Score: 4, Insightful

      I use to code all night long but dealt with to many morons at the office bitching about my never being there. So now I am there and productivy is at about 1/4 of what it was. But hey, they can see that I am there.

      --
      I prefer the "u" in honour as it seems to be missing these days.
    4. Re:It's not really psychology by wideBlueSkies · · Score: 4, Insightful

      From personal experience I have to agree with this. In the morning when I come in it takes a good 10 minutes for me to settle down and start to think 'in code'. Once the train starts rolling though, the ideas (usually) just flow down to the keyboard.

      If I'm interrupted, it's like the train fell off a cliff.

      So then I have to focus on whatever interrupted me, while trying desperately to cling on to those ideas that didn't make it down to the keyboard before I was interrupted. Because now i'm having to think in 'real world'.

      If I'm interrupted to help another developer debug something, or brainstorm a problem (which I enjoy immensly) It's harder because I have to switch over to their programming mode, and try to understand what they're doing.

      So then when I can finally get back to the joy that is programming, it takes another 10 minutes or so for me to get back to where I was.

      I know it sounds like a buch of BS, but it's true. If people keep bugging me, I can lose an hour (or more) in startup time every day. It's not that I'm not working, it's that I'm not working at peak.

      So leave me the hell alone! Dammit! ;)

      --
      Huh?
    5. Re:It's not really psychology by DuctTape · · Score: 5, Insightful
      I'd like to LART some managers who come by every 10 or 15 minutes while I'm working on a project with a very tight deadline, and ask 'Is it done yet?'

      Reminds me of one time I was a project manager "under the gun" for a past-due project deadline, and my manager and his boss and various other PHBs would come around at nondeterministic intervals to ask what the status was (essentially it was done as soon as the developers had a V-8 moment), so as an experiment, and a total waste of time on my part but the developers understood what was going on and that I was being a very effective filter between them and the PHBs, I would continuously round-robin visit the developers getting continuous status updates, and at the end of each cycle, I would pop my head into the PHBs' offices and let them know what was going on. This kept me from getting interrupted at random moments, and the guys kinda figured out when to expect me, and could give one-syllable grunts to convey status with minimal context switch.

      I think my approval rating went up that period. Of course, I never did it again.

      Perhaps we need an article about the psychology of PHBs. Or project managers. Still can't believe I did it....

      DT

      --
      Is this thing on? Hello?
    6. Re:It's not really psychology by WindBourne · · Score: 3, Insightful

      Actually, we techs were getting it all done and communicating just fine. We were the "requirement gathers". The problem was managers who had to see bodies. And yes, as a software engineer, I am paid to get the job done. Not to simply serve as somebodies' viewing entertainment. That is the difference between MIS and CS.

      --
      I prefer the "u" in honour as it seems to be missing these days.
    7. Re:It's not really psychology by JaredOfEuropa · · Score: 3, Insightful

      You are absolutely right. But for non-programmers it is hard to believe, especially for managers! A project manager's job often is basically going from one small task to the next, from having to revise the planning to answering queries from accounting about a misplaced comma, to consoling a team member whose cat just passed away. Their job consists of little 'regular' or scheduled work, instead it is like one long stream of interruptions and crises. No wonder managers cannot understand the way a programmer likes to work; they thrive on these interruptions.

      Nothing wrong with that. But this mode of working is completely the opposite of the programmer's. I had the opportunity once to combine the job of programmer and project manager. It was a nightmare and needless to say I got little programming work done, but from the viewpoints of both programmer and manager, it was educational to be in that position.

      --
      If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
    8. Re:It's not really psychology by wideBlueSkies · · Score: 4, Insightful

      >>Gee, now I feel bad being the co-op student who needs advice a couple times a day. I at least try to bug different people each time! :-)

      No No, please don't feel bad. Teaching is part of the job. At least I think so. And I try extra hard to not appear distrurbed when a junior guy comes with questions.

      I remember very well what it was like to ask people for help. Hell, I still have to sometimes.

      If you find that someone that you're looking to for help is making it obvious that he's being 'bothered' then he's probably just a selfish person who's forgotten what it was like when he was new.

      Hopefully when you become a senior person you'll remembr what it felt like to be new, and you'll try to pass kindness and understanding down to your junior guys.

      Good luck to you.

      --
      Huh?
    9. Re:It's not really psychology by GlassHeart · · Score: 2, Insightful
      Teaching is part of the job. At least I think so. And I try extra hard to not appear distrurbed when a junior guy comes with questions.

      I'd argue that for a senior engineer, teaching is the main job. As salaries increase over your seniority, it becomes more and more difficult to produce (code) to justify your salary. A single human can only code so much so well, and it's unreasonable to ask the company to pay you more than you can produce for them.

      However, if you can enable three $50K junior programmers who normally produce $60K for the company to produce $70K instead, you've just justified an extra $30K for yourself.

  2. Please forward to our foreign compatriots... by rand.srand() · · Score: 5, Insightful

    Well intentioned, but the reality is programmers are being wholesale replaced with foriegn labor. Businesses, especially non-IT ones, want nothing to programming or hiring programmers. Much less cater to them in any way above other employees.

    A shower?? There's a guy in the Republic of Elbonia who's willing to work out of his hovel on a old 386 for $4 a day programming. He doesn't demand breaks, and there's no coffee machine to stock. And he's viewed as a nearly identical resource. Now is not the time to demand high priced add-ons. But... if we could just get the people of Elbonia to buy into this and equalize the market...

    1. Re:Please forward to our foreign compatriots... by sane? · · Score: 4, Insightful
      Stop bitching about it and start profitting.

      Option 1: Overseas programmers produce poor code with lots of errors.

      Answer: Get a group of you together and setup a company offering to rescue faulty developments and fix bad overseas code on a high speed/high fee basis. Invest in tools that help you to do this, or write your own.

      Option 2: Actually, they can program quite well - well enough that they are more cost efficient than you will ever be.

      Answer: Setup a company sketching out the design of the software, and outsourcing the work yourselves to India. Sell it a as risk reduction exercise.

      Option 3: They program well, but you don't fancy option 2.

      Answer: Create code and programs that enable you to program cost effectively in relation to Indian programmers, even in only specific niches.

      In short, the global marketplace isn't going away. If you want to survive doing what you're doing at the moment, you are going to have to raise your game to compete.

      Times of change bring opportunties, grab them. When you do, and you control your destiny - you can have whatever setup you require.

  3. ...her? by Anonymous Coward · · Score: 5, Insightful

    Why do people insist on using 'her' instead of 'his' for the generic pronoun? It isn't 'sensitive', it's illiterate. Using female pronouns is even somewhat insensitive: it implies women need to be compensated for, and gratuitously inserts a gender issue into one's writing.

  4. Re:Other ideas by Anonymous Coward · · Score: 1, Insightful

    I need space and time to walk and reflect as well, and not being granted either has led to some significantly bad decisions on my part in the part. No problem though, I'm not paying for fixing it.

    As for music, I don't mind listening to my own, but the crap some people listen to... It is only useful in closed offices or when people use headphones.

  5. Nonsense by sql*kitten · · Score: 3, Insightful

    I only skimmed the article, but it looked like more self-indulgent "programmers are special" whining.

    programmers usually do have a longer attention span and a greater ability to concentrate than the majority of the population

    Anyone who has a degree has a longer attention span and greater ability to concentrate than the majority of the population. There is nothing here that makes programmers special.

    Writing code is an act of creativity. It isn't science and it isn't engineering, although programmers are happy to apply science and engineering to the creative process, when possible.

    This is just nonsense. Why can't engineering - the design of a new product - be creative? Why can't science - the discovery of new knowledge - be creative?

    The vast majority of programming in the world is not creative. It's a skilled craft, sure, but it's not about creativity - that is, making something exist that did not exist before. One database application, or web site, or GUI etc is really much like another. The details differ, but it is not pushing the envelope of the possible, like scientists and engineers do every day.

    Professor Mihaly Csikszentmihalyi of Chicago University, formerly the chair of the psychology department, has studied hundreds of exceptional individuals, from IT entrepreneurs to Nobel Prize winners, researching creativity. He has written many books and papers on the subjects of flow and creativity

    An entrepreneur has a wholly different perspective than a programmer. There may be some overlap between the two groups, but they aren't directly comparable. An entrepreneur will spend most of their time on tasks other than programming, for a start, such as raising funding, making sales, hiring employees, managing existing staff, scouting out the next office, a million other things. But the article is all about how programmers can only do one thing at a time.

    If a programmer's flow is interrupted it can take a large amount of time for her to regain the state, sometimes up to an hour.

    This is just mystical hand-waving. I half expected the next paragraph to be about "using the force".

    you should isolate the programmer in his or her own room.

    why not give each programmer a budget with which they can buy their own chair and desk?

    This is just more "programmers are special and should get special privileges". Programmers are no different from any other skilled craftsmen or any other office workers.

    I don't give a fig if this costs you more money; the potential benefits are huge. If you continue to view the world as a risk/value proposition then you'll continue to produce mediocre results.

    Any sane business manager weighs up risks and rewards. The suggestions in this article aren't about productivity, they're about luxury. Work is work - many people forgot that in the 90's when an office was more like a kindergarten, and look where that got us - many of those people are unemployed now. It's time to grow up and start behaving like all the professionals in the world.

    1. Re:Nonsense by Anonymous Coward · · Score: 1, Insightful

      Anyone who has a degree has a longer attention span and greater ability to concentrate than the majority of the population. There is nothing here that makes programmers special.

      I don't know which college you went to, but at the University I'm attending with 40,000 at this campus, there are more than enough examples that would disprove your little statement here.

      Any sane business manager weighs up risks and rewards.

      And it's usually the managers who get to buy their own chairs. What makes them special? And don't give me any "managers are more important" bullshit.

      sql*kitten? I think your name says it all. I've done programming with sql, and you're right, it doesn't require any 'flow' or creativity, it's usually plug-and-chug. Maybe that's your problem; do some real programming and you'll understand the article's point of view a little better.

      -Dwayne

  6. *Yawn* nothing new here by IIRCAFAIKIANAL · · Score: 4, Insightful

    (I drafted a rant, re-read the article, and re-wrote my rant. It's not so harsh now :)

    Programmers should be treated like professionals. Just like every other professional. What a revolutionary concept.

    However:

    A secretary is being creative when s/he drafts a letter to send to a client on behalf of the resident phb. Does s/he get a shower in his/her office? How about the sysadmin that creatively comes up with a method to speed up deployments? And the engineer that shaves 10% off the time to manufacture your widgets?

    Just because your job involves being creative does not mean that you deserve special consideration. Adequate tools, training, and respect, yes. But everyone needs those to perform their "best."

    Therefore, this article is bullshit. All creative people can perform better if you enhance their working conditions. All *people* can perform better if you enhance their working conditions.

    What a waste of electrons.

    (Yes, this is 90% nicer than my previous rant :)

    --
    Robots are everywhere, and they eat old people's medicine for fuel.
  7. The problem with exporting work by Anonymous+Brave+Guy · · Score: 4, Insightful

    The problem with this whole "exporting work" argument is that, the vast majority of the time, the foreign workers simply aren't as good at it, or even close. I'm sorry, I'm no racist, but this is simply the way things are.

    It's true of call centres, where people reading from a script with no concept of the product and English as a second or third language just don't project a good impression or offer much help. If you doubt this, ask Carly about how HP did when they moved much of their call centre work abroad.

    It's also true of programmers. If someone in India can do the same job as me, for 1/10 of the price but just as well, then apparently at least one of us has got our expectations wrong. OTOH, if a programmer in India has the same job title as me, charges 1/10 of the price but does 1/20 of the work, is this an improvement? Of course not. And I think it's fair to say, quite objectively, that the vast majority of foreign developers lack the education, industrial experience and professionalism exhibited by decent programmers in places like the US or UK.

    In the long run, companies will have to adapt to this. They will either recognise that the cheap option doesn't stay cheap when your quality, and consequently your business, suffers, or they will see the need to invest in proper training and support of the foreign labour to raise standards, which will cost them more. Either way, you do get what you pay for. It's just a matter of time until corporate greed starts losing to smart management on this one.

    --
    If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    1. Re:The problem with exporting work by JimDabell · · Score: 2, Insightful

      If someone in India can do the same job as me, for 1/10 of the price but just as well, then apparently at least one of us has got our expectations wrong.

      The cost of living in India is far less than the cost of living in Silicon Valley. The salaries in the States are high by necessity, it isn't just greed.

  8. Re:Interest by Troed · · Score: 3, Insightful
    Another interesting thing is that in a project I was working I never commented any of my 7000 lines of code yet when I came back to the code half a year later, despite from what most people say, I could still clearly remember what each line did.


    You're probably a good coder - but you're a lousy Software Engineer. As someone else has already pointed out - comments are not for YOU.


    Well written code is code that someone else can start working with without having to ask the previous developer any questions.


    Tom Gilb writes books. Read them :)

  9. Managers either get it or don't - and won't cange by hillct · · Score: 4, Insightful

    I've worked for a fariety of managers over the past few years and I've found that they either understand programmers, or don't. They can either acomodate the quirks or can't and that's it. This or any article stands no chance of changing their outlook.

    One issue the article fails to mention is that you can in fact divide one programmer between development and support roles. The article says don't intersperse these roles durring the work day, but I've found in my own work, - which requires both activities - that the manager simply has to allow the programmers to do his own time alocation, for example, I find that I can get into the work day completing a series of support tasks, in the morning when I'm relitively stress-free, then in the afternoon, turn my focus to one of the never ending pile of development projects on my desk.

    Having said this, I have to agree with the author that interspersing these tasks such that every 45 minutes the programmer has to stop developing and change his mindset to support a user, hten shift back into development mode is inherently bad.

    The point is, programmers - being artistic as they are - are reasonably flexible. It's just important not to expect unreasonable flexibility, as this would prevent achieving the nessecery level of focus on each of the tasks at hand.

    --CTH

    --

    --Got Lists? | Top 95 Star Wars Line
  10. Re:Interesting but wrong? by Hewligan · · Score: 2, Insightful

    In particular, such research as I've seen (sorry, can't cite a link off the top of my head) suggested that actually, a small team of programmers was much more productive in their own open-plan-like "team space".

    He didn't actually say that the programmers needed to be in their own offices, or even that all interruptions are bad. He just said that they shouldn't be interrupted by anything that's not related to the task at hand. In other words, sharing space with people working on the same/similar problems is not going to have a negative impact.

    Having said that, I'm not entirely sure he's right even then. Often, when you get stuck with some problem, getting interrupted by something unrelated and going back to it can lead you to a solution. Still, I guess it's better if you get to choose the moment for those sorts of interruption.

    --

    "If God created us in his own image, we have more than reciprocated"

  11. Re:No longer true by Anonymous Coward · · Score: 2, Insightful

    Boy, you are so dead wrong. The programmers you describe here are the vast majority of wannabe geeks and losers who got left over from the internet boom, y2k panic and dot com craze. Frankly they are utterly worthless except to do factory work. If you don't design and properly lay out how exactly what they should do, they can't do shit.

    Even in desktop applications market, inovation and creativity is needed if you want to bring new products and you can't do that just using braindead coders. You need real talented programmers too. Granted, you don't need them for every task and a lot of stuff sometimes is just routine. However most of them indeed posses these zone moments. If you interrupt them with all kinds of managment stuff and tech support calls, they get confused and their productivy drops tremendously. Watch carefully what such a person produces one week he has to take on these chores, and another week when he can code and design undisturbed.

    What you are describing about the education system is horrible. I haven't left university all that long ago but this was not the way I was thaught and frankly I'm relieved. There are other levels of education over here which indeed come close to making mindless atomaton programmers. I believe design patterns are a perfect way to increase productivity for bad programmers and get them to function properly without messing up all the time.

    However the real talented, creative ones. Usually don't know the patterns by heart. You shove a book up their nose and they go 'ah, is that were all the fuss is about' They are actually already using those patterns, without thinking of them as patterns and even if they do, they tend to change them a bit so they apply better for the task ahead.

    No my friend, creative programmers is exactly what is needed most of all in this business to stay afloat and be competetive and innovative.

  12. Artists vs. Scientists? by Anonymous Coward · · Score: 2, Insightful

    Sorry, but any article that purports to have artists and scientists at two ends of a spectrum is obviously false.

    True scientists and true artists have more in common than the general public thinks. Art and science are built on pure creativity; open minded scientists and artists also mesh well together, and can have some stunning conversations which provide insights into each others work.

    I suggest you all read Martin's play "Picasso at the Lapin Agile" for a little insight.

    Jim

  13. Re:My experiences of programmers by Garg · · Score: 3, Insightful

    1. Every place I've ever been, the programmers work more hours than anybody, with the possible exception of harried middle-managers. They certainly are there more than the QA people. Deadlines are only ignored if they are arbitrary or unreasonable.

    2. This is either because of unreasonable deadlines, or you work at Microsoft. Maybe both.

    3. Keeping it simple is good, unless you sacrifice quality, or scalability. Maybe the programmer knows something you don't?

    4. If you're adding fields to a payroll program, you don't need to be creative. If you're designing a system unlike anything else in your organization, you do.

    5. Anything can be abused, and will be.

    In short, you could've learned something from this article, but you chose to use it to fuel your own personal vendetta instead. Hopefully you never go into management, unless it's for one of our competitors.

    Garg

    --
    Garg
    Alumnus, Xavier's School for Gifted Youngsters
  14. My Vent as a Programmer by still-a-geek · · Score: 2, Insightful

    Mr. Dollery is right on the money. Using myself as an example, when my manager asks me to attend 10 meetings a week, of which 2 are useful, then things will not get done on time. Meetings in my company lasts for at least an hour. Thus, 10 meetings is a minimum of 10 hours. That leaves 30 hours to do the work. However, of these 30 hours, at least another 10 hours is spent explaining to the rest of the team what went on in those meetings (our company has a "dynamic" vision where information should be passed to everyone). Due to the lack of time trying to get a project finished or the project is finished half-assed because of the lack of time, there are production problems that must be dealt with. These waste about 5 hours a week. That leaves about 15 hours. But, since all of the programmers here have open cubes where non-programmers can pass by and start talking about "the weather," these tend to waste another 5 hours per week. Wow, I actually have about 10 sporadic hours per week to get my project done on time! Overtime? Hell no! I don't paid for overtime. Yeah, well, I should be grateful that I have a job in these rough times, but programmers just don't get any respect around here. Our CEO is even said publicly that the I.S. Department is a necessary evil. Now how can I have respect for the company? Keep the programmers out of meetings unless absolutely necessary and give us some privacy so we can concentrate.

    Vince

    --

    "Happily lived Mankind in the peaceful Valley of Ignorance." -- Hendrik Willem Van Loon
  15. Psychology of a company by Musashi+Miyamoto · · Score: 4, Insightful

    What they really need is a "Psychology of a Company" or "Psychology of working for someone else" for programmers to read.

    Too many programmers are Asperger-syndrome types that have difficulty with social skills and with understanding that THEY work for SOMEONE ELSE. They are not the boss, and therefore, just because they think something should happen a certain way, doesnt mean all other ideas are wrong.

    There is a severe problem with tech workers in this respect. Too many think that they are driving and refuse to take direction. Too bad if something like this were written, most of them would not read it, and if they did, they would discount and ignore it.

  16. Re:Pfft. by mrkh · · Score: 5, Insightful

    I've no idea how this happened, but somewhere along the line we let ourselves be talked into the idea that creativity is present in artists, musicians, and architects, but not programmers, box packers, or soccer players. Creativity is a basic human ability.

    Computers can't paint. They can't write computer programs either. It's not some crude mechanistic process that we can automate ; there is a need for style and creativity. Which to me, makes it an art.

    (Surely painting and music are 'explicitly constructed by man', and each of these have distinct rules that allow one to do it well too?)

  17. You're missing the point by sjames · · Score: 4, Insightful

    This isn't about special consideration because programmers are 'special people' who deserve it, it's about maximising productivity and morale at the same time without having to spend much money in the process because that's good for the company.

    A secretary who is drafting a letter is an administrative assistant, and SHOULD be able to draft a letter in peace. Otherwise, it's just another case of damaging productivity by failing to think. The Engineer who shaves 10% off the manufacturing time probably was able to do it by having the same conditions that the article recommends for programmers.

    There are a number of jobs that call for that sort of thing to some degree or another, and for varying percentages of the day.

    To use your example, it is doubtful that the latter being drafted will run 100,000 lines long, take 3 months of highly professional manhours to produce, and remain 'in production' for the next 3 years (complete with a single typo/thinko costing thousands of hours in excess support manhours

    So, though the secretary should be able to finish the letter uninterrupted for maximum efficiency, the time period is shorter, and the complexity of the mental map that will get swapped out if an interruption DOES happen is a lot smaller.

    Yes, all people can perform better if you enhance their working conditions. Different professions have different sets of needs for their ideal working conditions. The article was a few pointers to managers about what they should do for programmers. What to do for administrative assistants, lawyers, cooks, and mechanics are all worth knowing to someone who manages those professions, and should be covered by similar articles.

  18. Re:My experiences of programmers by axxackall · · Score: 3, Insightful
    1. Working extra hours doesn't help programmers to understand the deadline. The irony is that none, besides the programmer, can tell that precisely how much it will take. Other people give even more arbitrary answers. And the extimation by the programmer oneself never includes post-coding cycles (like bug-fixing), which is unavoidable, and thus it must be corrected by the project manager.

    2. I wuould say, this is b/c of poor quality of requirements and other specs - the concept of quality and scalability of the product should never be created by the programmer, instead it should be very explicitely clarified begining from requirement gathering (marketing), then analyzed (product managemers and architecturs), then specified (software architector), including all possible unit and otther tests. The programmer should just continue processing of requirements for quality of the product to the quality itself (before QA, sales and support will finish it). If this chain is broken or missed then the product is not supposed to make any money. Only Microsoft can let the product be designed without requiretns for quality (they compensate it politically). others will go out of business.

    3. Keeping specs being simple doesn't sacrifice (including scalability) the quality of the product by itself. But the way how such requirements for quality are expressed (gathered, analyzed, designed and specified) must be as simple as possible (but not simpler - see Albert Einstein). It is true that often a good UML diagram explains better than the text of the same paper size. But if the case is not typical (not from UML/RUP books) then it's more likely you'll spend more words to explain your non-typical diagram (what does it display and why it is important for this project) than you'll do it without a diagram just on plain English from the first place.

    4. If you are adding a summary filed from another subgroup (perhaps from bellow) to a regular record line in the report (for some sort of comparison) - then you have to redesign the architecture of your report by either making it two-cycle calculated, or using some temporary table (bad DB idea). So, you are creative at that time. But I prefer to thing about it as about engineering creativity. BTW, trying to reuse any code (as a source code!) from virtually any open source project has more art than writing a poetry and if you disagree than perhaps you've never tried it by yourself.

    5. I've never seen in my life sleeping programmer aside from extreme situations of several shift straight forward. What programmer are typically want is arbitrary time to come and to leave the office. Same as many other people do. Some companies refuse it and play the game "we are in army", anothers let it go but more intensively rotate (fire and hire) persons with low evaluation points.

    --

    Less is more !
  19. Sometimes it's the manager's manager's fault by topher_k · · Score: 2, Insightful

    In a previous job I used to manage a development group. I had a few simple rules, which seemed to work for everyone:

    1. Give me 40 hours per week. You pick which 40, as long as 10:00-11:00 a.m. Monday was one of them.

    2. I let the programmers divide the tasks among themselves. I had one guy who loved doing interfaces and another who enjoyed driver development, so I assigned the tasks accordingly.

    3. I mostly let the programmers make the hiring/firing decisions. I almost always had job applicants interview with each current programmer. If I received repeated reports of someone not being a good team player (the most blatant example was one programmer insisting on using Pascal when the rest of the team was using C++), I took appropriate action.

    My problem was that my boss was a micromanager who would walk the halls interrupting programmers for hours at a time. He wanted daily status reports on most projects (my policy was for strict version management and weekly Monday morning meetings to bring the team up to date). Fortunately, one of my programmers developed a status report generator, which would randomly generate one-page status reports. My boss would also pull programmers off-task to work on his Etch-a-sketch or to do tech support for one of the admin staff, when there were others better qualified and, more importantly, more available for that sort of work. Most of my programmers would quit within two years, telling me to call them when I worked somewhere else.

    --
    They'll get my encryption algorithm when they pry it from my cold, dead hard drive.
  20. Why programming is hard by dumb+kid · · Score: 2, Insightful
    Programming is hard because almost anything more complicated than 'Hello world' requires that you hold a lot of information in your head - variables, structures, functions, APIs, libraries, algorithms, database schemas, etc. That is why interruptions are so bad. Once you flush all that to answer some suit's question about last month's time sheet it takes forever to get it all back up there.

    Add to this the creativity needed in designing and building something complicated and you can understand why programmers like to work off hours (no suits)and why they want weird chairs or desks (no irritating, concentration breaking ergo problems for the individual programmer - and yes, each one is different).

    Ever work with a good architect? They have the same eccentricities. So do good design engineers.

    --
    - Never attribute to malice that which can adequately be explained by stupidity.
  21. Re:Please don't use 'she' when you mean 'he'. by Bryan-Dollery · · Score: 2, Insightful

    Glad you liked the article.

    1. I wanted people to be tripped up, and reread the paragraphs.

    2. I'm not so good a writer that I can use gender neutral sentences and make a whole article read well.

    3. The masuline pronoun has become generic (as some have pointed out), almost gender neutral in itself. I didn't want a generic pronoun, because I was talking about individuals, and the things that make them unique. I thought that introducing a generic pronoun was just the wrong thing to do.

    4. Having eliminated the other two choices I was left with the femenine.

    BD

  22. Re:female programmers pls reply by Bryan-Dollery · · Score: 2, Insightful
    this silly and tendentious habit of using feminine pronouns discredits the article.

    No, it doesn't. It's a side issue at best. A red herring if you like.

    it makes the author look like a PC wank and causes me to question the article's integrity

    That you'd immediatly assume PC Wank, when there are many other plausible explanations indicates that you need to start thinking before you start typing. Try it, yo u may be surprised at the results.

    People that are prone to such displays of political correctness tend to be liars

    Data please?

    People who post anonymously tend to be liars

    I've only ever met one woman who had skills appropriate to programming

    As I've already pointed out to one poster, it's a conspiracy. The industry has gangged together to keep the fact that these women exist secret from people like you. We don't like you, and we won't share our women with you.

    :-)

    There are plenty of women programmers. Not nearly as many as men, but there are still plenty. Anyway, just because I used the femenine pronoun doesn't mean that I was indicating women in particular, no more than if I'd used the masculine.

    if there were female programmers , I'd then know women who I could hold an intelligent conversation with

    Unlikely.

    BD