Slashdot Mirror


Programmers work 47 days per year

According to a new study from the consulting firm Software Productivity Research, software programmers spend 47 days a year developing or enhancing software applications. The rest of the time is spent testing, fixing bugs, and working on projects that will later be cancelled. This might be deemed poetic justice, given that users avoid using more that 10% of application's functionality for fear that something will break. On the other hand this could be seen as good news for newer projects: add fewer features but get them right. Eg: a light-weight word-processor that imports foreign formats correctly, but only has the features most people use. What do you think? Can anyone corroborate the article's statement that 90% of nonprofit organizations in the U.S. cannot afford to maintain more than 15 networked computers?

228 comments

  1. So that's 47*24, right? by m00t · · Score: 1

    Where I work biggest problem comes from requirements not being solid and changing from day to day. Sometimes without even being informed of these changes. It's a moving target... Luckily I'm not so shabby at sniping...

    Other issues include the constant re-organizations and endless meetings. People not taking responsibility for their actions. Idiotic contractors... The list goes on. People are coming and going so fast no one even remembers who or what they did.

    Miscommunication across the board. People going around finding out who didn't do what instead of just doing it and getting it out of the way.

    It's a mess.

    And I don't doubt these things happen elsewhere as well. Time is wasted in misunderstandings rather than planning things out at the beginning and saving everyone the time at the end.

    Okay. I *think* I'm done ranting...

    1. Re:So that's 47*24, right? by m00t · · Score: 1

      *hheeehh*
      that'd be fine except it there's no UI. It's strictly a data translation function. And the requirements are coming from people who have no clue about programming. They know *their* stuff, but they have no idea about the language, about the source of the data, and about how hard it is to go back and change 2 functions and expect the thing to work flawlessy the first time.

      They also have no clue about seperating your test and development environments. *wince*

  2. Simple, small utilities? Sounds like Unix! by jermz · · Score: 2

    WRT the simple vs. complex applications: Isn't that the Unix philosophy? A number of simple, small utilities that work together to perform complex tasks! Edit a file with VI, check it with ispell, convert to the format of your choice with any number of utilities. Given, modern users don't like the command line, but couldn't we create GUI programs that allow the same interoperation?

    Jeremy

    --
    Hi-Technical Excellent Taste and Flavor!
    1. Re:Simple, small utilities? Sounds like Unix! by roju · · Score: 1

      Isn't this what Microsoft is trying to do with OLE? Or are they just doing that so you never actually leave one of their applications?

  3. Re:Testing and debugging not working? by Cederic · · Score: 1


    In practice, I find that the complexities of meeting user requirements adds major challenges to the job. The alternative would be writing hard core mathematical software, which needed raw brainpower to determine efficient algorithms. At least users are friendly, buy you coffee and let you beat them at snooker - and are also someone to moan about when you need to loose off some stress.

    The other benefit is that because the users don't even know their own business processes half the time, you can make a discernable impact on the business itself by both making recommendations to them, and also just making decisions on their behalf. I like having that level of influence, and it's a nice side-effect of the job I do.

    I guess I could get a job that is just making business decisions, except that writing software is far more fun...

    ~Cederic

  4. Architects spend less than 20 days/year drawing by sgala · · Score: 1

    Coding is a minimal part of a design work, such as software development. It is like the time architects spend drawing the plans of their designs.

  5. Yeah, and there's this bridge... by Verteiron · · Score: 2

    47 days a year performing the tasks that're in our job description, I can believe. However, I'd bet a big stack o' money (that I don't have) that we spend, and are expected to spend, a lot more time working than most other professionals.

    --
    End of lesson. You may press the button.
  6. Re:Testing and debugging not working? by captainClassLoader · · Score: 1
    Just a few comments-to-your-comments:

    Not to get into a methodology war, but RUP is iterative at a fundamental level, and perhaps like XP's "user stories", the fundamental requirements building block, if you will, is the "use case".

    The point I was making in my earlier post is not so much that modern software methodologies don't have methods of measuring productivity - The ones we've mentioned do. My point is that the culture of software management is often one that is uncomfortable with these metrics. What most software managers (at least the ones I've met) want to see is source code gathering in repositories, not use case diagrams or insert_your_methodology_objects_here.

    As for having quick access to users and/or requirements generator folk to help me with requirement clarification/disambiguation, I've found that this only happens under two conditions:
    1.) The software you're developing is so overwhelmingly wonderful and necessary to the user that they are dying to help you develop it. (Don't laugh! It's happened to me! :-)
    2.) Some upper level manager tells the users/requirement generator people that unless they get completed software by Day X, they should seek other employment. (This has happened as well...)

    --
    "The plural of anecdote is not data" -- Bruce Schneier
  7. Stats are Out of Date by crypto_creek · · Score: 1


    The reason they are out of date is that a lot of the testing has been taken over by QA departments, at least after Unit Testing.

    --
    Wovon man nicht sprechen kann, darueber muss man schweigen. Ludwig Wittgenstein
  8. Re:Figures it would be 47 by Skeezix · · Score: 2

    42 is the answer. 47 is everything else.
    ----

  9. Re:Testing and debugging not working? by anvilmark · · Score: 1

    Part of the problem (perhaps most) is that so many of us are maintaining applications and systems that have hung around since the dark ages. We inherit this junk and spend most of our time trying to get it to do things that was never part of the original concept. Few organizations will authorize the rewrite of a functioning system, even if it's riddled with bugs. Nor will they give us time necessary to 'do the "Raid" thing' and exterminate the bugs.

    Another part of the problem is that if we waited around until the users gave us enough info for complete specifications, NOTHING WOULD EVER GET DONE! Sheesh folks, we're SOFTWARE ENGINEERS, we write code that automates what's in the users heads! If the user can't (won't) explain what they do, we can't implement it...

    I'd LOVE to be able to wait for complete specs, but if I did, someone else would soon have my job...

    Capitalism - a horrible system, but simply better than anything else that's been tried...

  10. Re:Design? by ajn · · Score: 1

    At least in my current experience i don't think it's so much coders not planning their code out, it's schedules artificially compressed by mgmt at expense of high-level design, etc., which would prevent a lot of the back-end cost debugging this crap. there's too much pressure to just sit down and start coding.
    anthony

  11. Re:Testing and debugging not working? by Jason+Earl · · Score: 2

    Fah, neither management, nor the customer actually have any idea what they want until they see what you have done and then utter the fatal words...

    "Well, that's almost right."

    At which point the customer is generally able to point out the ways in which your software is wrong. This is perfectly normal. If your customer knew anything about software design, they could write the software themselves. They don't, however, and so they don't categorize the million and one exceptions until your software somehow magically fails to divine them from thin air.

    That is actually one of the reason why Open Source hackers "scratching their own itch" are such an effective programming force. They happen to know what they actually want the software to do the first time that they sit down to write it. It's also why planning to "throw the first one out" is such an important concept. Unless you are writing software for yourself you will almost certainly misunderstand the customer the first time (or more likely they will fail to give you enough information to accurately understand the problem).

    Planning needs to happen, design needs to happen as well, but feature creep will happen (especially with new projects where the programmers are not expert in the particular field).

  12. Re:Testing and debugging not working? by jafac · · Score: 2

    . . . or mabye you're writing on a broken API like MFC, and due to project constraints, doing otherwise isn't an option.

    Maybe programmers spend the other 318 days a year working around MFC bugs.

    --

    These are my friends, See how they glisten. See this one shine, how he smiles in the light.
  13. Re:Testing and debugging not working? by Ratteau · · Score: 1


    then you might not be spending enough time on solid design and correct coding or even just determing requirements before working

    Remember, that most programmers are not the ones that are comming up with the requirements. I dont know how many times we have something planned out at the beginning, start building, then every few days, someone from marketing or biz dev calls and says "oh yeah, we need this too", or "this has to do this now". Every time this happens, you cant throw everything out, redesign, and start over, or you would never finish. So you adapt the old code to fit the new requirements or enhancements. Unfortunately, since you didnt plan for the new reqs, there will be unforseen problems.

    The more mature a project, the more bugs there will be.

  14. Maybe 90% of nonprofits... by sulli · · Score: 1

    have fewer than 15 people in the office needing a PC. Just a thought.

    --

    sulli
    RTFJ.
  15. Re:47? I'm not surprised. by Jason+Earl · · Score: 2

    And yet some of these packages still manage to be quite robust. For example, when was the last time that you crashed your Linux box (not on purpose :)?

    I have been using Emacs since 1995, and am constantly amazed by the next weird thing someone has gotten it do. For example, do you know that some freak show wrote a GNUS backend for Slashdot. I can now read /. using both my GNUS scoring system and the /. moderator system. That's insane!

    And yet in all the years I have used Emacs I have never had it crash one me. My Journal is a 200 page LaTeX document written primarily in Emacs, and I have written who knows how many lines of code, in several languages. I use Emacs as a debugger, a mail client, a web browser (well, sometimes). I even play the built in games. And yet I have never ever crashed the darn thing.

    Of course, Emacs is pretty modular (read, there are a whole pile of Lisp packages). But it certainly goes to show that a program can be big without being a bug haven. Sometimes the next cool thing really is the next cool thing.

  16. Re:Lack of Tech Support? by kelpie · · Score: 1

    A friend of mine who used to work at Apple was in a program where they helped inner city schools set up their networks,etc. I think this was organized by the corporation. Does anyone know of anything similar that I could do to volunteer some of my time to help out in San Francisco schools? You'd think there would be programs like this.

    --
    ---- Do not go gently into that good night -----
  17. Figures it would be 47 by Skeezix · · Score: 2

    47 just makes a lot of sense. I can't imagine it being any other number.
    ----

    1. Re:Figures it would be 47 by James+Earl+Jones · · Score: 1

      I would've pegged it for 42, but that seems to be the answer for everything anyway.

  18. Simplicity, simplexity, Complexity, and Complicty by Rares+Marian · · Score: 3

    Simplicity: One function
    Simplexity: Many ways of doing one thing
    Complexity: One way of doing many things
    Complicity: Many functions

    I can usually deal with the first until I'm bored, appreciate the freedom of the second, respect the wisdom of the third, and I absolutely abhor the fourth.

    It's not fear of breaking that gets people to not use functions. It's the utter disorganization involved. Most products are built so that an illiterate could learn each thing one day and do just that. The problem is that even if you're somewhat intelligent, the big easy books make things impossible to recall. Granted no hacker would pride him/herself on his/her memory, but his/her skill. Thing is you don't even have the ability to record enough to make a picture of what you're learning and to organize it.

    Lwave the basics to the beginners.

    If you're doing something a bit more complicated, step up to the plate and learn some insights into the software before you go further. The same goes to devers. Don't dumb it down. It turns into crap. You end up making computers think the way humans do and react the way computers do, instead of making them react the way humans do and making them think the way computers shopuld think.

    --
    The message on the other side of this sig is false.
  19. VI doesn't cut it???? NOOO!!! by DigitalDragon · · Score: 1

    How on Earth can you say that. That was and still is one of the best things invented. If only modern IDEs, such as JBuilder supported VI mode. My productivity would be 2 times higher.

    VI still cuts it.. VI lives.. VI is the best.... well.. YEAH!!


    --
    http://dtum.livejournal.com
  20. non-programmers are pretty much the same by ryusen · · Score: 1

    i am a "consultant" but i'd say i spend much more time reseting passwords and and fixing things than i do planning

    --

    I believe sex is highly over rated... unless it involves me
  21. Non Profit by BrynM · · Score: 1
    I have a fairly popular local non-profit as a client and I can testify that the funds game isnever ending and tiresome. Their director spends most of his time finding cash instead of running the place. They have 10 computers. 4 very old ones and 6 brand spankin new ones bought with donations from local politicians and such. Very touch and go for them.

    bm :)-~

    --
    US Democracy:The best person for the job (among These pre-selected choices...)
  22. non-profit orgs by leppi · · Score: 4
    I can definately vouch for the fact that non-profit orgs cannot afford to stay "high-tech" to say the least.

    My mother is the director of operations at a school for handicap children, that just begs to have a sys admin. They are now even in multiple sites (with two seperate small networks), and would like to have those networked together in some way (right now they use dial-up networking in Windows on a one-by-one basis). They have people that would like to dial in from home, etc, but they just dont have the resources to manage a small-medium sized network.

    I used to "run" their network, which is just a simple file sharing network, with no real servers (in my spare time). But they have set up Microsoft mail on their own, and are frustrated that it isn't easier to maintain. They are just not technically oriented people, but find great benifits in using tech.

    The real problem is the pay. Most of the people there are there becasue they want to help the less fortunate, and often take pay cuts. There just does not seem to be a great desire to lend ones technical knowledge to them. I help when im home, but since i have moved away, they are just stuck. I have a feeling that it is the same for most non-profits out there as well. you don't make the bucks, so you can't hire the help. People can donate their time, but the people with the proper skills (usually these people are younger), are not willing to help.

    Just my observations, and encouragement to get involved in a cause that you think is worthwhile. They could definately use someone that would rather hammer at a keyboard than hammer a nail.

    /db

    1. Re:non-profit orgs by goliard · · Score: 3


      Howdie! Two stories.

      0)

      A friend of mine who is a $200/hr alpha-geek programming god and entrepeneur saw something about Doctors Without Borders, and was so moved, he grabbed a similarly mage-like friend, convinced this guy of the righteousness of their cause, and went down to Doctors Without Borders and said: "We want to help! We'll help you network your computers! We'll help you with your computers! We'll do it for free and we'll even pay for equipment out of our own pockets."

      And the flunky looked down his nose at them and said something like "We'll get back to you."

      And never did.

      There are a lot of non-profits, or so has been explained to me, which just don't know what they're doing technically. They don't know what they want to accomplish, or how to do it, or even how to let people do it for them.

      1)

      I've done tech-support and coding at non-profits, as a temp. I have found that they often have a very exploitative corporate culture.

      The two worst ethical situations I have ever been put in (in over 50 clients) were at non-profits (both educational). Apparently there is something about working for a "higher cause" which convinces people that ordinary rules and laws are trumped by the moral righteousness of their mission. Ikk.

      Even at places where things aren't quite that rotten, I have found that at non-profits, once you have demonstrated that you are willing to be moved by the "we're a good cause, help us" spiel, they keep loading more projects on your shoulders. People who were once saying "If only our mail server worked reliably, that's all we want", turn -- *bamf!* -- into people saying "You're incredible! Wonderful! Let's set up an extranet for every volunteer across the country, and set up an e-commerce system to take donations on it!"

      It's one thing to be in the front lines, actually doing the primary mission work of the non-profit -- teaching students, helping the sick, donating to the deprived, whatever -- in which you are directly engaged in the mission. When you do that, you feel a connection with the purpose of the enterprise, and that in itself recharges you and inspires you to do more, give more.

      But when you're in the back room with the servers, there is no recharge. It's just more work. The people out in the front lines -- who are giving 110% -- don't understand why the people in the back room just aren't so inspired. Well, duh. Could they be more disconnected from the point?

      You're right that working at non-profits is not sufficiently rewarding for most geeks -- but the reward saught is not just money.

      Add to that the fact the sysadmins are often treated as janitors, and often personally blamed for failures of the network, software, hardware, etc.... If you're going to be treated badly, you might as well be treated badly and well paid.

      Non-profits have to cultivate a culture -- perhaps different than they already have -- in which technical staff and technical volunteers are treated as partners in the mission, and keep them involved.

      --
      -*- Any technology indistinguishable from magic is insufficiently advanced -*-
    2. Re:non-profit orgs by TheFuzzy · · Score: 2
      Sorry to comment twice, I know, "read twice, comment once."

      However, I have to respond to this statement. When I started my business, I made the commitment that 50% of my clientele would be non-profits. Since then, I've cut that down to two low-maintennece non-profits.

      Why? Simple: non-profits are as high-maintenece as the $150/hour for-profit clients, and they can only afford to pay 1/4 of that. Becuase the average non-profit has spent years without adequate tech support or training, most start phoning any friendly tech consultant morning, noon, and night. It's not harassment - they're just desperate.

      Worse, Publically funded non-profits and the government are all too similar in their operation. I've had one grant-funded non-profit threaten to sue me for a database I created for them for 10% of standard rates because it wasn't as fast as they wanted. I've had grant-funded non-profits waste dozens of hours of my time on pointless meetings and specification drift, and then throw away the software once I completed it. As a result, I only do private non-proftis now, and only ones with 10 staff or less.

      Still, I feel that every independant developer should help support one local non-profit. Stick to the small ones, and make sure they know the limits of your support.

  23. Payraise anyone? by g0rath · · Score: 1

    So if I work 47.5 days a year, I can get a pay raise?

  24. The reason that you can't maintain more than 15... by Navaash+Fenwylde · · Score: 2
    ...is because when you get to 16, "office work" becomes 8-hour-days of 8-on-8 Counterstrike.

    Huzzah!

  25. What The #'s Mean To Me by Fatal0E · · Score: 1

    I got a B in economics in college so maybe my crack habit hasn't affected (too much).

    The way I see it, if only 47 days out of 364 put to innovation...thats 11%. Thats assuming all programmers do is drink jolt and are handcuffed to their cubes... oh I was supposed to make something up for that analogy... forget it. 11% of anything sucks. Now keep in mind IANAP(programmer) and I know that it can never be 100%. The only point I'm trying to make is that I think as the IT market matures (20+ years) we'll see this ratio get higher because there will be less standing in progresses way, like the Execu-droid 2000 that listens to the consultants instead of you and asks to bring in your own copy of a visual C compiler. Also, IANAE(economist)


    "Me Ted"

  26. Re:Accuracy of Excel by MidnightLog · · Score: 1

    Discrepancies of several hundred dollars were common. The rule was, any gap less than $1k is not worth auditing.
    Sorry, but this says nothing about Excel. My wife used to be an auditor (she's a financial analyst now). From what she's told me, the standard rule for any system is that gaps less than $1k are not worth auditing.
    --

    To understand what's right and wrong, the lawyers work in shifts ...

  27. Re:Testing and debugging not working? by smagruder · · Score: 1

    There is no magic bullet to take the place of innate talent and competence (pride in workmanship, follow-through, caring, etc.). I would like to coin a phrase: "It's the programmer, stupid!".

    Extra "quality processes" can significantly improve quality, or they can get in the way of it... depends upon how the process is designed and implemented in reality. Even with immense software development experience, it's still a very difficult exercise to review somebody else's code and do a good job at revealing all or most of the problems therein.

    Steve Magruder

    --
    Steve Magruder, Metro Foodist
  28. Depends on the Univ. by JSBiff · · Score: 1

    Technically, only private Universities, and only some of them, are non-profit. There are for-profit Universities. Also, State-Funded Universities are not non-profit organizations, they are publically-funded (e.g. they are a part of the state government and therefore don't fall into the non-profit category)

  29. Sengan? They let you back in here? by acarey · · Score: 1

    (j/k)

    (o/t)

    Hmm, it's a while since we've seen Sengan round here... he got booted, didn't he? (Can anybody remember what for? Something to do with Iraq if I recall?)

    Anyway, welcome back!

    Cheers,
    Alastair

    --
    -- "I believe the human being and the fish can coexist peacefully." - George W. Bush, 29 September 2000
  30. Re:Lack of Tech Support? by m00t · · Score: 4

    Something similar to this happened at my Highschool. There wasn't a large budget for the tech program at the time so he recruited students to learn and set up the network and computer systems in the district. He got it to the point where students could receive credits for doing it. He taught the 'Tech class' on his own time for no pay. The district ended up driving him away when he asked for some compensation and replaced him with 3 people who knew less and *each* were paid more than what he was asking for.

  31. Re:Nonprofit Networking by pod · · Score: 1

    Oh my, check out the moderation on that post: funny, informative, underrated, redundant, troll. Looks like moderators are having turkey hang-overs today.

    --
    "Hot lesbian witches! It's fucking genius!"
  32. NPO by jfedor · · Score: 1

    I know a certain non-profit organization that maintains helluva lot networked computers... :)

    -jfedor

  33. Re:Accuracy of Excel by digitalunity · · Score: 1

    My father worked for Bonneville Power Admin.
    for 9 years in the Long Term Study program.
    He had models of stream flow with over 100 years
    of data. All in the form of multi-hunred-MB's
    excel spreadsheets. He said the margin for error
    was a less than a 1/100th of a percent. For the most
    part, excel sucks only as bad as the operator!

    --
    You can't legislate goodness. Let each to his own destiny, by will of his freely made choices.
  34. feature reduction by daniell · · Score: 2
    asside from the fact that a product is just no good unless it's bugs are fixed (assuming it has bugs), its really sad that projects that seem promissing and represent a large investment of time get cancelled.

    But about making and selling applications with simpler, smaller feature sets, I think you're going to come up against two kinds of reality.

    • The first is the fact that maintaining mostly essential features is a good thing (yay vi or bbedit) for the user and the programmer (especially in terms of memory, disk and cpu usage).
    • The second is the fact that no average consumer is capable of passing up a feature, no matter how detrimental to their overall memory, disk, and cpu usage nor their stability. Besides the popularity of word, just take a look at an average permenently connected windows box, and see how many little pieces of crap software they're running at startup and in that little tray area that they jsut don't need, no longer understand, and often cause them to wonder why they keep getting error messages from this or that cryptic application name. They see a cool windows feature/extention on the net, they grab it, they forget.

    -Daniel

  35. Re:15 networked computers by SquadBoy · · Score: 1

    I don't charge by the hour that is my retainer if my stuff broke and it took me 20 hours to fix it I would get $200 for that month. I'm good but not that good but I do have the good sense to choose good tools. This is why I can make $200 on retainer and barly work. OSS rules for this reason.

    --

    Cypherpunks: Civil Liberty Through Complex Mathematics. Those who live by the sword die by the arrow.
  36. Re:Page 20 of "The Mythical Man Month" by gallir · · Score: 1
    You are not only rude, but also you lack of a minimum sense of humor. I don't believe very much in rules of thumb, that was my intention when I tried to add a little of sarcasm by saying "we don't drink coffes at all".

    And I mentioned this book because it was referenced in the survey. It also mentioned Brooks' (his surname is "Brooks", not Brook, read the cover page, not only page 19 :-) was given the Touring award, so he _should_ be right.

    So, take it easy guy, we all know youve read the book. Indeed, although I am not Williams Shakespeare (Cervantes neither), I can read (and write a little) of English.

    --ricardo

    --
    sgis ddo ekil t'nod i
  37. Re:15 networked computers by White+Roses · · Score: 1
    Having also (alsø alsø wik) worked for a NP, I know first-hand that talented network admins are extraordinarily hard to hold on to. The turn over is massive. I stuck it out longer than most and I was only there for a year. At less than 30K a year, someone was bound to outbid the NP for me.

    On the other hand, I wouldn't mind volunteering my time to work on a NP's network. Of course, it has to be a Mac network. Or a Linux network. Either so easy to set up, you can show someone else, or so bullet-proof, you set it up once and forget about it (Set it and forget it, Ron!). Windows networks are designed to keep sub-par network admins employed.

    --
    Do not touch -Willie
  38. Programmers work 47 days per year.... by Mitaphane · · Score: 1

    ...and on the 48th they rested.

  39. Re:Design? by trefoil · · Score: 1

    I totally agree with that.. management does put on pressure to get products out the door, which in turn is pressured by marketing.. or lack thereof.. IMHO it tends to always be a case of not clear communication between pertinant(sp?) parties which leads to the ultimate demise of a lot of products.

  40. Bitter Rant, apologies in advance by Sloppy · · Score: 1

    All of this means that when something goes wrong with their 4-computer network, they have to hire in an MCSE at $200/hr to fix it
    [snip]
    My mother has finally convinced her boss to replace her 486, after she made him sit down and watch how long it took to open Word, *and* got a quote proving it would be cheaper/easier to buy new than to upgrade the 486 into something useful.

    This is so sad and predictable. Anyone else see the cause and effect?

    "Keep the MSCEs away, any maybe mom will have some decent software instead of MS Word, and the 486 won't seem so bad," types Sloppy on a 50 MHz 68060 that is a hundred times faster than what is needed to keep up with his fingers.

    Their accountant is studying for her MCSE, but she appears to be learning even less than their current computer rodent knows.

    You think things are bad now? Wait until that accountant finishes her indoctrination.

    When a machine as powerful as a 486 is too slow for word processing, it's a pretty good sign that someone got conned. Funny how MSCEs always end up "upgrading" everything and then when things become slower and less reliable, the users are even more dependant on them, giving them more power, so they can fuck up the computers even worse. What a racket! Even crack dealers don't have it that good.

    Joe Schmoe and your mom can manage computers. They just need to learn a few things. The things they need to learn aren't computer skills. What they need to learn is to be skeptical, when to say No, and when everyone they know jumps off a cliff, they need to realize they don't have to jump off a cliff too.

    their board of directors are such technophobes that one of them adds up the financial report every month on his pocket calculator, because he doesn't believe Excel will add numbers right.

    Technophobe? Sounds like an Excelphobe.


    ---
    --
    As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
    1. Re:Bitter Rant, apologies in advance by Shadow99_1 · · Score: 1

      Frankly I learned to upgrade older systems when studying for my A+ certification not when I took any MS certification tests... & it is a good idea...

      See hardware (especially in the hands of the inexperienced) tends to gather what I (& most of the known world) like to call 'wear & tear' & eventually stops working... Well when someting does finally break I wish you luck easily finding replacements for those VLB (you remember the good old Vesa Local Bus don't you?) cards or even a 'new' 486 chip or mobo...

      Frankly I'd rather not be the one getting hired to fix things that are almost impossible to find parts for... Maybe it's something you enjoy, but I think most would agree it's not somethign they enjoy...

      --
      we are all invisible unless we choose otherwise
  41. Simple Word Processor Will Fail by Thomas+Wendell · · Score: 5

    While it may be true that most Word users use only 10% of the program's features, they don't all use the same 10%. If you were to create a simple word processor that only had 10% of Word's features, which 10% would you pick? The 10% you use?

    It's the obscure features that make a product popular and hard to displace. A small fraction of Word's users use Word to create documents with complex mathematical formulas, but those users have to have something like the EQ field or the Equation Editor. Most users have no idea what either of those features are, but most users have some backwoods feature they do depend on to make better looking documents quickly. They will never willingly switch to a product that doesn't have their pet feature.

    The same is true of other products. Have you ever looked at a new email client that did some useful things your current client doesn't but lacked some minor feature you're sure you can't live without? Did you willingly switch anyway? Most users won't.

    Simply requiring that this simplified word processor does a good job of importing documents requires that it be complex. When you open a document in a product that doesn't support the original application's full feature set, and your document doesn't come through looking just like it did originally, do you say, "Gosh, I guess I shouldn't have used a feature outside of the universal 10%" or do you say "this product and its crappy import filter are useless, give me the real thing even if it is bloated and cumbersome."

    Complex cumbersome apps are a big problem, but it's hopelessly naive to think the solution is to just write a new product with fewer features. It doesn't work. Even Microsoft tried that strategy once - Microsoft Write for Macintosh. It was a trimmed down version of Word 3.0 that sold for about half of Word's price. Sounds great, right? But Microsoft couldn't give it away.

    If you want to design a new product to replace a high-powered popular product, you need to build something that supports a superset of the feature set and does it in a more elegant, intuitive manner, where "intuitive" means "easily figured out by current users of the big ugly product". Anyone who thinks that's easy to do has never tried. Of course there's a $billion a year waiting for anyone who can do it.

    1. Re:Simple Word Processor Will Fail by Philippe · · Score: 1
      What if you had a simple word processor, with the "basic" 10% of features, that worked well, never crashed and cost 10% of MS Word?

      Imagine, now, that you could seamlessly add the features you wanted, and only those? Like an equation editor, a sophisticated charter, etc... And that the word processor vendor (or a third party) could sell that to you for a low price?

      Apple has done it in the past. It was called OpenDoc. It was a great idea, but was too early for its time. Isn't that the story of Apple?

    2. Re:Simple Word Processor Will Fail by jandrese · · Score: 2

      Complex cumbersome apps are a big problem, but it's hopelessly naive to think the solution is to just write a new product with fewer features. It doesn't work. Even Microsoft tried that strategy once - Microsoft Write for Macintosh. It was a trimmed down version of Word 3.0 that sold for about half of Word's price. Sounds great, right? But Microsoft couldn't give it away.

      That was because Microsoft was trying to compete with Write Now, which was a fabulous word processor on the Mac. I remember loading up Word on my old LC and remembering how sluggish it felt compared to good old Write Now. If only people didn't keep sending me blasted Word documents!

      --

      I read the internet for the articles.
    3. Re:Simple Word Processor Will Fail by Technodummy · · Score: 1

      As my coding skills don't exceed HTML...

      what's the possibility of designing programs that you can choose which features you want to install? customised...

  42. Break it down! the numbers that is. by Thub · · Score: 1

    In this post we see the statement "users avoid using more that 10% of application's functionality for fear that something will break." What percentage of users say they only use 10% of the app's functionality? Maybe they use 10%of the app because that is all they need 90% of the time. What about the other 10%. What about when you need to insert some kind of questionalble scripting into a document, or if you actually need to look at the behing the sceens "code" that makes RTF look the way it does, or insert an image/auto generated spread sheet? And, I hate to ask this and posibly seem like an anti-MS freek, what percentage are useing Microsoft apps. I know I would hate to have to buy 5 word processors just to get all of the features. Maybe installing functionality as needed would be a better idea. A word processor with RT support, tha does tables, indensions, and images, and vector clip art as the default load with addons(included of course) for all the rest of that crap. Maybe even a load as needed or when requested senario would be preferable. Or am I a jack ass?

  43. suggestion for non-profit orgs by hetairoi · · Score: 1

    my last year of college my network class went down to the local redcross office and set up a network with shared dial-up and a file server. they got what they needed and we got experience and something to put on a resume.

    there will always be someone out there looking for experience so non-profit's should target them and get as much help as possible. it can work, i've seen it, at the school MY mom works at and at several redcross locations.

    the downside is that occasionally you get bad advice. i've seen places buy expensive hardware on nonknowledgeable advice and networks get screwed, but the benefits outway the occasional problem, especially if you have no help at all.

    --
    you're all figments of my deranged imagination
  44. Re:Wasn't it Mark Twain who.. by eudas · · Score: 1

    especially if they're moron users who install the latest "Elf Bowling" apps and play them all the time, run every javascript module they can find on the web while playing shit like iwin.com, yada yada... i've generally found that it's the 'i don't know anything about computers' people that put all the stupidest shit on them, install everything in sight, and in general flush the system straight down the toilet as quickly as possible. maybe this is just too many years of tech support or something (tell hawk@xer0.net that i plugged techcomedy.com for him, heh) but IMO lusers trash their comps harder, faster than geeks. i could be wrong. *shrug*

    eudas

    --
    Blessed is he who expects the worst, for he shall not be disappointed.
  45. Once again showing... by Kierthos · · Score: 1

    ...that life is like a Dilbert strip.

    Kierthos

    --
    Mr. Hu is not a ninja.
    1. Re:Once again showing... by ackthpt · · Score: 1
      Seen:

      The beatings shall continue until morale improves.

      and

      The meetings will continue until we find out why nothing ever gets done around here.

      There's probably lots more, but I can't surf other people's cubes all day, gotta work sometime.

      --

      --

      A feeling of having made the same mistake before: Deja Foobar
    2. Re:Once again showing... by perlyking · · Score: 1

      Yeah Dilbert seems to do a lot of his research in my company.
      I can identify with the "working on projects that will later be cancelled". Often I am asked to work on something which is later cancelled without even being told its cancelled!
      My technique is being slow to start new projects - that way they can be cancelled before I start work on them :-)

      --
      no sig.
    3. Re:Once again showing... by ackthpt · · Score: 5
      ...that life is like a Dilbert strip.

      To paraphrase a popular photocopied piece: The meetings will continue until we find out why so little programming gets done.

      --

      --

      A feeling of having made the same mistake before: Deja Foobar
  46. Re:Testing and debugging not working? by ethereal · · Score: 2

    The "magic bullet" for those issues is requirements analysis and requirements, design, and code reviews. Requirements that are supported by test cases, peer-reviewed code, and configuration management by technical experts would go a long way towards making sure that the right code is being written. This sort of falls under the communication that you mentioned, though.

    One possible exception: when the user decides they want things to work in a different way after you've already written the software once. That's more of a feature creep problem than a real bug, though, and it's basically management/business people's jobs to deal with that sort of thing.

    --

    Your right to not believe: Americans United for Separation of Church and

  47. Nonprofit Networking by gorsh · · Score: 2
    Can anyone corroborate the article's statement that 90% of nonprofit organizations in the U.S. cannot afford to maintain more than 15 networked computers?


    As IT administrator for all nonprofit organizations in the U.S., yes I can.

    1. Re:Nonprofit Networking by Aerolith_alpha · · Score: 1

      i have pretty close to 15 networked computers just in my ROOM that doesnt count the router and the webserver which are in the closet :P


      mov ax, 13h
      int 10h

      --


      mov ax, 13h
      int 10h
  48. Re:Testing and debugging not working? by ethereal · · Score: 1

    It sucks when that happens. But that's a management failing, not an engineering one. Management is supposed to shield the technical guys from feature creep by expressing to the marketing/business guys exactly what the cost associated with their change will be, and sticking to it. And it never hurts to multiply all time periods by two and convert to the next highest unit, either :)

    The best situation is when the engineering team owns their product/feature requirements, and others have to talk them into adding features rather than imposing those changes on them from above.

    --

    Your right to not believe: Americans United for Separation of Church and

  49. Gortician, Fool by Bob+Gortician · · Score: 2

    47 Hours per week, plus another 20 reading tech journals and books, 20 more reading/research online, 10 more hours per week mulling over problems in the back of your mind. 100 hours per week seems right. Philip K. Dick inspired grindcore:

    --
    Get my free Hitchhiker's Guide Tribute Novella:
    1. Re:Gortician, Fool by plague3106 · · Score: 3

      Ya, its funny how they say that the bugs shouldn't even be there, yet they also say that testing is a waste of time. Its also by that logic a waste of time to test circut boards, cars, or just about anything else you buy. Computer programs are among the most complex things ever designed and 'built' by man. As such, its expected that large and complex things not be 100% by release, and obviously need to be tested. I got halfway through the article before i couldn't read anymore; its too ubsurd, and written by someone with little to no clue.

    2. Re:Gortician, Fool by holzp · · Score: 1

      dont forget reading /.

    3. Re:Gortician, Fool by Anonymous Coward · · Score: 1

      Damn right! Bugging and testing ARE a part of programming, as are all the hours and years we put in studying on our own time, learning the newest technologies, etc.!

  50. 47 days? by djocyko · · Score: 1
    Damn...if they make $40-80k a year only working 47 days, think of how much they would make working all year round!

    No wonder it takes so long to develop software. The people who do the typing are only at work 1/7 of the year..

    Hmm...only 47 days? that means I could be a programming during winter break.

    (I could keep going, but this has gotten old..)

    1. Re:47 days? by MikeSweetser · · Score: 1

      You say:
      Damn...if they make $40-80k a year only working 47 days, think of how much they would make working all year round!
      No wonder it takes so long to develop software. The people who do the typing are only at work 1/7 of the year..

      I say:
      Bologna. Testing and fixing bugs isn't work?

      If you don't consider fixing bugs, testing, and working on to-be-cancelled-later projects to be work, I'll gladly give you that "non-work" for you to do for me while I "work all year round".

      Mike

    2. Re:47 days? by djocyko · · Score: 1

      dude, I was joking. I hope you understood that and I am misunderstanding your comment.

  51. Question by avandesande · · Score: 1

    All microsoft bashing aside-
    Would MS Word be more more valuable if MS decided to 'Freeze' the feature set of Word? (only changes made would be bug fixes) This would attract much more development and a quicker adoption of Word as a standard. People would also have more incentive to take classes to learn Word.

    Maybe open-source could take the leadership role with this idea.

    --
    love is just extroverted narcissism
  52. hmmm by niekze · · Score: 1

    Get rid of bloat?
    Then what would happen to:

    Kde, Gnome, Enlightenment, Bash, Eterm, RedHat, and Suse? I guess everyone would run blackbox, aterm, ksh, and play xevil on OpenBSD all day.....

    I doubt dropping bloat would help projects complete faster...it would just give us more time to look for sparc stuff on ebay and play xevil.

    --


    Chaos, Mayhem, and Destruction: Not
  53. Different issues by sandler · · Score: 2
    The rest of the time is spent testing, fixing bugs, and working on projects that will later be cancelled.

    This is kind of a muddled analysis. If you work a lot on projects that get cancelled, then this is a problem with your management. If you spend time dealing with poorly written vendor products, as illustrated in the anecdote at the beginning, then this is a problem with the vendor. If you spend a lot of time debugging, then, well, that's programming for you. As for testing, are they saying people should test less? Then we'll have more of the second problem, except you'll be the incompetant vendor to someone else.

    I'm not exactly sure what this article is about. Bad software? Bad management? That programming is hard? You can't really address a problem if you don't know what it is.

    1. Re:Different issues by SandsOfTime · · Score: 1

      This is kind of a muddled analysis. If you work a lot on projects that get cancelled, then this is a problem with your management.

      I'd have to disagree with this particular point. Many software projects should be cancelled, because they are misguided, pointless, screwed up, and will never succeed. But they need to be cancelled much sooner so as not to waste so much time and money. :-)

    2. Re:Different issues by pi_rules · · Score: 1

      Actually -- I think it points out a program with computer programming languages.

      There is only one language that I've ever written in, "compiled" it w/out errors, ran it, and found that I hadn't done anything wrong at runtime. It was Perl.... and about 180 lines of Perl no less. No, I'm not elite coder -- but Perl was well suited to the job and let me define my task nicely. Plus.. it's job was rather simple.

      C's harder to debug -- because you can mess more stuff up basically (duh). It's also very well suited to alot of tasks.

      C++ can be a bit easier to C... just because it's tighter on type controls and such; it was purposely made hard to shoot yourself in the foot. Granted... you can get some compiler errors from hell when you start templating things.

      Please don't read this and think I'm coming off as saying that C, C++, Perl, VB, whatever suck -- they each have their own jobs... but I think Larry Wall is on the right track with perl from a language design standpoint. I'm very much looking forward to what real languages will come up in the future and see if they really do increase programmer productivity.

      Note: I've never touched Python.. but I hear good things.

      Justin Buist

  54. Nonprofits by Evil_Way · · Score: 1

    90% of nonprofit organizations in the U.S. cannot afford to maintain more than 15 networked computers?

    That's probably true. If you think about the amount of nonprofits in the U.S. and their average sizes, you will realize that most will never have use for 15 computers at once.

    Case in point: I help out once a week at a synagogue in my home town. One of the two largest in our area (the admittedly small city of Cincinnati), they have maybe 1000 families -- ranking them in the upper percentiles of all nonprofits in terms of size. They have 6 computers networked for the religious school, and in the office they have maybe 15. I don't know about the ones in the office, but the school computers are really old Cyrixes. They at the moment do not have any use for additional computers.

    My point is that even a very large npo doesn't need that many computers. Take a count of one computer per employee, plus 1 misc per 20 employees, and consider that the average npo has a very few amount of employees.

    Remember: Even the Klingon Language Institute is a nonprofit organization. While the larger institutions may dominate the headlines, there are more than enough very small nonprofits to make the 90% figure quite reasonable.

    1. Re:Nonprofits by M.+Silver · · Score: 1
      That's probably true. If you think about the amount of nonprofits in the U.S. and their average sizes, you will realize that most will never have use for 15 computers at once.

      This fits with my experience. A lot of npo's don't even have full-time staff, and a lot more middle-sized ones are absolutely starved for professional assistance - not just technotypes, but accountants, lawyers, that kind of thing. Plumbers, even.

      It's a whole lot easier to get people (or governments) to give cash than it is to get them to give a little time. And the cash doesn't go far when you're paying three-digit hourly rates.

      --

      Slashdot's token middle-aged housewife
    2. Re:Nonprofits by schussat · · Score: 1
      It really depends on the size of the nonprofit; I worked for a year as a part-time sysadmin for a nonprofit org. that had a PC for each employee (right about 15 Pentium 133s, which was usually enough for everybody to do their work). The NT network was actually really stable, so most of my time was spent planning and doing general maintenance (and occasionally drilling holes in the walls for more cat5 cable).

      Anyway, if the org. had more demanding computer needs (beyond your standard small-office sorts of things), they would have definitely needed more than a part-time employee to do it all. I was pretty swamped as it was.

      Nonetheless, it's extremely satisfying to do work for a non-profit that one believes in, especially when other staff are as passionate and dedicated as they were. (Going for beers with the staff is always good.)

      I may as well chime in that I'm a little suspicious of the statement that the time programmers spend not "enhancing" and "producing" software is wasted time. I agree with folks who have said that debugging is part of any programming task. Further, I disagree with the idea that time spent on projects that are not completed is similarly wasted -- it's time to learn, develop algorithms, and so forth. The authors of the "study" seem almost to be saying that the reason for all that so-called wasted time is shoddy quality control, but that proposition only stands up if you believe it's wasted time.

      It seems a little to me like a desperate search for an IT "crisis" when there are probably better things to be doing. This doesn't strike me as a way to solve a worker shortage.

      -schussat

      --
      The hour of noon has passed. Let us go and get some Kentucky Fried Chicken.
  55. Re:what 10%? by Kierthos · · Score: 1

    Okay, but let's say that my 10% and your 10% differ by .5%. And another user's 10% differs by .5% as well. Given most programs, after a relatively small user base, that will not happen any more. In the case of a word-processor program, most of the users use the same features over and over again because they don't need to use anything else.

    The only reason some of the features are included are to give people more options and as selling points. Half the functions on the copy of Word 2000 I have I never use, and I never plan to. Again, the vast majority of users are probably the same way. It's not that they don't necessarily know how to use those features. It's that they don't need to. Change font and font size, bond and underline are probably the most commonly used aspects of the program other then print.

    Be happy that those features are (mostly) bug free....

    Just my 2 shekels.

    Kierthos

    --
    Mr. Hu is not a ninja.
  56. Small is commendable by Junks+Jerzey · · Score: 1

    I agree completely that small and simple applications are the way to go. This is the one thing that Microsoft continually gets wrong (my DevStudio folder is something l42 megabytes alone, even after deleting all the help files). Unfortunately, the open source Linux crowd is following Microsoft in this regard, with hugely bloated applications and desktop environments. You've got to give Linus credit in that he tries hard to keep cruft ouf the kernel. He's one of the few.

    What's odd is that when people think "small," they equate that with "minimalist and unusable." But really, that's not how it has to be at all. They key is just keep focused on the problem at hand, and not adding crazy tangential features that are outside of your domain (like email, so the old joke goes). I get the feeling that many developers for, say, KDE (not to pick on it specifically), are more concerned about adding impressive features than they are about usability. And that, sadly, is the same mistake that most big software developers have been making for years.

  57. Non Profs by cwhicks · · Score: 1

    I can only speak for myself, but I have worked for two non-profs, Wash U. and a home for mentally retarded adults. Needless to say Wash U. had exponentially larger netorks than 15, and the MR home had about 50 when I left.
    I would guess non-prof or not has little to do with it. I think it is size that matters, (as always).

    --
    - I like pudding.
  58. MS Products by Puck3D · · Score: 1

    This is one of the major problems with Microsoft's products especially their Office line. I think it was Excel 97 that included a "3D" flying game that made excel bulky as hell. I have probably never used more than 97% of Word's features, all I need is a basic text editor. Now why doesn't anyone ever seem to do this?

  59. Re:Testing and debugging not working? by drudd · · Score: 2

    Very good point. By that argument, quality control people, and business consultants don't work at all

    Well maybe they're right about that last one ;)

    Doug

    --
    Venn ist das nurnstuck git und Slotermeyer? Ya! Beigerhund das oder die Flipperwaldt gersput!
  60. Accuracy of Excel by crucini · · Score: 1
    one of them adds up the financial report every month on his pocket calculator, because he doesn't believe Excel will add numbers right.

    I worked on a billion-dollar project where all accounting was done by a huge interlinked maze of Excel spreadsheets. Discrepancies of several hundred dollars were common. The rule was, any gap less than $1k is not worth auditing.
  61. Re:Page 20 of "The Mythical Man Month" by Mike+Connell · · Score: 1

    How can you not believe in his rule-of-thumb? Are you saying Brooks was making it up? *He* said it was *his* rule that *he* had used. Don't you believe him?

    It seems that you still don't understand what I wrote - there is no dichotomy here. If Brooks had written that he liked to dance a conga before working every morning, and the people from the study *didn't* do that, would you think that one of these things wasn't true? That was your logic. If that's meant to be a joke then I'll keep my keenly underdeveloped sense of humour thanks.

    If you think I'm rude then so be it. My post was an attempt to educate you a little about TMMM because it seemed (seems) that you haven't read it well, if at all, but were determined to misquote from it. Your response to this is to call me rude, say I have no sense of humour, correct a spelling mistake, and then for some reason defend your ability to write english. Now *that's* funny!

    I don't criticize peoples (mis)use of language unless they ask me to, and I advise you to do the same. However, as you were so kind as to correct me, here are some for you:

    you lack of a => you lack a
    Touring => Turing (named after Alan Turing, not after long distance racing).
    Williams => William (was that irony?)

    Mike the oh-I'm-so-rude-for-pointing-out-peoples-mistakes how-will-I-live-with-myself? Wo! Wo!

  62. Re:Lack of Tech Support? by Faies · · Score: 1

    Same goes for my high school. I essentially credit for being a part of Journalism while just doing computer work. There still is a serious lack of tech support anyway. Our school (which many people get the impression that it should be filled with working computers, etc. because it is in a influential neighborhood of Silicon Valley) has only a set of rusty Macs to work with for the most part and about one person working on all the computers in the district. I have to fix the computers, tweak them, run the fileserver, code/make the webpage, and assist in all sorts of Photoshop, Pagemaker, and word processing problems. Without students like me there simply would be nobody capable of doing the work. It's so bad in fact that my teacher just refers my services to all sorts of other organizations and schools which pay me to do even more work.

    The job is worth it, but it just frightens me how capable the tech support is. During spring break when I was on vacation (our staff is very dedicated), there were printer problems. They finally got the district people to look at the problem when school started again, but they could not even fix it by dismantaling it. All it took was to load the paper more firmly. Another thing is that the teachers want to network the school (right now it is several disorganized sets of cables connected via the district hq miles away) and get some form of e-mail storage, file sharing, etc). The district was supposed to set it up over a year ago but now they're letting me go ahead by just installing Linux. There simply isn't enough competent people working hard to fix all the computers.

  63. Be careful what you wish for by Faies · · Score: 2

    One thing comes with simplicity- the inability to fix more complex problems. The article keeps on mentioning how software should be designed for basic use, and that the same software must be bug-free. However, the issue about how power users could not use simplified software has been addressed (one program to do all the tasks rather than 50 to each perform one is much better after all); and simplification also requires more coding. Design is another matter- programmers shouldn't be called on to do it if people complain so much. As for coding, much software requires special features for different users. If some installation or process requires automation, you get more code and more bugs in the end. Finally, simple design is not always best. Case in point- I help out with the Macs at my school, and while they may be simple for using software, it is a pain to install special hardware. All the problems mentioned turn up sooner or later, it's a matter how how easily they can be fixed.

  64. Re:Testing and debugging not working? by Arandir · · Score: 2

    Not only are testing and fixing bugs considered work, they are also considered to be an integral part of software engineering.

    The last thing the industry needs is the belief that programmers should only code... oh wait, that is the belief...

    --
    A Government Is a Body of People, Usually Notably Ungoverned
  65. Re:Testing and debugging not working? by mughi · · Score: 1
    . . . or mabye you're writing on a broken API like MFC, and due to project constraints, doing otherwise isn't an option.


    Then in that case there would be more debugging, but if there was soo much as to take the majority of the project time, then it probably was a situation where rolling your own to begin with would have been a better solution.

    Of course, hitting on the right balance is the key, but the 'should' needs to be more on doing it right to begin with, not with doing it over. Things like unit tests and code reviews working together should minimize the impact of any API bugs. And of course, the programmers should also have a good suite of regression tests in place to make things more and more solid.

    A good set of tests by the programmers is one way to tip the balance away from chasing bugs and back to designing and writing code.

  66. Remember UNIX sucks article? by KBrown · · Score: 1
    --
    --
  67. Re:Testing and debugging not working? by Arandir · · Score: 1

    You've misunderstood Capers Jones. A properly engineered product will have fewer defects, but a part of that engineering includes testing.

    --
    A Government Is a Body of People, Usually Notably Ungoverned
  68. Non-Profits and technology. by samdu · · Score: 2

    Having worked for Blackbaud, the largest supplier of fund-raising management software, I can attest to the fact that Non-Profits generally do not have more than a few networked computers and rarely have in-house IT staff. Often, they have no one on staff that is more than rudamentarily computer literate. One of my job functions was to restore databases for examination by the programming and QA staff and I can't count the number of times that I received a tape from a client that was marked "return ASAP" because it was their only backup tape. It was infuriating. Now I'm a private consultant and I don't LET my clients get into such a situation. :)

  69. Re:I dunno, maybe it could help! by Eeeeegon · · Score: 1

    Current trends in GUI design are very damaging from this POV since they further seperate the user from the program, i.e. a smaller percentage of expert computer users have any idea what is going on.

    I strongly disagree with this. The whole Point of GUIs is so the user Has No Idea about how it works internally. The important thing to the user is ... that it works in the first place. I don't know Anything about cars, but that doesn't keep me from driving it. I just take it into the shop when it needs repairs.

    The whole theory behind GUIs is so people don't have to know how it works. That's why object-oriented design is so popular now; it encapsulates objects, while only giving access to some functions (like accessors and mutators). The programmer who made the GUI should be in control of it; just like Toyota should be in control of how their trucks' engines work with their gasket valve or whatever. As long as the user doesn't know, AND it still works, then the user is happy.

    Ignorance is bliss!

    -Egon

  70. Re:Testing and debugging not working? by benedict · · Score: 1

    > But they do NOT insure that a program does what
    > it is supposed to, or that it is intuitive in
    > the eyes of the user.

    So who's saying they do? Just because there is
    no silver bullet doesn't mean it doesn't pay to
    think about software engineering.

    --

    --
    Ben "You have your mind on computers, it seems."
  71. Re:Testing and debugging not working? by plumby · · Score: 1

    What good does it do for a program to be stable, if it adds together 2+2, and gets 5

    This is what getting proper test cases and writing unit and functional tests to check these cases is all about. Good unit tests don't just check that it doesn't crash. They have defined inputs and defined results. Admittedly, this doesn't help if you can't get the user to tell you what they want the program to do, but then they deserve to get non-working software!

    Usability is a different issue. Unfortunatly, there is no way to objectively measure usability. The only thing you can do is get users involved during prototyping and let them play with any part of the UI as soon as you can, so that you can get early feedback.

  72. Only 47 days of "actual" work?!?!?! by CromeDome · · Score: 1

    The title of this article is completely ridiculous.

    I work for a small company (11 people) providing custom software to government. I am one of the only three programmers, and while we don't spend all of our time developing, almost every moment we spend there is working. Often times, we have to help pick up the slack as far as answering phones, dealing with users, training, installing a new site, or installing and maintaining our own hardware and network. While it isn't always programming work, to say we're not working is totally off.

    Testing, debugging, enhancing, etc. is all part of what we do. To say that it is not "actual" work is ridiculous. It's every bit as important, if not more so, than the actual development of our products. Users are much happier if you give them less features (but ones that actually work) than if you give them more features, some or most of which don't work as they should.

    As for users using only 10% of features to avoid using features that might break. . . I think most would agree with me that this is a load of crap. With only having three of us to do the load of programming work, it's a struggle to get in all of the required functionality in a timely manner, much less get in functionality that users can opt to not use 90% of. I would imagine that most shops experience this same problem.

  73. Re:47? I'm not surprised. by MrBond · · Score: 1

    And in all the years, you've NEVER had it crash? I love Emacs and use it every day for development. However, I must say that it does crash. Not every day, or even every week. But it does crash.

  74. 15 computers NPO offices. by Cedric+C.+Girouard · · Score: 1

    Well well well...

    I know a lot of NPO's that have more then 15 computers. Granted, there are a lot more that dont even have one computer.
    Take some org like UNICEF, The Red Cross. These guys have networks that would make any decent sysadmin drool all over himself.

    OTOH, I have a sister that works for a smaller NPO, and they have a +- 20 computer office.

    They budget for maintenance on them, and dont let them grow old.
    That covers most problems.

    Personally, I'd be willing to donate my time to maintain such a network.
    If I could deduct my time as a "donation" to charity, I'd be even more inclined to do so.
    Being that my average consultancy rate is around 85$ / hour (yes, I know, I'm cheap.), 2 hours/week @ 85$ = 170$ * 52 weeks = 8840$ tax break (give or take a little.).

    This way, everybody wins. They get "free" support, you get tax relief, and someone in the end (in my sister's case, a whole lotta kids) get free services.

    If this does not exist, it should. Anyone up for "sysadminforpeace.org" ? =)

    --

    Marriage is considered capital punishment for the theft of a goat in some third world countries...

  75. Re:You know what? -- Photoshop! by chromatix · · Score: 1

    Photoshop (by Adobe) works in much that manner - it has a simple(ish) core, tons of plugins, and is used by professional graphic artists all over. Shame it isn't availble for *IX...

    --
    --- The key to knowledge is not to rely on people to teach you it ---
  76. The value of innovation in simple text programs by vandelais · · Score: 2

    I marvel that if Microsoft is so interested in innovation, that they can't "integrate" a basic word processor with spell-check into the operating system like they can a browser . They must be too busy inserting Pac-Man and Flight simulator easter eggs into their products to give a damn about what most consumers would like. Microsoft feels that you are entitled to get the features you want in an operating system integrated. More people want a simple spellcheck-capable word processing program included with their OS than want an integrated browser. Microsoft is in effect saying that it is ok for the consumer to get what they want bundled in their OS for free. That means it is OK to pirate Office.

    --
    Game: Player 'Donald J Trump' now has AI skill level 'experimental'.
  77. Where are my 168 days off? by Philippe · · Score: 1
    Capers Jones [...] writes, for software engineers, "only about 47 working days in a full calendar year are available for actually developing or enhancing software applications." The rest of their time, about 150 days, is spent on testing, fixing bugs and working on projects that are later canceled [...]
    So, where are my "about 168 days off"? With 52 weekends a year, that's only 104 days. Winter solstice/New year and a couple of civic holidays later should add up to about 20 days. Should I take another 46 days off? Wohoo!
    1. Re:Where are my 168 days off? by NevDull · · Score: 1

      Well, with laws in France dictating that it's illegal to work more than 35 hours a week, and plenty of coders doing 70 hours a week, I think that somehow, karmically, all the vacation accumulates in France.

      -Nev

  78. 47 days? by while · · Score: 1
    I'm mostly a VB programmer, so I can code the crap I work on (VB and Flash) at home during the hourlong break between reruns of NewsRadio on my local Fox affiliate. Just like Matthew, we have some C++ programmers that are addicted to Solitaire...

    (end comment) */ }

    --

    (end comment) */ }
    [an error occurred while processing this directive]

  79. What is this model of development? by arnie_apesacrappin · · Score: 1
    A couple of points.

    1)The rest of their time, about 150 days, is spent on testing, fixing bugs and working on projects that are later canceled.

    O.K., I might allow the working on projects that get canned not being counted as work (even though they are work. ask someone who worked on a project that was canceled.), but testing and fixing bugs not work? Does he believe that code should be written, compiled and then work perfectly? I've met developers with the attitude of, "well, it compiled without any errors. Lets put it in production." If you have never worked with someone in this mind set, it is scary, and a difficult arguement to win to boot.

    2) Reminds me of another survey I saw with similar results. It said that American developers write about 4000 lines of code a year (compared to non-US coders producing 16000 a year). I don't do development primarily, and I know I've written a couple of thousand lines of code in a week (not including comments). I guess that fixing code (like in the story) wouldn't count as "code" either. Even if you have to add lines.

    This article seems to be saying that poor managment leads to unproductive programmers. Any innovation in code should be planned, coded, tested, evaluated and have the process started again (from step two). Give developers some credit.

    --

    Still, with a plan, you only get the best you can imagine. I'd always hoped for something better than that. -CP

  80. How can you separate testing/debugging and coding? by kalifa · · Score: 2

    My, this really sounds stupid to consider coding and testing/debugging as two distinct tasks.

    As fas a I'm conderned, I'm gonna spend the next 365 days writing code non-stop, adding functionnalities each time I think of any, and I won't even try to compile or run the software untill these 365 days are over. Then I'll send my code on the Internet so that other "less productive" developers test and debug it, and because it will obviously turn out that all this code is an awful mess that can't be debugged, I'll claim that the rest of th world is outrageously improductive. Deal?

  81. Bah by Alpha+State · · Score: 1

    90% of all statistics are made up. I doubt anything will change in this area for a long time. The real reason software is so arcane is that software companies make it that way to try to enforce their proprietary standard, or just to add an extra buzzword to their marketing crap. Add this to the "need" to support protocols and applications all the way back to the stone age and your software's complexity can only move in 1 direction.

    Of course, much OSS is far simpler by comparison, but because it doesn't have a nice GUI and an ad in a magazine, regular users think it's impossible unless you're a computer freak. I've lost count of the number of times I've tried to explain how I did something and got the response "Urgh, I don't use command lines". Not that they're any good with their fancy windows software - reading user manuals and computer books seems to be another lost art.

    Not that I'm complaining - the worse the software is, the more I am appreciated. Crap software - where would we all be without it?

  82. not applicable to us, mainly by vsync64 · · Score: 1
    Well, first, this study doesn't seem to be the main focus of the story; it isn't even mentioned until a number of paragraphs in. The story seems to be discussing clueless "users", and that would, of course, put the major-media spin on things, especially since this is obviously a Major Paper with literally half of the page taken up by ads and navigation.

    Now, is this yellow journalism? Possibly:

    "This is just a national scandal, this problem with software complexity and unreliability," says Leon Kappelman, director of the Information Systems Research Center at the University of North Texas in Denton. "No one should have to put up with computers being so unreliable or so difficult. We don't put up with this with any other product we use."

    It's not necessarily an invalid opinion, but I'd venture to guess that it's there for pure sensationalism.

    As far as the main point of the story goes, I think its truthfulness is limited to organizations without clue. Notice that they are complaining about "obscure checkboxes" (on a Mac, no less!), "technical support", "unfamiliar features", and "comfort level". These are the complaints of a person who fears computers and has not yet mastered them.

    Now, this epidemic may indeed apply to most organizations. Sadly enough, it seems to apply to most I've seen. Schools, especially, seem to be bereft of clueful people. (Is there any way to volunteer to be a part-time sysadmin at a local school?) Even one person who knows how things work can make the system run smoothly, if others are willing to listen to that person. Too often they aren't.

    As far as programming, I have an important note to make. This "study" (it'd be nice if I could find out some more information on how it was conducted) seems to imply that days of work and productivity are directly related. They're not. I, and most coders I know, work in bursts. Inspiration strikes, and you make a leap forward in an hour. Other times you sit for days. I have to suspect that Brooks would agree that making productivity measurements directly on time is baaaaad.

    It is true, though. Bug-fixing and meta-tasks take up way too much of our time. Sometimes it's our fault for not writing correct code, but sometimes (and often!) it's the result of pressure to get it into production now! Customers need this feature! Quick quick quick!

    Finally, they neglected the most important influence: morale. At work, there's some stupid stuff going on, and the project I'm on is one of those "we know it's a bad approach... you were right about that... we'll fix it later, though..." things. There are times when I feel completely ready to code, I'm sitting at the keyboard, and yet nothing comes out because things are so depressing.

    --
    TO BUY A NEW CAR WOULD MAKE YOU SEXUALLY ATTRACTIVE.
  83. Re:Wasn't it Mark Twain who.. by hndrcks · · Score: 1

    "I can do 5 at home by myself.."

    You have five people using them concurrently, eight hours per day? That can make a difference... and can make for a crowd in your house!

    --
    Everyone will start to cheer when you put on your sailin' shoes.
  84. Smaller Applications by FlamingLaird · · Score: 1

    I've been espousing for quite a while, the idea of Smaller Applications. As more and more "features" are added to Office, and as the applications therein are more closely tied to each other, and to the desktop (and IE, bleah) they become more and more cumbersome. One corrupt file no longer breaks a single application, it can break half a dozen. I can't help but wondering how much of the end user functionality could be done away with. In my experience, very few users will ever use for instance Word for anything more than text editing and formatting. Wouldn't it be easier to have a universal format for TEXT and just have small applications that interpret that format differently for different needs. I could see someone extending HTML to this sort of use.

    --
    "42"
  85. Re:Testing and debugging not working? by mughi · · Score: 1

    Remember, that most programmers are not the ones that are comming up with the requirements....


    No, not coming up with, but they should be reviewing and planning for changes. You don't need to over-engineer, but if a programmer knows that things can change, and then keeps that in mind and looks for ways to minimize the impact of changes, then things will run better. Also, any programmer who doesn't think about the "why" of his task and only the low-level "how" to implement it is probably not working at the 'should' level that was mentioned.

    I believe what should happen is that good programmers will be able to recognize poor design requirements. Then they should know to take this to management. Management then should be able to take things back and get things clarified.

    Unfortunately, since you didnt plan for the new reqs, there will be unforseen problems.


    And there I think you hit the nail on the head. The projects I've seen that have had the most trouble have been those where the programmers did not get enough time up-front and/or did not follow up on getting good requirements. An experienced architech will be able to recognize those poor or rigid requirements and get to something better. That is, he should be able to from experience notice when something is wrong and then know to wade through what the client says he wants to go to what the client actually needs.

    Notice again that I'm talking all about 'should' and not just blindly stating that it has to be so. I'm quite aware that in many situations it's not. Often the problem is that there's never time enough to do the job right, but always time to do it over.

  86. There's work besides coding. by -=[+SYRiNX+]=- · · Score: 1

    I'm a software developer (programmer). I work hard. But I can easily say that 60% or more of my time isn't spend programming or even bugfixing. Most of my time is spent investigating technical issues, hammering out new feature refinements and specifications with program manager and designers, teaching myself new skills, writing documentation, attending meetings to coordinate ongoing work and scheduling with team members, and other such things. These are all essential parts of a programmer's job, even though they aren't the actual act of coding.

    As for the statement that was made about users being "afraid" to use the wealth of features in a program because they think some bug will surface, that's total nonsense. Usability studies show that most users don't use the features because they aren't aware that the features exist or simply have no need for the features at all. In the first case, the lack of feature visibility is entirely the fault of the designers of the feature; and in the second case, there's really no problem if your software is architected correctly (just because a new feature exists in a product, that doesn't mean it should take up memory and slow the execution of other, independent features in the product if it's not being used).

    Of course, the ultimate solution (as I saw someone point out here earlier) is to design software to be as componentized as possible. Don't need a certain feature? Don't install that component. Saves disk space.

    --
    - "It's just a matter of opinion!" - PRIMUS
  87. programmers work 47 Hs a day by frahg · · Score: 1

    Come on, are you real programmers? if you work on any hi-tek company that trade on NYSE you are going to be expending the next lifetime at the office, no rest ever comes to you!!! so whoever wrote that article: get a new job!

    --
    -- Always Encrypt. If it's probably secure, it's probably not... (Lars Knudsen on block ciphers)
  88. micro - analysis by Chantrey · · Score: 1

    What we know as coding is an iterative process of micro plan, micro design, micro test, micro modify - unless the tech spec contains the same or more information about the finished code than the finished code. The more effort studies like this take to micro analyse the work done, the less and less work will appear to be 'coding', until what you are left with is the time spent working the controls of the computer. 47 days is a long time to be clicking and typing - maybe we should be trying to reduce this figure, rather than extend it.

  89. Re:47? I'm not surprised. by akihabara · · Score: 1

    And yet in all the years I have used Emacs I have never had it crash one me

    You've obviously never unmounted /tmp when running it, then...

    I wonder if that's been fixed. I haven't tried it recently.

    Neil.

  90. Re:what 10%? by Eccles · · Score: 1

    The only reason some of the features are included are to give people more options and as selling points.

    I worked on a program where we'd had creeping featurism to the point that the program was rather bloated and fragile. Our distributors kept telling us we should stop worrying so much about new features and clean up the base application.

    So we did so. During the beta testing of the new version, one of those same distributors sent us an e-mail telling us how the clean-up and interface improvements were great, but couldn't we add some more new features?

    --
    Ooh, a sarcasm detector. Oh, that's a real useful invention.
  91. Direct vs Indirect redution of debugging time by Aceticon · · Score: 1
    I suspect this kind of study will be used more to prove the necessity of directly reducing debugging time (by reducing QA quality and telling people to "waste less time debugging", instead of being used to promote better analysis and design as a way to inderectly reduce debugging time.

    Then again, it's probably because i'm a non-believer in management strategic abilities ... *sigh*

  92. Re:Page 20 of "The Mythical Man Month" by Mike+Connell · · Score: 2

    > One of the figures lies, or we work more than 11 man months a year or we don't drink coffes at all.

    I hate to be rude, but another alternative is that you can't read. What you didn't quote is the sentence immediately preceding Brook's list. It reads "For some years I have been seccessfully using the following rule of thumb for scheduling a software task:". You'll note he says "I", not "most people", or "the industry in general". If most poeple followed more of the advice in TMMM then perhaps we'd all be better off, and the figures in the survery would be rather different.

    Mike.

  93. 47 days??? But I HATE coding! by Poligraf · · Score: 1

    No, I don't HATE it that much; I just don't find it THAT interesting (even though I like to write my code optimally, so it works much more efficiently) after 10+ years.

    IMHO, the only other interesting part of programming (besides the optimization as distant second) is the Algorithmization, i.e. resolving the problem and creating a computable algorithm.

    And this is the thing I'm proud of, here my bragging rights lie. No one (but some stupid managers) cares how many screens with entry forms you've coded in the application; clever ones are more interested in some proof how you've translated complex business problems into working (optimally working preferrable ;-) programs/systems.

    Bad side is that it looks like my 47 days have already expired for this year; so, I waste my life at work by reading /. :-(

    --
    Tigers respect lions, elephants and hippos. Maggots respect no one. (C) S. Dovlatov
  94. Re:Somebody needs to brush up on his math skills by Mike+Connell · · Score: 2

    > What other 1/6th were you talking about?

    These are Brooks figures given after this sentence "For some years I have been successfully using the following rule of thumb for scheduling a software task:".

    So the answer is, It's a rule of thumb, giving general quanities. An even more pedantic answer would be to point out that the values are for *scheduled* work, and therefore he is free to leave a certain amount of time un-scheduled to allow for project flexability.

    Mike.

  95. Re:It's all still WORK! by ddstreet · · Score: 2

    I'm spending more of the time debugging and cleaning things up than I do when I'm first writing the code.

    No offense, but if that's the case you're not doing it right. You need to do some design before you code, or at least do a prototype that you throw away. Coding straight out of the gate will only lead to endless nights of debugging massive piles of spaghetti code.

  96. accurate links plz by [ella] · · Score: 1

    the first link in the story is one to the topstory today of the la times.
    Top stories change, you know... so now your link refers to some story about cellular phones.
    I don't have time to look things up (at work, one of those 47 days per year)... could anyone provide an accurate link to the story ?

    --
    Mike
  97. Re:Wasn't it Mark Twain who.. by plague3106 · · Score: 1

    not to mention that non-profit is a broad category.

    Even still, the #s are pretty poor. I'd wager though that the numbers are bad not b/c programmers aren't working, but b/c sys admins are too expensive for a NPO to have too many. i also think its a mistake to equate programming and system administration. Those are two very different things.

  98. Re:I can corroborate the item about non-profits by Stephen+Samuel · · Score: 2
    I'd pretty much concur. Most of the NPs that I've worked with have fewer than 5 computers. -- in fact, 90% of all BUSINESSES may have need for less than 15 computers (most businesses are SMALL. Many just need one or two computers).

    Big nonprofits, like the Smithsonian are the exception, rather than the rule. They may account for lots of computers, but they're only one entity.
    `ø,,ø`ø,,ø!

    --
    Free Software: Like love, it grows best when given away.
  99. Preferences by _iris · · Score: 1

    I worked in the tech. dept. at my high school for high school credit (and a little something for my resume). We had roughly 150 computers (it was a small school). We could definitely have maintained all the computers between the one Technical Coordinator and two student technicians. In fact, we completely revamped every computer in the school in a week (remember: the two students were only working 2 hrs/day). Aside from that week, though, we let the problems build up until we couldn't stand the complaints anymore. Our problem was a lack of motivation. We weren't being paid a huge salary like our friends working for large corporations. The trade-off? We elected to be lazy. From an employees point of view, it is overly fair. It's sad, but it's true.

  100. Re:Testing and debugging not working? by selectspec · · Score: 2

    I don't think Quality Control (QA) has much to do with debugging, but everything to do with testing. Debugging is an attempt to track down a problem, is almost always done by the developer in response to a bug (probably submitted by QA). Development and debugging go hand in hand. Now testing is another matter. Having developers working on testing can be a costly waste of resources.

    --

    Someone you trust is one of us.

  101. Problems but no solutions by dkusters · · Score: 1

    All this article presents are problems. Commercial software quality sucks. We already know that. Too many bugs end up in fielded applications forcing developers and tech support to expend extra effort. We already know that. Users only use 10% of features in large applications. We already know that. There is no silver bullet. We already know that.

    We already know all of these things. So, where is the solution? As Brooks points out, it isn't in the process. To find a solution, we need to look at the cause of the problem.

    The software industry rewards companies for quick production, not quality results. Quality doesn't effect market share. Furthermore, users only find about 10-25% of bugs that are shipped. Rather than try to reduce the number of bugs preshipping, many companies choose to focus on fixing the few post-production bugs that a large number of users support. The cost for tech support, programming, redistribution, and spin control can be less than the cost of testing, design, and programming to remove the majority of the bugs.

    To change the software industry, you have to change the environment in which it operates.

    1. Re:Problems but no solutions by Eccles · · Score: 1

      The software industry rewards companies for quick production, not quality results.

      Not true!

      The software customers reward companies for quick production. So what does that mean? It means people are willing to make the tradeoff of having a less reliable product for less now, rather than paying more (for a longer development cycle) for a more reliable product later.

      So then you really have to ask: are people stupid for making this tradeoff? I work on a program that has its bugs, but our users do lots of useful work with the program. They may not have been better served if we delayed our releases until they were nigh-bug-free. And, in the end, it may have been counterproductive. We have often removed whole sections of code as our design concepts have improved, as OS and hardware changes have changed what our program needs to do, what tradeoffs we need to make, and what interfaces we need to work with. It may be that it's only reasonable to focus on cleaning up the code once the feature set has become nearly complete.

      --
      Ooh, a sarcasm detector. Oh, that's a real useful invention.
  102. Re:Testing and debugging not working? by phliar · · Score: 1
    Why is testing and debugging not considered "work".
    Exactly!

    Testing and debugging are just as much "software development" as writing code. Just like design is an essential part of development.

    Unfortunately certain large companies with headquarters in the Evergreen State don't seem to believe that design, testing or debugging is part of developing a product....

    (The real question is: what percentage of a programmer's time is spent surfing the web, downloading MP3's, playing games, ...) (Not that those are bad things - if we couldn't do those things at work I think programmer productivity would plummet.)

    --
    Unlimited growth == Cancer.
  103. Re:Wasn't it Mark Twain who.. by chigaze · · Score: 1

    This is not a problem of how difficult it is but one of skills. My dad would tell it's a breeze to completely disassemble an engine and put it back together again but I have to constantly help him with his single computer. I on the other hand can just barely change my oil but I maintain a network at home, at my office, and at my parents office.

    These NPO's are full of people who just want their computers to work. They don't have the time or the inclination to figure out we take for granted. But then what they take for granted may baffle us. What seems uncomplicated to us because we are immersed in it is incomprehensible to those just trying to complete a grant application and print it.

    The bottom line for NPO's is: can they afford to pay for tech support? Looking at some of the invoices I've sent out just for network maintenance and knowing from the inside what an NPO's budget situation is, I'd say 90% of NPO's can not afford the level of tech support necessary to maintain 15 computers that are being used by people not capable of maintaining them themselves.

  104. Re:It's all still WORK! by dbrower · · Score: 1
    I've heard it said that programmers spend 10% of the time writing code and 90% debugging it.

    Let's do the math-- if 47 days is 10% of your work time per year, then there are 470 work days out of the 365. Well, we work long hours, so say it's a 16 hour day on average, for the 4 days of a 50 work-week year, that's 400 days. Still short 70 days somewhere.

    No, I'd say the average programmer spends maybe 20days a year writing new code. 47 seems way too high.

    -dB

    --
    "It if was easy to do, we'd find someone cheaper than you to do it."
  105. Non Profit Comment by aaronhaley · · Score: 1

    I saw that portion and I thought it was a little ridiculous. It's just like any other sector, non-profits run the scale of size of business vs. computing that any other company does as well. I think that it's just that technology isn't always the first place to spend money for smaller non-profits. Most non-profits are of a much smaller size as well. Although I feel that is turning around as I get more and more requests for help from non-profits.

    --
    --And sektor spoke and said unto the people. Hey, buttwipe hand me the cheezeos.
  106. Interesting by Weezul · · Score: 2

    This is a very interesting point, but I don't think it will help with the problems the article describes. The article is partially complaining about how software is not easy to use, but any powerful set of tools will necissarily be more abstract. You may remove the feature bloat and allow all technical people to be competent in a wide range of tasks, but stupid or unskilled people will still be stupid or unskilled.

    I think there is a kind of Church Turing Thesis which applies to this: You can choose between using a blender or using a computer. A blender only dose a few things, but a cmputer's interface must be a programming langauge (or else it's a blender).

    --
    The Christian religion has been and still is the principal enemy of moral progress in the world. -- Bertrand Russell
  107. But 10% of 10% is only 1% by MikeLRoy · · Score: 1

    If only 10% of the functionality of the average application gets used, then the problem with making a scaled-down version is that if you have 10% of the original features, then users will only use 10% of the reduced features, or 1% of the original features.
    -MR

    --
    -Michael Roy Some people are like Slinkies. Not really useful, but you can't help smiling when you see one tumble down
    1. Re:But 10% of 10% is only 1% by Spider-X · · Score: 1

      he said "most users avoid 10% of the features" he didn't say most users only use 10% of the features. Don't get the two confused.

      --
      witty sig goes here
  108. what the.. by panic911 · · Score: 1

    so this thing is implying that bug-fixing isnt working?

  109. Page 20 of "The Mythical Man Month" by gallir · · Score: 5
    This is not a new topic in already studied in the Brooks' books.

    In page 20 it says:

    1. 1/3 planning
    2. 1/6 coding
    3. 1/4 component test and early system test
    4. 1/4 system test, all components in hands
    That yields 1/2 for testing and only 1/6 for programming. If we assume that programmers in small companies and start-ups do at least the three first phases (I guess that the fourth one is for customers Alpha/Beta), that gives us:
    1. Planning: 94 days
    2. Programming: 47 days
    3. Component Testing: 70.5 days
    Total: 211.5 days/year

    Given that a labourable year has about 45 weeks*5days= 225 days (11 man months), which means, that according to Brooks' distribution of software engineering work, those programmers only spend 0,66 man months a year for coffes, reading, research and so on.

    One of the figures lies, or we work more than 11 man months a year or we don't drink coffes at all.

    --ricardo

    --
    sgis ddo ekil t'nod i
  110. Re:15 networked computers by M-G · · Score: 2

    Well, a lot has to do with whether or not the non-profit is swimming in cash, and where their priorities lie. Most non-profits can get semi-decent hardware donated. But this frequently doesn't include any software licenses, so if they want to be legal and run Windows, they have to pony up the cash. And the creep of new applications puts the pressure on to upgrade applications, which sometimes means a new version of the OS, plus better hardware.

    Some non-profits have a very healthy cash flow, and are able to take advantage of technology, and spend money accordingly. Others recognize the potential benefits of technology, but don't have the cash to put it in place. As an example, animal shelters can make great use of computers, but if the available money can either go to computers, or to pay someone to shovel the shit out of the pens, well....the shit shoveling has to be done, the other stuff can be done the old-fashioned way.

    Keep in mind that many non-profit jobs are low paying, and you don't always get the most computer literate people. Turnover is frequently high as well. This leads to a training nightmare, along with system problems caused by clueless users, and supposed problems that are really just the user making a mistake.

  111. Re:You know what? by lostguy · · Score: 1

    JavaBeans address much of your issue, along with all those ready-built COM/ActiveX components you see for sale in the back of DDJ.

    I don't know of anything like this for Unix yet, but Bonobo might be promising. It takes a lot of time for something like this to reach a critical mass, though.

  112. Re:In Other News... by Kupek · · Score: 1
    Mod this up. He pointed out with examples something I was thinking about when I read the article: Yes, a lot of programmer's time is likely spent not writing "useful" code, but the same can probably go for any other profession.

    That said, I do think most programs have too many features. They all want to make your friggin coffee in the morning when I just want them to do a simple task.

  113. Re:Wasn't it Mark Twain who.. by Cyclopatra · · Score: 5
    Don't assume that the people working at nonprofits can manage their own computers. My mother is a director of a family of nonprofit women's clinics, and I just spent half an hour last night explaining to her (again) that when you're typing in an exact URL, you type it in the address bar, and not Yahoo!'s search box. She's considered one of the *more* technically-savvy people in her organization.

    All of this means that when something goes wrong with their 4-computer network, they have to hire in an MCSE at $200/hr to fix it (which he usually can't; I think he knows less about networking than your average gerbil) because there's *no* way they're going to afford (or justify to their BOD) a full-time network technician. Their accountant is studying for her MCSE, but she appears to be learning even less than their current computer rodent knows.

    As for buying new computers, forget it! My mother has finally convinced her boss to replace her 486, after she made him sit down and watch how long it took to open Word, *and* got a quote proving it would be cheaper/easier to buy new than to upgrade the 486 into something useful. They barely make payroll most months, they certainly can't increase the size of their network.

    oh, and by the way - their board of directors are such technophobes that one of them adds up the financial report every month on his pocket calculator, because he doesn't believe Excel will add numbers right. Good luck convincing them to free up funds for a shiny new network (or even a slightly dinged one), even if there were such funds. I'm donating my old Celeron 266 to them in a few months, just so I don't have to look at the pieces of crap they're using now.

    --
    "We can't all, and some of us don't." -- Eeyore
  114. Re:Testing and debugging not working? by mughi · · Score: 2


    It is perfectly valid and is in fact a major component of any programmers job (and it SHOULD be as well).


    I'd have to disagree with that. If a programmer is doing his job right, then he should spend time at the begining setting up tests but that's mainly it. Spending a lot of time after the fact trying to ensure the job was actually done correctly, or trying to track down why it wasn't should not be a major part of his job.

    I know XP takes this to the extreme, but the basic principle holds true. If you're spending too much time debugging, then you might not be spending enough time on solid design and correct coding or even just determing requirements before working.

    In other industries this is known as "measure twice, cut once" and the like.

  115. Re:You know what? -- GIMP! by gfxguy · · Score: 2
    It has a simple(ish) core, tons of plugins, and is used by web designers, and others, all over. And it's available on just about everything.

    Not only that, but while new versions may not be available on Unix, Photoshop is available in older versions for Unix. Not being a pro, and having used both, I find GIMP does everything I need.
    ----------

    --
    Stupid sexy Flanders.
  116. Re:Testing and debugging not working? by Shadow99_1 · · Score: 1

    This is what makes me glad I switched from being forced into becoming a programmer to doing networking... At least networking is straighforward, but this sounds... well almost governmental (& governmental==nominally ineffective)...

    --
    we are all invisible unless we choose otherwise
  117. My experience by tburkhol · · Score: 1
    ...is mostly with museums, averaging 20-30 total staff and 5 computers. This was completely adequate for their needs. Painter needs email?

    I imagine this situation to be pretty typical for NPOs:most of them are small enough that 15-let alone 50 networked computers would be a complete waste.

  118. Users using 10% of features... by D4MO · · Score: 1

    Things is, it's a different 10% for each user. MS word tries to display only commonly used features to users by collapsing menu items not used often. Neat, but annonys me.

    --

    Rocket science is easy. Neurosurgery, now *that's* difficult.
  119. I can corroborate the item about non-profits by soloworx · · Score: 1

    I volunteer with the United Way as a technology consultant. Bassically what I do is go into participating nonprofits and help them determine their technology needs. Nearly every single nonprofit I've gone into has had little or no computers. One of the companies I'm working with right now used to have a Mac SE until someone broke in and stole it 3 months ago, now they have nothing.

    Get involved. Do something for your communities and stop plaing so much ^&*^^&$$3$#@#@ quake!

  120. Re:I think you've misunderstood. by Osram · · Score: 1

    I don't think they're trying to say that time spent debugging isn't considered "work"

    He compares the time for "developing" with that for "testing, fixing bugs...". Later on he whines about the low quality. Well, if I don't see testing as part of development, then the quality will go down, not up.

    - obviously it is, as fixing problems to make a stable product is an extremely vital activity (as we all know)

    Yes - WE all know that, but he doesn't seem to. That's what angers me about articles like that.

    What I think they're trying to say is that a lot of our debugging time is spent dealing with stuff that shouldn't be a problem in the first place

    If we test less at the beginning, then we will get more unnecessary bugs. Again, to us this is a trivial statement. But to me, it seems he has taken on his own advice:
    Programmers should code - so they should spend less time testing and debugging.
    Writers should write - so they should spend less time researching.

  121. Yeap sounds right... by xerx · · Score: 1

    47 days working.
    250 reading slashdot.

  122. Re:I think you've misunderstood. by iabervon · · Score: 1

    One thing I think should be done more is writing software in reuseable components. That way, if the project gets canceled, you still get something out of it: perhaps you have implementations of a bunch of algorithms which you can just plug in on the next project or something like that.

    That way, the work on your canceled project can be considered as work on other projects you hadn't known about when you did it. And if your project doesn't get canceled, you've still gotten more use out of your time spent working.

  123. Non Profit Organizations by maddmurph · · Score: 1

    Non Profits in my area have next to nothing as far as computers go. They have 486's if they have anything. So that everyone knows it does not matter how people work in an angency it is what the agency is set up to do that matters, for counting how many computers they versus how many they need. If you have 5 people working there, but they have 30 thirty kids who come in and want to us computers maybe they need more than 5 computers.

  124. Re:Testing and debugging not working? by Cederic · · Score: 1


    2 + 2 = 5 is a bug too. System crashing bugs are harder to work out 2 + 2 bugs. Proper unit testing can greatly, immensely, repeatably and productively reduce the number of 2+2 type bugs that occur.

    Using a systematic defined approach to development, by following a formal methodology, with good communication between team members, will reduce the number of bugs in your code. Unit testing should be part of that methodology.

    Example methodologies : RUP, FDD, XP, DSDM - all of them properly documented, in use, improving the quality of code.

    None of them are magical techniques. None of them need code gods to implement them. Most (all) of them need good communication between team members.

    Linked to those (and built into some of them) are additional techniques aimed explicitly at code quality and bug reduction - code reviews (or pair programming), following good coding practices and coding standards, making use of patterns and re-usable frameworks and components.

    Fred Brooks said there is no silver bullet. I agree. But there is a lot of lead out there, so don't ignore it, use it, and you will get the benefits, and your users will thank you for it. And that's a nice warm cuddly feeling.

    ~Cederic

  125. Re:Testing and debugging not working? by Cederic · · Score: 1


    More to the point, the users will always decide they want things to work differrently once you've written the software - until they've seen it, used it, played with it, they don't know what they want. Maybe in a highly controlled environment that doesn't hold true, but in the business environments and leisure activities where I've been involved from an IT angle, that's always been the case.

    So write the code in an easy to modify manner. Good design, good use of patterns, well written code, a good set of automated tests will allow you to make changes to a small part of the system to reflect a change in the requirements from your users.

    Anticipate that they're going to want change, and don't write code that wont prevent it. Anybody who is a good software engineer will tell you the importance of maintainable code - stop and think why that is.

    ~Cederic

  126. Re:How can you separate testing/debugging and codi by Wansu · · Score: 1

    My, this really sounds stupid to consider coding and testing/debugging as two distinct tasks.

    You betcha. Your reaction to avoid testing and debugging is wise my friend because testing don't get no respect. That's why people avoid testing. There's no glory to be had. Debugging is only one step up from testing. You can spend days spinning your wheels and then, in a 10 minute period, figure the whole thing out and push a fix. People just refuse to respect testing and debugging. Those activities are regarded as contemptable and those who perform them well are often relegated to a lower "caste".

    --
    Wansu, th' chinese sailor
  127. Re:Testing and debugging not working? by Kristopher+Johnson · · Score: 3
    One of the points in the article is that lots of this "work" is finding and fixing bugs that should never have been there in the first place. Capers Jones and other software engineering gurus believe that if the proper techniques are used, the number of bugs can be cut drastically from the current norm. So, such bug fixing is not "productive work", it is "wasted time".

    It's certainly true that testing and debugging are part of a programmer's job. But it would be nice if they didn't make up 90% of a programmer's job.

  128. Why Features Happen by Local+Loop · · Score: 2

    The thing about users only using 10% of an app is probably true. The problems with using this 'fact' to promote less featureful programs are as follows:

    • Buying decisions are always made on the basis of highest capability.
    • They all use a different 10% of the features

    Why do you think manufacturers put bullet points all over the box? Features are the only easily quantifiable selling points.

    Also, manufacturers are motivated to reach the widest possible audience, to get the highest return on their development cost. Additional features are perceived to cost very little, and thus it seems attractive to add features to reach more market segments.

    The only solution to bloatware is to successfully communicate the actual cost of adding features, in terms of exponentially increasing debugging time and, inevitably, more bugs at release.

  129. In Other News... by Wrexen · · Score: 2

    The same researchers who came up with this study went into other fields hoping to improve efficiency, and came up with these remarkable statistics:

    - In the food service industry, waiters and waitresses are spending a distressingly small percentage of the time serving food. In fact, more time on average was spent simply taking the order. The median time to get a meal to a customer was just 10 seconds, showing that the food servers have mastered the art of taking food from a tray to a table, but are still lacking in doing this efficiently

    - Engineers were found to spend a considerable amount of time "testing" their potential designs, hurting their cost-effectiveness when their products could have gone straight to the market without this in-between step.

    - In a very disturbing trend, medical doctors seemed to only be treating their patients a remarkably small percentage of the time. However, new techniques may make the "diagnosis" stage a thing of the past. Future patients may be treated for a disorder before they knew they had one (including glitches like broken bones, decapitation, ebola, and autoerotic asphyxiation). The fact still remains that doctors have a 100% failure rate among patients when viewed in the long term

    1. Re:In Other News... by Spider-X · · Score: 1

      I think the reason why most programs do this is because they are inoperable with other programs. If we had a program interoperability standard, you'd actually have programs that cooperate with each other, each only doing what it does best.

      --
      witty sig goes here
  130. 24% isn't that bad. by hansk · · Score: 1

    So, he assumes 197 work days a year. Of those days, 47 or 24% are spent developing and 150 or 76% are spent testing, debugging, or enhancing software applications. I would think spending 24% developing sounds about right. Also, his statement "enhancing software applications" is a big generalization. A little more details would make his statements more interesting.

  131. Re:Testing and debugging not working? by barleyguy · · Score: 5

    software engineering gurus believe that if the proper techniques are used, the number of bugs can be cut drastically from the current norm

    This is a topic we spend a lot of time discussing where I work. There are adamant opinions on both sides of this issue. The question is - What magical techinique are you going to use to eliminate bugs?

    Most of the techniques that are commonly used help eliminate crashes, deadlocks, interface problems, etc. But they do NOT insure that a program does what it is supposed to, or that it is intuitive in the eyes of the user.

    What good does it do for a program to be stable, if it adds together 2+2, and gets 5? And like the article in this thread pointed out, just because a program is stable doesn't mean the user understands how to use it.

    My basic point is that nobody has found the "magic bullet" yet. Even if we use some magical tool to insure that a program will not crash or deadlock, the computational logic and usability are not guaranteed. Only a human being can check those types of things. So in the end, magical techniques are no substitute for just simply being a good programmer (or a well communicating team of programmers).

    --
    --- "So THAT's what an invisible barrier looks like!" - Time Bandits
  132. I think you've misunderstood. by Panther+Cat · · Score: 2
    I don't think they're trying to say that time spent debugging isn't considered "work" - obviously it is, as fixing problems to make a stable product is an extremely vital activity (as we all know). What I think they're trying to say is that a lot of our debugging time is spent dealing with stuff that shouldn't be a problem in the first place (e.g. typos, poorly implemented standard algorithms, hurried functionality additions, etc.), and thus time which could be spent doing "real work" (e.g. implementing new, fast algorithms, figuring solutions to latency/concurrency issues, etc.) is instead wasted on fixing simple problems.

    Canceled projects can also be considered wasted time, IMHO, because in the end, there is nothing to show for the work that was done. Sure, your team did a crapload of work, but if someone scrap's everything you've done, what was the point in having you do it in the first place? Was there not something more productive you could've been doing than working on essentially trash? Yes, perhaps your team has gotten a bunch of new skills, and that's great, but usually they can also do the same thing in something called "training."

    Personally, I think there is a whole ton of wasted effort going on in the working world, but everyone involved is in such massive denial about it that nobody attempts to do anything about it. While I think this study is a bit extreme in its estimates, I hope that it induces some change for the better in terms of productivity.

  133. 47?! by connah · · Score: 1

    47?! Do you people realize the significance of 47?!

    Connah

    --

    Connah
    "Your mouse has moved. Windows NT must be restarted for this change to take effect."
  134. Re:47 Days a year sounds about right by Spider-X · · Score: 1

    heh - that's *IF* you believe everything you read. and what happened to the other 1/6th??

    --
    witty sig goes here
  135. So what happens in the other 318 days? by Zocalo · · Score: 1

    Surfing over to /. and taking the piss out of Cowboy Neal of course!

    --
    UNIX? They're not even circumcised! Savages!
  136. Re:It's all still WORK! by Anonymous Coward · · Score: 3
    There are number of 80-20 rules, this is one.
    • Of the total spent on debugging, 20% goes to killing 80% of the bugs.
    • The remaining 20% are really tough bugs, and take 80% of time.
    • In a business, 80% of the profits are produced by 20% of the employees.
    • 20% of a business's customers create 80% of the problems.
    • Writing the program is 20% programming, 80% debugging.
    • Your boss gets 80% more pay than you, but does 20% less work.
    Just to mention a few. And you can always create more:
    • 80% of trolls on /. are posted by 20% of the people
  137. Re:47 Days a year sounds about right by kraut · · Score: 1

    47 * 6 = 282. Which, given the overtime, sounds about right :(

    But anyway, the whole slant of that article w.r.t. coding vs other things is silly: A car development engineer might only spend a few weeks a year actually thinking up new stuff - the rest of the time he's refining the engine, setting up testbeds, testing the engine, evaluating the results of the test, retesting, modifying the test environment.......

    Thinking of or writing down new things isn't usually the issue with engineering - it's testing, making sure things work.

    As for the cost of running a network... true. There's a lot of accidental complexity in that, which we should work out to make it accesible to more people. However, the same nonprofits wouldn't expect to run a fleet of 15 vehicles without occasional recourse to a professional mechanic, would they?

    Another thing I'd like to know is how many of the non-profits are big enough to need a network > 15 Computers anyway?

    --
    no taxation without representation!
  138. Wasn't it Mark Twain who.. by _Mustang · · Score: 2

    said "There are lies, damn lies, and Statistics"?

    I mean really, 90% can't manage more than 15 computers? I can do 5 at home by myself..

    1. Re:Wasn't it Mark Twain who.. by Kierthos · · Score: 2

      You forgot the worst form of lie. Computer modeling. (yeah, that wasn't around when Twain said the original but you all know it's true)

      There are (obviously) some people who are better at managing computer systems then others. There are also some supposed network administrators who can't do anything right. I suspect that's what affects the "average" number of computers that can (or can't) be managed. Also, those statistics can be massaged any number of ways to produce results that are (1) frightening (2) thought-provoking (3) sound-byte sized or (4) all of the above.

      Just my 2 shekels.

      Kierthos

      --
      Mr. Hu is not a ninja.
  139. Re:This is not accurate! by boomzilla · · Score: 1

    Why is this comment labeled as 'funny'?

  140. You know what? by 2nd+Post! · · Score: 5

    This soons sooo much like the old CISC vs RISC arguments!

    Someone needs to develop and outline a RISC UI environment and tools; Reduced Interface Set Computing, or something.

    A set of small, fast, reliable, easy to develop, easy to debug, easy to enhance set of tools. The base for this exists in the GNU toolset... but this has to be applied to a bigger base.

    A image processor that handles photos, web-prep, and printing, for the average consumer, without continually adding features or cruft that users don't really use. Leave the hooks for plugins, of course, to enhance and extend it... but leave the core simple, small, and reliable.

    Winamp is something very similar for songs and sounds!

    Mozilla could stand to be something similar. Is there already too much cruft in it? Mozilla-PARED?

    Word processors? VI doesn't cut it, as much as I like it. A Wordpad++ or something like that.

    Anyone agree?

    Geek dating!

  141. Re:Testing and debugging not working? by boomzilla · · Score: 1

    Most modern SW Engineering models include traceability from one step back to its predecessors. They also increasingly emphasize the requirements phase as the most imporant part. It's all about the interface.

  142. This is not accurate! by cra · · Score: 5

    I am a programer, so I know for a fact that this is not right. 47 days is the time reported spent on programming. About 70-80% of that time is wasted on stretching lunch breaks, surfing the web, chatting and other things.


    ---

    --
    This message has been ROT-13 encrypted twice for higher security.
  143. Getting rid of unused features by magnetx11 · · Score: 1

    Ahhh... nothing like getting rid of BLOAT!!!

  144. URL has moved by pheon · · Score: 2

    The URL for the story on "Programmers work 47 days per year" has changed from http://www.latimes.com/business/columns/techcol/to days.topstory.htm to http://www.latimes.com/business/cutting/20001127/t 000113753.html

    --
    If you know what you're doing, you're not learning anything
    1. Re:URL has moved by iguana · · Score: 1

      I was also able to find the article here.

      http://www.latimes.com/business/columns/dnation/to days.topstory.htm

      The article's title is "No 'Silver Bullet' for Software's Growing Complexity" in case it shifts again and someone has to search for it.

  145. Re:I dunno, maybe it could help! by Weezul · · Score: 1

    MS Word is a blender.

    I totally agree, but I was sorta saing that there should be no MS Word. I was mreally tring to imply that there should be no applications / basic interfaces execpt for really disguised programming / scripting langauges. MS Word would just be editor, spell checker, pretty printer, etc. libraries.

    I'm not really shure that it matters if we make computers easy to use for the masses since the masses will never have more then a blender even when they own a computer. Fundamentally, we should care about how much the computer entices people to learn more about programming it since this controls how many people we have to maintain the blenders for the masses.

    Current trends in GUI design are very damaging from this POV since they further seperate the user from the program, i.e. a smaller percentage of expert computer users have any idea what is going on.

    I'm literally talking about using a shellish langauge to write the interace, but have a shell prompt at the bottom of EVERY programs main window. Pull down menues would just be cut and paste short cuts to shell commands (ala Plan9). No one would know that you could just do things directly unless they knew what was happening, but they could start plaing arround and learn quite a lot without forests of confusing menus and icons. Most importently, every program would be very flexible.

    --
    The Christian religion has been and still is the principal enemy of moral progress in the world. -- Bertrand Russell
  146. what 10%? by matthe1 · · Score: 1

    if I use 10% and you use 10% and those 10%s are different even by only 1/2% with 1000 users it's conceivable that 90% of the functionality is used.

    so which 10% do you work on?

  147. Small programs == good by ten+thirty · · Score: 1

    I agree with the positive outlook on this. There are too many programs these days that are sooo frickin huge that all quality is just lost. Take IBM's WebSmear for example. It's footprint is, well, however much memory you have!! What the hell kind of design principle is that? I work at a very old government contractor and the higher-ups here can very easily be mislead by clever marketing by Big Blue et. al. But it is important to have reliable software when you are developing for the DoD, and not all of the stuff cranked out by these large companies is good, to say the least! Hence I think that all of us in the development business should take a two hour break every year and read Mike Gancarz's book, the UNIX Philosophy. It's not about UNIX, it's about good software engineering.

  148. Testing and debugging not working? by ZanshinWedge · · Score: 5

    Why is testing and debugging not considered "work". It is perfectly valid and is in fact a major component of any programmers job (and it SHOULD be as well). Programs would be a lot better if there was more testing and debugging. In other industries this is called "refining" and "perfecting".

    1. Re:Testing and debugging not working? by cyber-vandal · · Score: 2

      I disagree. The person who wrote the spec should be the one writing the test cases. That way the program will be tested according to the spec, not according to the way the coder interpreted it.

    2. Re:Testing and debugging not working? by RandomPeon · · Score: 1

      In other industries this is called "refining" and "perfecting".

      This is all to true. In some manufacturing processes, you end with lots of defective parts. Think about how many defective components get thrown away in electronics manufacturing. I would think that the number of defective components increases as the complexity of the component increases....

      Software is unique because:
      1) all the components must work properly (many of them are going to be complex)
      2) you make each component exactly once, so if things don't work out you have to fix it.

      So large amounts of debugging time should be expected.

    3. Re:Testing and debugging not working? by Furry+Ice · · Score: 1

      Actually, developers really make the best testers. When all developers work to build solid test cases for all of their code, and then run regular regression tests, the number of bugs in software dramatically decreases, as well as the likelihood that new bugs will be introduced with changes. Of course, the problem is that sometimes changes necessitate maintenance of the test cases themselves, which can be costly. It's usually an overall win, however. The initial investment is high, but the payoff over time is tremendous.

    4. Re:Testing and debugging not working? by Technodummy · · Score: 1

      But they do NOT insure that a program does what it is supposed to, or that it is intuitive in the eyes of the user.

      intuitive in the eyes of the user isn't something that can be planned before programming starts?

    5. Re:Testing and debugging not working? by barleyguy · · Score: 1

      This is what makes me glad I switched from being forced into becoming a programmer to doing networking

      That's funny, because I did exactly the opposite. I did networking for about 5 years, and then ended up in a programming job. I'm actually glad I switched to programming, except for the fact that I don't get as much exercise.

      I like programming because if you find a bug, you are allowed (required) to fix it. Networking software seems to have weird bugs that you simply have to work around, or wait for the next patch/service pack. I also like the design phases of a project, though networking sometimes involves design as well.

      --
      --- "So THAT's what an invisible barrier looks like!" - Time Bandits
    6. Re:Testing and debugging not working? by captainClassLoader · · Score: 1
      I can't speak to most of the methodologies mentioned, but have some minor experience with RUP. One of the big issues with it, and with other such methologies is that they run up against the prevailing software management axiom that states that programmers are only programming when they're coding, and that KLOCs or function points or some other quantitative method is how to determine programmer productivity.

      Similarly, my experience is that getting users to convey to you what they wish their software to do with any sort of precision is extremely difficult. IMHO, the reason why software is generally hard to do is because it is soft - The barriers to quality work, I find, tend to have more to do with political/social factors than the availability of software techniques.

      --
      "The plural of anecdote is not data" -- Bruce Schneier
    7. Re:Testing and debugging not working? by Cederic · · Score: 1


      Fortunately the other methodologies (which I prefer) apply sensible software engineering principles to the development process - it's entirely down to management how they wish to measure productivity. Certainly XP provides measurement points in terms of how many 'user stories' are implemented and functional tests are passed.

      The advantage of the methodologies I mentioned other than RUP is that they are all iterative, with deliverables at periods ranging from a couple of days up to at most 6-8 weeks. This makes it very easy to knock up something that meets what the user has asked for, and then refactor the deliverable to incorporate the inevitable changes the user will make.

      The methodologies typically insist on considerable user involvement throughout the development process too - so if a programmer discovers he's lacking complete information on a particular feature or peculiarity of the business process, he can turn immediately to the business person and get clarification of the desired outcome. (of course, he'll write that then get told to change it - but that's where well designed, easily maintainable code comes in)

      ~Cederic

  149. Re:It's all still WORK! by mikefe · · Score: 1

    You are quite right.

    Although I don't program in a compiled language yet, I've seen myself fall into that trap.

    I ended up trying to solve a problem I didn't even need to have in there.

    From that point on, I took time to comment what I needed to do before I wrote the first line of code.

    I hope this helps someone.

    --
    There: Something at a specific location.
    Their: Owned by someone.
    Please make sure your english compiles.
  150. nonprofit by GodOfHellfire · · Score: 1

    technically, i work for a "not-for-profit" organization (a rather large hospital).

    for the systems that my group is in charge of we have 100 aix servers, and the application runs on approx 1100 pc's and x-terminals. all networked, btw. and i know there are thousands more.

    personally, i don't think we act much like a nonprofit, but i don't know the laws.

  151. Can't import what you can't support by crt · · Score: 2
    Eg: a light-weight word-processor that imports foreign formats correctly, but only has the features most people use.


    One of the things that makes importing foreign formats so difficult is that you almost have to support every feature the foreign product supports, or it won't import correctly. Don't support watermarks? Funky table alignments? Post-it-notes? Then it's never going to import 100% correctly.

  152. Re:So? by timmyd · · Score: 1

    Am I the only one here that never debugs my programs after they `work' for me? I run my programs and play around with them but I never try to debug unless something isn't working properly... Do you think it could be because common lisp and other higher level interpreted languages can help solve some of these problems?

  153. Its a leadership problem, don't let em fool you. by strangedays · · Score: 2

    A few, admittedly highly cynical observations, respectfully submitted:

    This article is the typical mishmash of clueless quotes, half baked whines and self serving statistics that we all know and love from our friends the papparazzi. It's no better or worse than hundreds of others. I believe the slashdot community is one of the few that knows this, it's not really worth much of our time responding to these kinds of silly know-nothing opinions. That said, I'm going to anway dammit...

    One truth (apparently accidentally) embedded here is that most projects should be killed at inception. As most of us know, projects are started by users with no idea what they want, which is frankly understandable, to a point. They are then ably aided and abetted by the common variety of clue challenged technology management teams, too weak to question them or help them figure it out. There's no motivation to challenge or help the users get focussed, because most managers are never measured or held accountable for the time they waste. Why not?, because managers being humans (yes its true!) are very careful not to measure the number and dollar cost of their failures.

    I believe that an innovation we need is not some new language, tool or OS (even Linux), but a simple and practical project killing methodology. Basically, software development teams need to consider all projects a waste of time and money, until they are proven to have a viable business case and clearly achievable design. Middle management opinions should be considered inherently suspect. Failing all else, they should document their concerns and make sure these are noted by the CFO when the inevitable failure occurs. If you ever try to do this, you will probably be told its not your problem and the users/leaders/daddy knows best. If you ever hear this , its a huge red flag and clearly bullsh*t, given the failure rate. I consider this a perfectly ethical response to gross mis-management, for which developers are incorrectly blamed.

    Remember, the fox is guarding the chicken coop. I believe that most management teams secretly love to have a huge backlog of support and bugs and many understaffed, under-planned, slowly failing projects. They are arsonists, who love to run around being hero's putting out fires they secretly started. Preventing the fires is no fun, and too hard, doesn't get you visibility or promoted and forces you to clash with ingrained cultures and cynical developers (yes that's us). IMHO, this is an un-virtuous circle that lies at the heart of the so called software problem. That is, there isn't a software development problem at all, there is a software development leadership problem of enormous magnitude. I know, I am one (d*mn, how did that happen!, I used to be a real developer honest..).

    I am very doubtful that this problem is truly fixable. I believe it isn't because of the nature of human organization, the way technology projects are initiated and the inbuilt motivations to leave the situation the hell alone. These factors are built in, process improvements are transient and subject to entropy, in my experience they all fail, given sufficient time. That doesn't mean don't improve things, it means expect it to be temporary and won't matter much given the meta-chaos just described.

    Finally, I believe the business and academic crowd, though fun and entertaining to watch, are fundamentally out of touch with what we need to fix this. They are inadvertantly contributing to the problems and confusion with silly research, bogus stats and idealized impractical methodologies. They mean well, but they can't openly grok whats going on.

    Ok, I feel better now, gotta go, there's a new, cool, top priority, mission critical, must be done, greenfield, fully buzzword compliant project just starting. More sharp acronyms for the resume. You want in?...
    Gotcha!

    --
    There is no god; get over it already! Never exchange a walk on part in the war, for a lead role in a cage.
  154. 15 networked computers by SquadBoy · · Score: 2

    Let me see you pay me ~1000 dollars to set it up a nice little Samba server a Internet gateway and pull the cable. Use a simple switch (on that size network you don't need much else). Then ~200 dollars a month to maintain it. I have several that size I make money for about an hours work per month and they are happy. Oh wait I forgot these people are trying to use Winders on servers. Yup it would be much more then.

    --

    Cypherpunks: Civil Liberty Through Complex Mathematics. Those who live by the sword die by the arrow.
    1. Re:15 networked computers by Anonymous Coward · · Score: 1

      I did some pro-bono consulting for a non-profit organization a few years ago that had about 5 networked Macs. Said they were losing files. Turned out that some users didn't understand that files have to be saved. When I explained this to them, they were astounded, because "It is in the computer. I can see the document, right there, inside the computer. Why do I have to save it?". These weren't dumb people. Just social workers that had no training, no money for training, and who were not really interested in computers except as a way to get things done.

  155. Definition of "work"? by Christ-0-Geek · · Score: 2

    From everything I've done and seen, debugging a program is often more difficult than programming it in the first place. Some of my friends spend 3 day straight binges doing nothing but bugfixing and bughunting.

    Sounds like work to me.


    -CoG

    "And with HIS stripes we are healed"

    --


    -CoG

    "And with HIS stripes we are healed"
    Handel's "Messiah"
    1. Re:Definition of "work"? by FigWig · · Score: 1

      If they spent more time on design & programming, they would spend less time on debugging.

      --
      Scuttlemonkey is a troll
  156. Non-profit orgs by michellem · · Score: 1
    As someone who does technology planning for non-profits, has put in a couple of linux networks for them, and done websites for non-profits I can tell you that 90% of the non-profits that I see can't afford to support more than 15 networked computers. Believe it or not, an organization I've been working with that has over 200 workstations, and a couple of servers does not have anyone dedicted to do tech support. The financial director is in charge. (Yes, he's supposed to do the books and payroll, too!)

    Part of the issue is that it is hard to recruit techies to non-profits because of the pay - but in reality there are two major reasons: (1) A lack of recognition that an investment in technology infrastructure can, in the long run, save more money than is spent. Unlike the for-profit world, the mentality is (mostly because of necessity, sadly) penny-wise and pound-foolish. (2) Governmental agencies and private foundations don't like to give money to either technology infrastructure or personnel, only direct service. So non-profits that depend on grants are up shit's creek, they simply don't get enough money to invest in the technology, whether it be buying hardware or paying someone to run it.

    I think that linux and open source software is one way to decrease cost of ownership - we've been working on evangelizing with local non-profits. But it's an uphill battle, because many of the managers of non-profits aren't technologically savvy, and don't know how to evaluate all of the options.

  157. Length of days by doctorfaustus · · Score: 1

    Programmers only work 47 days a year--- It's just that they're all 48 hour days.

  158. you've all got it wrong by normy · · Score: 2

    I'm sick of hearing the same crap. Whenever somebody makes a sweeping comment about software consumption, half the slashdot population respond with their two cents about fine-tuning VI or some other nonsense. The point is that while mass produced software is sold on the basis of endless options LISTED on a shrink wrapped box, it is widely used in a cautious and naive manner. YOU don't come into it at that level. None of you. You are all pros, your efficiency is based on flexibility at a complex level... usually in a development environment. VI, emacs, blah blah are all perfectly suited to your needs. This is one of the biggest shortfalls in software engineering: programmers programming for themselves, rather than for the end user. In the end I think that the problem that the article is getting at is that these end users will not buys simple software because they think it is a waste of money.

  159. Sounds like a suit troll. by os2fan · · Score: 1
    Doesn't the name "Software Productivy Research" give it away? Doesn't the definition of work as writing and enhancing give it away.

    The arguement runs like this. Anything other than writing and enhancement does not better the product. Anything that does not better the product is waste.

    The notion that people may spend great amounts of time securing the position (eg debugging, building foundations, etc), or recycling waste (eg learning, trying things out, discovery) seems not to be `productive' and is thus not `work'.

    Same as any other commercial activity - they say you can run the ship in fair weather with a crew of x, so that's all you need. Tough if the boat sinks.

    --
    OS/2 - because choice is a terrible thing to waste.
  160. K.O. understood... by isdnip · · Score: 5

    Ken Olsen, founder of DEC, was once asked how many people worked there.

    "About half."

  161. Yes, but *which* 47 days? by MortimerK · · Score: 1

    I'd like to know so I can schedule my annual leave for half of them and pull some sickies for the some of the others.

  162. Article misses real reasons(and solutions) by back@slash · · Score: 3

    One big reason software developers can't spend time working on new features is that most programmers won't write code that is easily modifiable unless they know they will have to modify it themselves in the future (and even then a lot don't). Using RAD tools that develop quick and dirty two tier applications with dbtext widgets work great when you develop the application the first time but when the schema or data source changes for the widgets you have to go and modify ALL the widgets in the application to use the new schema instead of modular components that take care of db access for all the widgets. Ending this shortsighted two tier approach and instead creating multi tier robust applications the first time will go a huge way into increasing the productivity of the programmer in the long run where it matters instead of the productivity in the first cut which RAD tools focus on. I'll take a good guess (maybe others can give more insight) in saying this is especially a problem in contract work where basically there is a lot of pressure to meet deadlines and who gives a f*ck how easy the code is to modify after the contract is finished. I think its obvious that more programmers isn't going to solve the problem as you only wind up with graduates who can't even grasp the concept of creating modular multiple tier programs( you know the ones i'm talking about.) The best path is for the skilled programmers to lead by example with good programming practices, taking accountability and pride in your code and teaching others to do so also.

    --
    This comment was generated by a Squadron of Ultra Ninjas
  163. Re:It's all still WORK! by rknop · · Score: 4

    OK, 47 days sounds reasonable for actually writing code, but debugging it is work!! I've heard it said that programmers spend 10% of the time writing code and 90% debugging it. That's perhaps too extreme, but some bugs can certainly be hard to swat.

    I agree fully. Indeed, when I'm "programming", I'm spending more of the time debugging and cleaning things up than I do when I'm first writing the code. I don't even distinguish between the two when I say what I'm doing. Debugging is such an integral part of getting something working that I consider it all part of the same thing.

    When we talk about when a writer is "writing", do we just count the first draft? Take out the time when he presses the "delete" key? Take out the time reading, proofreading, and rewriting? All of that is considered part of writing. Why is debugging not considered part of programming?

    -Rob

  164. Coding Time by girth · · Score: 1

    I'm curious if they had a breakdown of the amount of time spent by engineers ranting on /.

  165. 47 Days a year sounds about right by Carnage4Life · · Score: 3
    As anyone who has read Fredrick Brook's classic Mythical Man Month knows, software development is best done with the following time allotments
    1. 1/3 planning
    2. 1/6 Coding
    3. 1/4 unit testing
    4. 1/4 sytem and integration testing
    Most of the time spent developing software is spent planning,designing algorithms and testing , initial coding takes very little time with respect to the other factors. For anyone to claim that debugging and testing are not or should not be major parts of the development process is sheer nonsense.

    Grabel's Law
  166. Once!! by www.sorehands.com · · Score: 2
    Write it right, write it once.

    If you spend more time up front making a solid product, you don't spend time on the backend fixing it.

  167. What I want to know.... by dasunt · · Score: 1

    How big are most non-profit organizations? Assuming one computer/person, that's a 15 member organization, if they all need to use computers. However, in some cases (such as a local animal shelter), I could see a use for maybe one or two computers for records and book keeping. The law of diminishing returns then kicks in, by giving an animal shelter another computer, little benefit is realized. I'm curious what they mean by when they say 90% of organizations can't afford to network more then 15 computers. Do they need a network of more then 15 computers? If so, what type of network do they try to buy? Does someone try to sell them state of the art 1 gigabit ethernet and switches when all they need a 10 megabit ethernet and a few hubs? By itself, the statistic is almost meaningless, we need other statistics to draw a conclusion.

  168. It's all still WORK! by Gandalf_007 · · Score: 4
    OK, 47 days sounds reasonable for actually writing code, but debugging it is work!! I've heard it said that programmers spend 10% of the time writing code and 90% debugging it. That's perhaps too extreme, but some bugs can certainly be hard to swat.

    It's still work, even if a project gets cancelled, because I spent time on it, and I still got paid for it! My boss has sometimes not implemented a feature because the cost for programmer time would outweigh the benefits.

    Now some programmers may only spend 47 days a year working a the rest surfing the web, but I value my job!

    --

    "It's better to keep your mouth shut and be thought a fool than to open it and remove all doubt."
  169. MS Word wouldn't sell anymore. by coig · · Score: 1

    If MS froze the feature set of Word, MS would not be able to sell any more copies of Word...

    Especially since most bug fixes are distributed as free patches.

    "MS WORD 3000 - More Features - Now You Can Do This! - Fixed Bugs!"

    - is more attractive than -

    "MS WORD 3000 - Fixed Bugs!"

    I say give me a small, stripped-down utilitarian software package where I can pick & choose the level of Bloatware to put up with.

    Like, give me Word so basic that it rivals WordPad... or even NotePad -- and then let me pick and choose how slow/bloated/buggy I would like it to be.




    "C'mon, donkey-boy!!"
    --
    Crystalize your tears, dried upon The Cross
    Blood drips on your pain, time to ride The Light
  170. working URL by Anonymous Coward · · Score: 1

    In case anyone tries to read the story after 11/29, here's the URL:
    http://www.latimes.com/business/columns/techcol/20 001127/t000113753.html

    As a software engineer, I understand why so little time is spent developing new code. The more code you have in production, the more time you spend supporting the users. Between coworkers who can't figure out how to access a network drive and users who don't know what software that they spec'd out themselves does, I have very little time in any given day to write code. I write code maybe two hours a day, and either handle service problems or overhead items the rest of the time.

    It's discouraging, but unavoidable in this field.

  171. Huh by Icebox · · Score: 1

    Maybe they meant 47 straight days in a stretch. Maybe thats just DBAs, dunno.

    --
    Icebox
  172. Re:Work by Abstinent+Whore · · Score: 1

    AH! You have the intelligence of a jar of mayonnaise! They didn't say debugging and such wasn't work. Programmers spend 47 days per year "developing and enhancing code." That however, does *not* mean debugging. That is work, of course, it's just... ugh. nm.

    --
    ------ This is my sig.
  173. And on the 48th day he debuggeth by ackthpt · · Score: 2
    For one, I can say that this varies widely depending upon where the programmer is working. In the private sector work was fast, often requiring massive effort, such that 47 days of programming may have happened in one month. In the public sector it's been more often that projects move at a slower pace, because they usually lose their patron saint or just become less interesting.

    Quite probable that within specific areas the public and private examples transpose, as I've seen examles of that, too, doing one years work in 3 months (just before quitting) at a college.

    --

    --

    A feeling of having made the same mistake before: Deja Foobar
  174. 47? I'm not surprised. by Raptor+CK · · Score: 2

    It makes a lot of sense, actually... Have you looked at any piece of software recently? The linux kernel supports so much more than it used to, and don't begin to think that it didn't require testing to get there.
    Same goes for most things, be it X, Mozilla, MS Windows, etc. While I refuse to make a statement regarding the quality of any of these pieces of software, they all have a lot of features that we'll rarely, if ever, use.
    Same for a few obscure vi commands, random crap in MS Word, half of emacs :-), and so on.

    It's just the way things work. Remember, most packages did start small. Then they got hit by the "wouldn't it be cool if?" syndrome.


    Raptor

    --
    Raptor
    "Procrastination is great. It gives me a lot more time to do things that I'm never going to do."
  175. um by jafac · · Score: 5

    so you're saying (with that title) that programmers aren't *WORKING* when they're testing, debugging, coding projects that end up shitcanned, etc.?

    A more proper title for this article:
    Programmers Code for projects that eventually see the light of day, 47 days per year.

    The other 318 18-hour days, they're working their ass off doing the other stuff.

    Do programmers only code? News flash, duh, they don't. gee whiz, I think I'll change my major now that I've learned this startling revelation.

    No, actually they spend the other 318 days reading "Visual Basic For Dummies" books.

    --

    These are my friends, See how they glisten. See this one shine, how he smiles in the light.
    1. Re:um by Xerithane · · Score: 2

      I spend the other 318 days reading slashdot myself.

      --
      Dacels Jewelers can't be trusted.
  176. Opendoc Capability in Java or other languages? by namespan · · Score: 2

    If I recall correctly, OpenDoc wasn't necessarily
    tied to a specific language or platform. It was a description of how to write container apps and objects. A spec, which Apple produced an implementation of. I think a company called Digital Harbor actually produced the theoretical word processor.

    I've heard you can do most of the things that OpenDoc did with Java, and perhaps other languages. True?

    And if so, why not try and create such a thing?

    --
    Libertarianism is rich wolves and poor sheep playing gambler's ruin for dinner.
  177. CLARISWORKS! by DrunkenBastard · · Score: 1

    Clarisworks (now Appleworks) works FANTASTICALLY on all of the Macs I support. I reccomend it to everyone who wants a word processor, spreadsheet, whatnot - for their Mac's at home. Works fast and efficient (for a Mac), and doesn't take up much hard disk space and it just WORKS!

    --
    I'm like a chocoholic, but for booze.
  178. Low-overhead networking by Infonaut · · Score: 1
    Can anyone corroborate the article's statement that 90% of nonprofit organizations in the U.S. cannot afford to maintain more than 15 networked computers?

    Maybe this is why for so long schools have been such strong Mac advocates. I say this from the experience of having administered networks on a pro bono basis for three separate K-12 networks. They all used Macs and in every case but one had only volunteer sysads.

    I use Linux at work, and I believe that Open Source tools could take over at nonprofits and other low-operating budget environments, but in those organizations the person running the network is usually a novice who has ten times more demands than he has time or resources.

    If someone could package a distro aimed squarely at novice users who simply want to create a network that will allow file sharing, Net access, and printing, with very limited options, it would spread like wildfire.

    A clear, non-technical step-by-step set of instructions as a PDF (take a look at the instructions that come with an iMac - the illustrations make setup idiot-proof) is essential to success. We may be used to man files, but admins of small nonprofit networks need clear, easy to understand guides.

    This is the biggest single failing of Open Source tools right now - despite many efforts, the amount of learning - "Thinking Linux" that people have to do in order to use the tools is prohibitive.

    The tools are supposed to work for human beings, not the other way around. When the Open Source movement can get out of the elitist mentality, we'll really see it take off like a rocket.

    --
    Read the EFF's Fair Use FAQ
  179. I dunno, maybe it could help! by 2nd+Post! · · Score: 2

    If a program team came into a project with the specific goal of satisfying 1 need, instead of 100, or 1 customer (the boss, or his daughter, or someone's niece), then you'd have much higher efficiency.

    Then perhaps v2 would to rewrite the program into a framework such that it could be extended with plugins and paired with other similarly written programs.

    It's a methodology that might actually work. Design for one person. Test on one person. Target one person. Support one person.

    Then, afterwards, rework it so that that one person can still use it perfectly, but that everyone else on the team can still use it. Maybe stage three is to rework it so anyone else can use it, with small, minor enhancements and such, but always back to the basis that the one tester, the one user, the one customer, can still use the product.

    Does this sound bad? It sounds reasonable, to me!

    As for the Church Turing Thesis; a computer is a computer, but MS Word is a blender. It should not be used for maintaining address books, making flow charts, web site design, or databases. It is a blender.

    It could have a plugin for web export. For address book export. For Database export, whatever. But it isn't a computer, or a system. It's just a word processing program!

    Geek dating!

  180. It's Trua about NPOs by TheFuzzy · · Score: 1

    I support a lot of non-profits in my business. The average has 5 functioning computers, and 1 out of 3 has no network to speak of (Win32 peer-to-peer or sneakernet).

  181. Design? by trefoil · · Score: 1

    Why is there so much time spent on debugging, and not more on designing it? With a better overall design, you'd think that less time would be spent on bug fixing. Instead, a lot of programmers that I've noticed write a lot of hack code that's not really thought out.

  182. Re:Sounds about right by Bush+Pig · · Score: 1

    About 2 years ago, I spent the 3 longest months of my life working on an exciting insurance application. (It's just about the only business-type app I've ever worked on, and reinforced my opinion that, while business problems may be quite difficult, they are not even slightly interesting - these days I only do technical and scientific programming.) The point I'm making, slowly, is that 47 days is probably actually too high. The place rolling out the exciting insurance app had a design and QC process and set of policies, but these were almost never actually applied. I would receive a tech. spec. to code from which didn't generally make sense, so I'd go back to the original analysis which also usually didn't make sense, so I'd try and locate the business analyst who had produced that (and he often didn't make much sense either). So I'd spend 80 hrs reanalysing, coding and testing something that the project manager (speaking loosely) had allowed maybe 5 hrs for. And no, I'm not a particularly slow coder, I just like my stuff to work. It's an integrity thing.

    --
    What a long, strange trip it's been.
  183. I am one of those 3 dozen geeks by omnislash · · Score: 1

    I live in Austin TX, and I go to school at one of the schools in AISD, which is the district he is talking about. It's true: there are a lot of schools where the district's people are incompetent, and most kids there don't know how to turn a computer on, much less fix them. But at my school, LBJ HS, we actually have a club devoted to fixing computers and maintaining our network, which we call STAC. Yeah, we're a bunch of high school students, but we ARE able to keep our own network up and running. Most of us are fairly avid /. readers too. :) I do a fair amount of C++ coding (the CS classes in high school are HORRIBLE), even at a science and math academy, and I'd say that a LOT of time is spent debugging. But it's work too. Let's see those whining end users say it isn't work when the programs they use crash because nobody did any debugging. :)

    --
    In a world without walls and fences, who needs Windows and Gates?
  184. Somebody needs to brush up on his math skills by Carnage4Life · · Score: 2

    heh - that's *IF* you believe everything you read. and what happened to the other 1/6th??

    1/4 + 1/4 = 1/2

    1/3 + 1/6 = 1/2

    1/2 + 1/2 = 1

    What other 1/6th were you talking about?

    Grabel's Law

  185. Code Monkeying by scumm · · Score: 1

    I wouldn't agree with this. I work roughly 12 hours a day, and get maybe 2 hours a day of good, quality testing done. Then again, I work for a small startup, and am one of a very small number of coders.

    On the other hand, I don't have to deal with much beaurocracy :)


    Mike Thacker

  186. Non Profit Network Solution by HobartXIII · · Score: 1

    Most non-profits cannot afford to network. My company E4org, Inc. offers a linux-based network solution: email, webmail, firewall, intranet, etc. They pay monthly based on their user base. It saves them tons of $$ and lets them afford things they otherwise cannot. We have found a huge market here in D.C.

  187. So? by Flavio · · Score: 4

    I somehow fail to find that surprising.

    Every programmer knows that no matter how determined one is, debugging and pieces of "work in progress" (that'll be canned for some reason) are major time spenders.

    I assume that study is targeted for management audiences with no technical knowledge so I won't slander it.
    I believe it's pretty clear that simpler is the way to go. Compare Linux to the proprietary OS with the largest desktop market share and you'll see the largest example of this.

    Furthermore, a "light-weight word-processor that imports foreign formats correctly" is an oxymoron. If your word processor is so light-weight it'll end up discarding most of the features that advanced processors use, so the file importation won't be that correct.

    I can safely state that this "faster, lighter, simpler" idea is nothing new at all and has been used for eons by competent programmers. Every simple piece of software that stays simple is an example (look at vi and all basic unix tools).
    If you want something newer, I'll mention abiword and xmms.

    This revolutionary concept is summarized in one term: focus.

    Flavio

  188. How was this study carried out? by Watts · · Score: 2

    I can't really find any information on the site that confirms that this is grounded in hard research, like studying people working at software firms or companies.

    It's sort of suspicious that the company reporting this is in the business of selling planning tools... this sounds like a great sale line: "Your current process is amazingly inefficient, but using our tools, you can streamline productivity!"

    I'm not bashing planning tools or a good development process, but this number seems to be a bit sketchy.

  189. Lack of Tech Support? by DanMcS · · Score: 5

    In Austin, Texas, where I live, the technical-support ratio in the local school district is about 2,500 computers per tech-support person. The district's ratio means a majority of its computers get no attention at all. One local high school has computers still sitting in boxes, months after their purchase, because no one available knows how to set them up.

    Yeah, because there aren't three dozen geeks at that school that wouldn't rather set up the boxes for free than do super-easy high school assignments. When we got computers at my old school, our physics teacher wanted to actually use his, so he had a couple of us set it up surreptitiously (students weren't allowed to touch them). Before long, there was this underground network of teachers saying "psst, could you guys set this up for me?", and when the official guy came around to finally do it, he poked around, shrugged, and told the teachers everything was great.
    --

    --
    Communication is only possible between equals
  190. Sounds about right by mjgamble · · Score: 2

    The article said of the approximately 200 days a worker spends at work, 47 days are spent developing new code and the other 150 are spent fixing bugs and doing testing. This gets back to the statistics about how few lines per code a person generates a year.

    What would be more interesting to learn is how many those other 150 days are broken down into design, testing, and bug fixing. Working on a large project myself I would certainly agree that not enough testing is done and the brightest aren't always the same set of people doing the design.

    I'm not sure if, however, all the labor shortage could be avoided by designing things in the first place. I believe the Mythical Man Month postulates that as software projects and their teams grow in size, their complexity grows disproportionately faster. Sure it is easier to design something that is small that work just as you intended. Try throwing 40 people together each doing that with a mediocre architect and I'll tell you the results aren't pretty. Even worse are the people usually put on maintenance.

    Everyone should go read the Big Ball of Mud. Really. Everyone that has ever worked on a big project will be able to relate to its contents.

    -mjg