Slashdot Mirror


Ask Slashdot: What To Do About the Sorry State of FOSS Documentation?

First time accepted submitter TWX writes I've been out of computers as a serious home-hobby for many years and in returning I'm aghast at the state of documentation for Open Source projects. The software itself has changed significantly in the last decade, but the documentation has failed to keep pace; most of what I'm finding applies to versions long since passed or were the exact same documents from when I dropped-out of hobbyist computing years ago. Take Lightdm on Ubuntu 14.04 for example- its entire configuration file structure has been revamped, but none of the documentation for more specialized or advanced uses of Lightdm in previous versions of Ubuntu has been updated for this latest release. It's actually harder now to configure some features than it was a decade ago. TLDP is close to a decade out-of-date, fragmentation between distributions has grown to the point that answers from one distro won't readily apply to another, and web forums for even specific projects are full of questions without answers, or those that head off into completely unrelated discussion, or with snarky, "it's in the documentation, stupid!" responses. Where do you go for your FOSS documentation and self-help?

430 comments

  1. *BSD has best-of-breed documentation. by Anonymous Coward · · Score: 5, Insightful

    The one thing Linux really, really lacks, compared to the *BSDs is the quality of the documentation. Not even Google makes up for the deficiency.

    1. Re: *BSD has best-of-breed documentation. by LostMyBeaver · · Score: 2

      I would say Solaris has always had the best documentation... Until oracle at least.

    2. Re:*BSD has best-of-breed documentation. by Anonymous Coward · · Score: 3, Insightful

      This is impossible. In the Linux world, everything is always a moving target. The reason that *BSD documentation is good is because things are often designed, implemented and then documented. The FreeBSD handbook does get revised frequently, but usually just to document enhancements rather than complete changes in how everything works.

      For a Linux distro like Ubuntu to have stable documents, they'd have to actually stick to a sound system, init system and so forth for awhile and not play musical chairs.

    3. Re: *BSD has best-of-breed documentation. by Anonymous Coward · · Score: 0

      I'm the AC who wrote the post you replied to.

      I used Solaris in the 8 and 9 days, so I would wholeheartedly agree. But I still need to point out that the *BSD documentation is not far behind that of Solaris. Or was. I don't know what happened after the Oracle take-over, as I returned to academia by then.

    4. Re: *BSD has best-of-breed documentation. by Anonymous Coward · · Score: 0

      Is Solaris FOSS now?

    5. Re:*BSD has best-of-breed documentation. by CaptnZilog · · Score: 2

      I'm reminded of trying to tweak VM parameters back in Linux 2.4.x kernel days, and finding out that "vm.fooparam" worked in 2.4.6, was deprecated by 2.4.12, and then brought back in 2.4.18... while "vm.barparam" didn't exist in 2.4.6, was new for 2.4.12, and probably did nothing by 2.4.18... it was just silly to have to dig around just to find out what parameters actually did anything in what really was a "patch release".

    6. Re: *BSD has best-of-breed documentation. by Craig+Ringer · · Score: 1

      I concur - I used to use the Solaris docs heavily for Linux sysadmin, as their coverage of the POSIX-y bits was generally excellent.

      Before Oracle.

      Unfortunately, part of the reason Solaris's docs had to be so good was because the tools were often so bad. Any OS where the first thing you do is "overlay a GNU userspace" has a problem.

  2. Real men by Raseri · · Score: 4, Insightful

    learn how to use a program by reading the source code!

    I jest, of course. It's not just open source projects that have this problem, though; plenty of commercial applications also have shit for documentation. The upside in open source being that you *can* read the source and build documentation from it, if you were so inclined.

    --
    Writhe your naked ass to the mindless groove.
    1. Re:Real men by NotDrWho · · Score: 4, Insightful

      That's because documentation isn't fun or glamorous. Everyone developing FOSS wants to do all the fun programming stuff. But no one wants to do the boring hard work of documentation, UI polishing, promotion/marketing, etc. That's why FOSS tends to suck in those areas compared to the commercial stuff (where they actually pay technical writers, designers, marketers, etc.)

      --
      SJW's don't eliminate discrimination. They just expropriate it for themselves.
    2. Re:Real men by Raseri · · Score: 2

      Nobody said only FOSS projects have shitty documentation.

      It was implied:

      I've been out of computers as a serious home-hobby for many years and in returning I'm aghast at the state of documentation for Open Source projects.

      Though it's possible that OP was in prison for 10 years (he doesn't actually say why he was out of home hobby computing), I didn't see any reason to jump to that or some similar conclusion.

      No shit, troll.

      That word. I do not think it means what you think it means. Calm the fuck down, kid.

      --
      Writhe your naked ass to the mindless groove.
    3. Re:Real men by Anonymous Coward · · Score: 0

      Nice. Not only do you fail to answer the points brought up, but you also suggest the OP was in prison based solely on his comment that he wasn't doing hobby computing.

      I think "troll" is indeed a valid description of your behavior.

    4. Re:Real men by Anonymous Coward · · Score: 0

      It's not just open source projects that have this problem, though; plenty of commercial applications also have shit for documentation.

      It does not matter. In the sea of commercial garbage software, there's also almost always a premium solution for a problem, which comes with extensive documentation and customer support resources. Then you can just ignore the rest.

    5. Re:Real men by Raseri · · Score: 1

      there's also almost always a premium solution for a problem, which comes with extensive documentation and customer support resources

      As was mentioned farther up this thread, those days are rapidly coming to an end. Less and less documentation is being given to users even for commercial, closed-source programs, with the expectation that "the community" will pick up the slack. In such a climate, how does it make sense to spend money on some "premium" solution when the documentation is just as bad as, or far worse than, its FOSS counterpart?

      --
      Writhe your naked ass to the mindless groove.
    6. Re:Real men by RabidReindeer · · Score: 1

      A lot of things aren't fun or glamorous.

      That's why I have a lot of respect for the "sloggers". The people who can work through the details, get them down and verify that they got them right.

      Unfortunately, in commercial products these days, the documentation people likely got laid off when their duties were transferred to the developer along with the sysadmin, DBA and network administrator jobs.

      In FOSS products, the big problem is that even if you get volunteers to do the docs, the people who know what the code is doing may not be talking to the people who write the docs. Or worse, have dumped the initial docs on them. From before all the major changes were made.

    7. Re:Real men by westlake · · Score: 1

      The upside in open source being that you *can* read the source and build documentation from it, if you were so inclined.

      "Reading the source" doesn't necessarily imply that you truly understand what a program is doing or how to use it effectively.

      A simple example would be a raster graphics editor like Paint.NET or Krita, which as a bog standard download may include fifty to one hundred or so customizable tools and special effects, aka filters.

    8. Re:Real men by Anonymous Coward · · Score: 0

      It's funny because that's basically the available option.

    9. Re:Real men by Mr.+Slippery · · Score: 1

      That's why FOSS tends to suck in those areas compared to the commercial stuff (where they actually pay technical writers, designers, marketers, etc.)

      So, I take it you've never written commercial software? ;-) I'm pretty sure tech writers are the exception, not the rule. In 24 years of writing software, I've been in two jobs that had technical writers on staff. And one of those was an NSA/(D)ARPA research project where the government mandated big binders full of docs.

      --
      Tom Swiss | the infamous tms | my blog
      You cannot wash away blood with blood
    10. Re:Real men by alteran · · Score: 1

      Agreed.

      The reason documentation sucks in Linux is because programmers are writing it. It's not because of the myth that programmers can't write, it's because writing is not really their passion-- creating the programs is. I mean, give me a choice between fixing/improving my code and documenting it, and the choice is pretty damn obvious.

      One thing I learned in my tech writing days-- programming ALWAYS outpaces code. ALWAYS. A business can keep that in check (or not, which is frequently and increasingly the case), but in FOSS the programmers are just going to run away with their passions (and rightfully so) while the documentation lags. Someone might try to write some documentation for software they love after the fact, but the FOSS release cycle is such that the documentation will be outdated before it's completed. Very unsatisfying.

      Bad documentation is the price we pay for FOSS. Generally, I think FOSS is worth it.

      If I had money lying around, I'd try to setup a clearinghouse for web boards dedicated to answering questions as they come up, and create the best damn search interface I could. In short, a better system of what we kinda of have now.

      --
      Who is RTFM and when will he help me with Unix?
    11. Re:Real men by Solandri · · Score: 1

      Everyone developing FOSS wants to do all the fun programming stuff. But no one wants to do the boring hard work of documentation, UI polishing, promotion/marketing, etc. That's why FOSS tends to suck in those areas compared to the commercial stuff (where they actually pay technical writers, designers, marketers, etc.)

      Let me present an alternative hypothesis. There are plenty of technical writers, designers, and marketers out there interested in and using FOSS. They'd probably be more than happy to contribute to documentation, UI polish, and promotion just as programmers are happy to contribute to development. The problem is the FOSS developers won't talk to these guys, brushing them off with "if it's that important to you, figure it out yourself noob!"

      The problem is a lack of respect for those who aren't programmers, including users. Commercial software developers respect users because the users are the ones who ultimately pay for the commercial developers' paycheck. One of the unintentional side-effects of the unpaid FOSS philosophy is the lack of a need to respect the users. Whether or not your FOSS project lives or dies depends on how many programmers contribute to it, not on how many users use it.

    12. Re:Real men by fisted · · Score: 1

      programming ALWAYS outpaces code.

      Now that's interesting...

    13. Re:Real men by Anonymous Coward · · Score: 0

      That's because documentation isn't fun or glamorous.

      While true, I think this isn't the root cause.

      I think the root cause is that software by its nature can and does change very rapidly, whereas documentation by its nature requires more effort to create and thus changes very slowly. Software implicitly is the result of a number of internal architectural decisions, but over the lifetime of the software those decisions may be revisited and changed. Such changes are necessary for software to evolve to meet changing needs, but the cost of properly documenting these changes is, I would hazard to guess, much higher than the cost of the software change itself.

      In other words, for a given software change D, it may often be the case that the engineering cost of implementing that change is less than the documentation cost of describing the change. As a contrived but easy-to-understand example, say you changed the appearance of all UI elements by editing one line of a configuration file to select a different skin. This change incurs a very low engineering cost, but the documentation cost of re-doing all the screen captures is much higher. At a more abstract level, I think many software changes are of this nature in that they incur a high documentation cost. And as more and more software changes are made, the cost of properly reflecting all of those changes in documentation cumulatively continues to rise. There's also the question of deciding when the software can be considered stable enough to justify incurring the documentation cost.

      Fundamentally I suppose the problem is the different underlying structure between software and documentation. Perhaps some ideas from Knuth's Literate Programming could help.

    14. Re:Real men by Anonymous Coward · · Score: 0

      source code is often a pain to read. Especially in Java projects where dependency injections are used extensively.

    15. Re:Real men by MoarSauce123 · · Score: 1

      Agreed...the reason for open source as well as proprietary is the same: documentation is an afterthought and especially those in the know (developers! developers! developers!) outright hate documenting anything and if they do nobody understands it. The problem starts with many technical writers being neither technical nor writers, but often just a bunch of certified goons who know how to operate FrameMaker to prettiffy stuff that hopefully someone else wrote and nobody reads. In the tech writers...errr, formatters defense, they only get hired for a month to document an application that takes two months to master and two years to build. The sole purpose of this exercise is to check off the box next to "help" on the requirements sheet. You want awesome documentation, then engage one or more tech writers full time and have them be plugged in right from the design phase. As it turns out, tech writers who are techie tend to know a lot about user experience and user interface design. Also, plugging them in right from the start will make it much easier to explain what the gizmo does because they came along on the journey of why the gizmo does what it does and why it doesn't do what it doesn't do. While the tech writer is busy getting the prep work done development takes place and the tech writer - as time allows - can join in the QA effort. Once a feature reached initial maturity the tech writer can describe the feature and write step by step instructions. After that - if time allows - the tech writer can help out in support because the tech writer should know the application as well as anyone in support or potentially even better. Over time the tech writer should be also turning into a subject matter expert to help in the analysis and design. That means there is absolutely no reason not to hire a tech writer who is technically versed and a good writer as a full time team member who has to be allowed and encouraged to take part in all technical and design discussions. Also, writing decent documentation is a tremendous amount of work, about as much work as writing the application code, just using a different language. It is also an ongoing maintenance task to update for changes and add new items or remove topics about no longer present features. No matter if it is open source or proprietary, as long as teams and especially management are not willing to value tech writers the same way as they value architects or senior developers nothing will change. Sadly, on software teams tech writers are often even more belittled than QA, which also often gets no seat at the table, but is purely used as a scapegoat. Excellent documentation (and quality) take time and effort and skilled experts and all that costs money or takes someone who is willing to make a long term commitment to an open source project. Being a tech writer I tried on occasion and fairly quickly lost interest due to the endless arrogance of developers who think they are hot shit and know everything better, which means I didn't have to know any of it. They are instantly annoyed by any questions and by the time I beat the info out of them it was obsolete anyway because some other rogue developer just came up with what he thought was a much better way to do stuff negating a lot of other (and often better) work done before. Interestingly, I found more willingness of cooperation from commercial software companies who dished out free licenses for documentation work done for them (because they did the math and knew it was a steal). Doing documentation in open source projects is the most thankless job in the universe and that is why people don't want to do it and that is why FOSS docs often suck. Ah yes, and reading source code....as mentioned, developers hate writing documentation and that includes comments in source code. It's great if they can compile C in their head, but the vast majority of people cannot do that, but they can follow along the logic and workflow if source code is properly documented.

    16. Re:Real men by Anonymous Coward · · Score: 0

      Re: "The upside in open source being that you *can* read the source and build documentation from it..."

      What utter crap. Do you even know what documentation is? Do you know what percentage of the population wants to read source code? If reading the source code was an acceptable solution then we wouldn't need documentation. Stop peddling FOSS as the answer, when the OP clearly and correctly stated that FOSS has a serious documentation problem.

      You are trying the gild the lily and it's sad and pathetic. Stop it.

      What's next? "Well, the upside of having all your possesions stolen is that we get to jail a thief?"

  3. It's open source by slashdice · · Score: 0

    fix it yourself.

    --
    Copyright (c) 1990 - 2014 Dice. All rights reserved. Use of this comment is subject to certain Terms and Conditions.
    1. Re:It's open source by war4peace · · Score: 4, Insightful

      That sort of attitude is the problem.
      Building the application and writing the code is half of the project. The other half is documenting it. Yes, you'll spend twice as much on the project, but that's counterbalanced by someone else picking up and improving it a lot faster.
      Also, undocumented code is a half-assed job, no matter how well it performs.

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    2. Re:It's open source by Anonymous Coward · · Score: 0

      Problem is that in most dev houses, when you spend the time documenting it, the other person who does 10,000 lines a day, but doesn't document, and does not care about bugs, will keep their job, and not you. This is because making a release date with anything is better than code quality or manageability.

    3. Re:It's open source by war4peace · · Score: 1

      Wait, wait. We're talking about different things here.
      In a dev house, as you call it, there's going to be different people with different jobs. The developer writes code and comments it, then there's a content writer who does the documentation. Also these tend to be for-profit organizations which don't do much OFSS (if any at all).

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    4. Re:It's open source by Anonymous Coward · · Score: 0

      A lot of people have programming as a hobby. How many people do you know that likes to write technical documentation as a hobby?
      The solution to getting FOSS documentation up to par is to pay someone to do it.

    5. Re:It's open source by Anonymous Coward · · Score: 3, Funny

      fix it yourself.

      How the hell is someone supposed to DOCUMENT something that they're trying to figure out how to make work?

      Are you a black hole of utter cluelessness?

      No clue will ever escape your infinite singularity of utter incomprehension?

      Once a clue passes your event horizon it's never seen again?

      Do you emit Hawking Clue Radiation?

    6. Re:It's open source by war4peace · · Score: 3, Interesting

      I write code as a hobby and *gasp* I thoroughly document it, and in all fairness I don't do it for my customers (I have none) but for myself. I realized, couple decades ago, that if I don't comment my code it's a lot more difficult for me to remember what I did months or years later.

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    7. Re:It's open source by war4peace · · Score: 1

      Further proof that what I'm saying makes sense. Thank you.

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    8. Re:It's open source by ghettoimp · · Score: 1

      Eeh. I agree that, as a user, it's frustrating when software doesn't have proper documentation.

      On the other hand, if someone donates his time to develop a program and makes it free software, it seems hardly fair to fault him for not writing documentation to go along with it.

      Someone who really cares could, of course, do it themselves, or offer to pay the developer to do it. If most people don't care enough to do that, then maybe that's the problem to focus on.

      If someone comes along and gives you a free hamburger, you don't complain that they didn't bring fries and a drink.

    9. Re:It's open source by war4peace · · Score: 4, Insightful

      If someone comes along and gives you a free hamburger, you don't complain that they didn't bring fries and a drink.

      But if the hamburger tastes bad and you are not sure what's in it,. you might want to ask. And if you ask and are given an answer like "hey it's free, eat it or GTFO" it doesn't make the giver less of an asshole.

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    10. Re:It's open source by Anonymous Coward · · Score: 0

      How do you attract people long enough to be able to write the documentation if the documentation isn't there to begin with? It's a catch 22, you need users to stick around long enough in order to have somebody to fix it themselves, but most people aren't going to be interested in digging into the source to find out what the program all does and how it's supposed to work.

      The end result is that nobody winds up doing the documentation unless the developer provides at least halfway decent documentation to start with.

    11. Re:It's open source by petes_PoV · · Score: 1

      ... if someone donates his time to develop a program

      But that isn't how it works.

      The whole FOSS thing is a trade. On the one hand, the coder "donates" his/her/its time doing things that are funAnd when you multiply the time spent by maybe some thousands of users, all trying to work out the same problems - compared to the time taken to write, compile and toss-over-the-wall some of this stuff, "free" software is probably some of the worst deals on the planet.

      And as for that old crock: You get what you pay for or "Hey, it's free: what do you expect?", most of this stuff is far from "free", it has a large negative value, as it takes many hours or days of your time just to get up to zero: the point at which you can start to do something useful with it.

      --
      politicians are like babies' nappies: they should both be changed regularly and for the same reasons
    12. Re:It's open source by RabidReindeer · · Score: 1

      Wait, wait. We're talking about different things here.
      In a dev house, as you call it, there's going to be different people with different jobs. The developer writes code and comments it, then there's a content writer who does the documentation. Also these tend to be for-profit organizations which don't do much OFSS (if any at all).

      What a quaint 20th-Century concept.

      We laid all those people off because we're "Lean". The developer's native language is Malayam and the documentation department was dissovled.

    13. Re:It's open source by Anonymous Coward · · Score: 0

      I code and document all my stuff. It's not my favorite thing to do (the documentation part) but I know the software best and am best qualified to do it. I'm a professional that gets paid quite a bit and have been for the last 20 years or so.

    14. Re:It's open source by Trailer+Trash · · Score: 2

      fix it yourself.

      How the hell is someone supposed to DOCUMENT something that they're trying to figure out how to make work?

      Are you a black hole of utter cluelessness?

      No clue will ever escape your infinite singularity of utter incomprehension?

      Once a clue passes your event horizon it's never seen again?

      Do you emit Hawking Clue Radiation?

      Keep going....

    15. Re:It's open source by war4peace · · Score: 1

      I feel you, bro...

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    16. Re:It's open source by Anonymous Coward · · Score: 0

      then there's a content writer who does the documentation.

      The who now?

    17. Re:It's open source by ghettoimp · · Score: 1

      This seems pretty perverse. If a developer doesn't write documentation because he doesn't like to, how does that make him an asshole? You're the one who is asking him to do more work, for your benefit, for free.

    18. Re:It's open source by war4peace · · Score: 1

      Again, mindset.
      Documentation should not be perceived as "optional bone thrown to the hungry masses". It's part of the process. You actually START with it, during the design phase. You explain how the application works, to yourself, then as you code you develop that document as well.
      My project already has 3 large mindmaps where I write everything, from descriptions to formulas to examples. That is before one single line of code is written, and each column, table and SQL script has descriptions and explanations. Is it tedious? Hell yeah. Is it helpful? Enormously so. My time spent writing megabytes of plaintext is time saved while developing and building a wiki later on.

      And if, months or years from now, I get bored or caught up in something else, someone else could simply pick up from where I left and continue developing right away, the chances of that happening being directly proportional to the clarity of documentation.

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    19. Re:It's open source by bidule · · Score: 1

      The big joke is that half of what you need to do for documentation, you need to do for regression testing. Might as well explain what you are testing and why.

      --
      ID: the nose did not occur naturally, how would we wear glasses otherwise? (apologies to Voltaire)
    20. Re:It's open source by Anonymous Coward · · Score: 0

      If someone comes along and gives you a free hamburger, you don't complain that they didn't bring fries and a drink.

      But if the hamburger tastes bad and you are not sure what's in it,. you might want to ask. And if you ask and are given an answer like "hey it's free, eat it or GTFO" it doesn't make the giver less of an asshole.

      And if the giver also happens to be a free hamburger advocate, who's trying to convince people to switch to free hamburgers rather than hamburgers they have to pay for, then anything along the lines of "Hey, it's free, eat it or GTFO" or the snarky "You can always demand a full refund" is effectively a big "F**k you."

    21. Re:It's open source by donaldm · · Score: 1

      The problem with software documentation is exactly the same as it was over 30 years ago. This is not to say that software documentation is bad, in fact most are surprisingly well documented with the main problem being the user (oh dear!). Now let me explain why I said this.

      When an application is designed (hopefully), written and documented there is a percentage of time that is allocated to all three attributes and usually the smallest percentage is (you guessed it) the documentation although the initial design should be the groundwork for the documentation in the first place. However no matter how well documented a software product is, you are always going to have detractors saying thing like "The documentation is obscure" or "There is not enough documentation" or "The documentation is too long". Usually the detractors fall into attitude of "The application should be so good I don't have to think or do any reading anyway".

      The author of the article gives an example of LightDM which has fairly meagre documentation if you go to the web site. Oh the horror (sigh!). Well the application is a "Desktop" which can be likened to Gnome, KDE, Xfce and even Microsoft Windows. In this particular case you normally have a system setting GUI or you can go to the web for more information. If you do a Google search on LightDM you get something like 472,000 hits so there really is no excuse for saying that there is not enough documentation and information.

      Personally I don't blame the so called technical elitists from saying RTFM (coined well over 30 years ago) and then come to me if you can't find what you want. The last bit is what I normally say as well and many users seem to have selective deafness. With the Web and decent search engines getting information could never be easier, the problem is that many users who complain don't seem to want to use their brain.

      --
      There ain't no such thing as proprietary standards only proprietary formats. Standards are by definition open.
    22. Re:It's open source by Arancaytar · · Score: 1

      Its free, take it or leave it. contribute or STFU.

      You don't like it? We don't care.

      And the problem isn't ours its yours since you're the one whining.

      This attitude is why every single piece of free software that is widely in use (Firefox, Ubuntu, Android, etc.) is developed and distributed by commercial companies. Community-driven development is good at fixing bugs, but sucks when documenting or supporting.

    23. Re:It's open source by jeremyp · · Score: 1

      Its free, take it or leave it. .

      I think, with your attitude, I'll leave it.

      Please tell me what Open Source project(s) you work on so that I can comply.

      --
      All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
  4. Ya get what you pay for by bhlowe · · Score: 1

    Hire someone who knows the product (a starving developer?) to help you.

    1. Re:Ya get what you pay for by Anonymous Coward · · Score: 0

      So, the code is free, but you are suggesting that a developer should be hired to understand the installation options? It's people like you that give open source projects a bad name.

    2. Re:Ya get what you pay for by quintus_horatius · · Score: 1

      That's the basic idea behind companies like Red Hat (GNU/Linux) and Command Prompt (Postgresql). Are you saying that those companies are giving OSS a bad name?

    3. Re:Ya get what you pay for by Anonymous Coward · · Score: 0

      YES. I avoid open source "Enterprise" type stuff because I KNOW as soon as I go beyond a trivial implementation, my choices soon become either beg in a support form or pay up. No licensing fees, but the same mandatory support engagement. It ends up being a wash, moneywise.

  5. Re:Read the source code by Anonymous Coward · · Score: 5, Insightful

    That is completely unreasonable. If I have to read the source code just to be able to understand how to use the program, I will just wind up using proprietary software with proper documentation.

  6. Just avoid shitty GitHub projects. by Anonymous Coward · · Score: 0, Troll

    The best thing to do is avoid GitHub projects. The GitHub culture is all about spewing out a lot of shitty JavaScript or Ruby code really quickly, making it public using git, then never bothering with real releases or documentation or anything else that's associated with software project management.

    Software not hosted on GitHub is almost always a lot better. The fact that it's not hosted at GitHub means that the developers are at least capable enough to set up their own infrastructure, or at least use a hosting platform like SourceForge that encourages real software releases. These developers aren't just about shitting out shitty Ruby or JS code snippets. They're about putting together open source software products, which includes providing regular tested releases and good documentation.

    I can't think of the last time I've gone to a project hosted on its own website or even on SourceForge and had a problem finding useful documentation. Sometimes you may need to build from source to get the documentation generated fully, but at least it's there. This is totally the opposite of my GitHub experience, where I often find code with no comments at all, no documentation, and not even a readme file. It has gotten to the point where if a project is hosted at GitHub, I just won't even bother. It likely won't be worth my time trying to deal with its lack of documentation and its horrible source code.

    1. Re:Just avoid shitty GitHub projects. by DaBombDotCom · · Score: 1

      Wow...

    2. Re:Just avoid shitty GitHub projects. by Anonymous Coward · · Score: 1

      I don't know why that comment is at -1. It perfectly describes all of my experiences with GitHub-hosted stuff, too. I have to use a lot of JavaScript libraries at work, and many of them are hosted at GitHub. Like the parent comment says, there's usually no documentation, not even README files. I don't know if it's due to incompetence, or inexperience, or just because they don't care, but documentation of any sort is very rare when it comes to GitHub-hosted projects. Even if a GitHub-hosted project does have some documentation, it's usually outdated and incorrect, or it's in a wiki where most of it is just "TODO" or "fill this in" placeholders. The only JavaScript projects with usable documentation are the ones that are primarily hosted elsewhere. I wince whenever I see that a library is hosted at GitHub. It means I'll have to struggle a lot to figure out how to use it because I'm pretty much guaranteed that the documentation will be awful, if there even is any.

    3. Re:Just avoid shitty GitHub projects. by TWX · · Score: 1

      Heh. I wish that I could blame it on Github. Unfortunately the problems I encountered were with mainstream distribution prepackaged software from the stock repositories, not some third-party-sourced stuff. When core stuff like the display manager are heavily modified, they at least need their configuration and usage well-documented. I'm not a programmer so I'm not working directly with the libraries or functions myself, but if it's not even clear how to manage the configurations from a sysadmin perspective then it's useless.

      --
      Do not look into laser with remaining eye.
    4. Re:Just avoid shitty GitHub projects. by Arancaytar · · Score: 1

      > SourceForge

      What year is it?!

  7. Re:Read the source code by tomhath · · Score: 4, Insightful

    I've never seen JavaDocs that add anything to the source. It's okay if you need a list of methods or parameters, but usage is lacking.

    Documentation needs to have several *working* examples (not snippets) from a simple Hello World to more sophisticated but still commonly used. A single example that illustrates every imaginable feature and use case is rarely helpful.

  8. So fix it by Anonymous Coward · · Score: 2, Interesting

    I document my findings on the Ubuntu wiki. If more people would take the hour to write up details on what they spent 2 weeks learning, we would all be better off for it.

    1. Re:So fix it by butalearner · · Score: 1

      Or, for the less altruistic out there, write tutorials, put them on your own blog and youtube, link them from the project's wiki in a reasonable, completely non-spammy way (e.g. copy the content, attribute it to your blog with a clearly marked external link), and make a dollar or two from advertising.

      Or, if you have the money to spend, offer a bounty.

    2. Re: So fix it by Anonymous Coward · · Score: 0

      For dog's sake, we don't need more bumbly/rambly shit on youtube. Write it down!

  9. Nothing by Anonymous Coward · · Score: 0, Flamebait

    Back when Sourceforge wasn't a shit-heap of garbage in every possible way I did a lot of documentation for various programs. I'm not a programmer at all, but I can use the damn things and tell others how to do so as well. The biggest problems I had were ALWAYS at the hands of the developer. They'd have these posts desperately looking for documentation writers then treat us like total fucking garbage when we had to ask questions. I can't fucking tell you how many times I was told to read the fucking source, despite me being very up-front about my lack of coding ability. "If you can't figure out how to use the program then how can you write documentation?"

    MOTHERFUCKER, IT DOESN'T WORK LIKE THAT. Fuck you in your goddamn asshole you fucking arrogant fucking pricks.

    I stopped bothering when I stopped using Linux, which is a story in itself. The fact of the matter is the majority of programmers are assholes that have no business operating in normal society. Lock them in the fucking closet and let them read the fucking source until they jizz all over their crusty beards while fantasizing about Stallman's brown pucker. Maybe THEN the people that make documentation will give enough of a shit to try to do so again.

    1. Re:Nothing by NotDrWho · · Score: 1

      God I wish I had a million mod points for you.

      --
      SJW's don't eliminate discrimination. They just expropriate it for themselves.
    2. Re:Nothing by war4peace · · Score: 2

      That pretty much sums it up, sans all the foul words.

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    3. Re:Nothing by Archangel+Michael · · Score: 1

      "If you can't figure out how to use the program then how can you write documentation?"

      Yes, exactly this. This is the exact location of the issue. The coder cannot write documentation, because he lacks empathy for the people who are using his program. He knows this, which is why he asks for help in documentation. The help arrives, but he lacks empathy for the documentation people equally. A little introspection by a developer goes a long way towards solving this problem. However coding in Mom's Basement (tm) doesn't lead one to that kind of response.

      --
      Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
    4. Re:Nothing by Anonymous Coward · · Score: 1

      I disagree. Without the foul words only half the story would be told.
      While emoticons fill a certain spot when it comes to conveying emotions in written texts they are extremely lacking in the area that foul words cover.
      Or to sum it up, all words enriches the language. Even intentional misspellings diversify the language. The distinction between a moron and a moran is sometimes interesting to make.

    5. Re:Nothing by Anonymous Coward · · Score: 0, Insightful

      I'm shocked that no-one wanted to work closely with you.

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

      Au contraire, the foul words make Anon's point very clear and colorful in my opinion.

    7. Re:Nothing by Anonymous Coward · · Score: 0

      you kiss your mama with that mouth ?

    8. Re:Nothing by frank_adrian314159 · · Score: 1

      Nah, without the foul words, it wouldn't be accurate. Most are motherfuckers (i.e., their mothers are the only person that would find them lovable enough to fuck).

      --
      That is all.
    9. Re:Nothing by war4peace · · Score: 1

      True, but it might antagonize other posters.
      Rarely would a constructive discussion stem from that kind of foul-word-peppered root :)

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    10. Re:Nothing by AmiMoJo · · Score: 4, Funny

      MOTHERFUCKER, IT DOESN'T WORK LIKE THAT. Fuck you in your goddamn asshole you fucking arrogant fucking pricks.

      Your documentation must have been epic.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    11. Re:Nothing by Charliemopps · · Score: 1

      Programmers acted like arrogant jerks? I don't believe it!

    12. Re:Nothing by aaronb1138 · · Score: 1

      This. This guy gets it. And it gets really old having programmers blame all of their issues on "I gots the aspergers" and "I'm a creative person". The source code for most FOSS projects is a terrible mess anyways. People just shove their hands in wherever they want and leave garbage behind. Good source code seems to only come from individual / small team (<5 devs) projects and some commercial software. A few older semi-FOSS projects (more the freeware not OSS or shareware projects) for Windows aren't too bad either, but the programmers all eventually let the projects go as they are highly employable and get jobs that pay them for their quality work.

      The GNU and Linux communities are rife with people who aren't otherwise employable and can't keep it together personally or professionally. I don't mind deploying Linux servers for specialized purposes, but you can be sure I disable automatic update mechanisms most of the time to prevent the inevitable critical application breakage that the lack of testing and consistency brings.

    13. Re:Nothing by CanHasDIY · · Score: 1

      Yes, this, especially:

      The fact of the matter is the majority of programmers are assholes that have no business operating in normal society.

      Well OK, I'll add the caveat of, "the majority of programmers I've asked for help are assholes..."

      It's like if your car wasn't acting right, and you took it to a mechanic, and he told you, "just read the fucking manual you idiot." Of course, that doesn't happen, because most-if-not-all mechanics aren't so arrogant they think everyone should know how to fix their own car.

      --
      An enigma, wrapped in a riddle, shrouded in bacon and cheese
    14. Re:Nothing by Bob9113 · · Score: 4, Interesting

      MOTHERFUCKER, IT DOESN'T WORK LIKE THAT. Fuck you in your goddamn asshole you fucking arrogant fucking pricks...The fact of the matter is the majority of programmers are assholes that have no business operating in normal society. Lock them in the fucking closet and let them read the fucking source until they jizz all over their crusty beards while fantasizing about Stallman's brown pucker.

      Just a wild guess here, but hear me out: Is there any chance that your interpersonal skills could have contributed to the lack of communication?

    15. Re:Nothing by Sarten-X · · Score: 1, Interesting

      Including the foul language makes it very clear that the poster is biased, and can't (or won't) set aside that bias long enough to have a discussion.

      My impression is that the writer sees his contributions as an altruistic gift that the programmers should be absolutely grateful to receive. Meanwhile, the programmer sees the documentation as just another aspect of the project, conveniently being handled by someone else.

      Consider, then, a scenario where the programmer has implemented a function only enough to suit his needs, as for a library, but the writer wants to document every behavior of the function, as a writer should. At this point the writer asks the programmer to describe the complete behavior, but the programmer like can't, sa he hasn't defined or cared about behavior outside his necessary subset. This scenario, one of many with the same result, starts a disagreement where the writer expects more support from the programmer than the programmer is willing or able to provide.

      Given the verbiage used in this post, we can infer how quickly a discussion about such a disparity of priority would heat up. I would not be surprised to learn that the writer had been dismissed from projects because of his attitude toward the programmers.

      --
      You do not have a moral or legal right to do absolutely anything you want.
    16. Re:Nothing by EricTheGreen · · Score: 1

      Zed Shaw, is that you? Good to hear from you again!

    17. Re:Nothing by Anonymous Coward · · Score: 1

      Poster in question here.

      First of all, fuck you for being a presumtive cuntflap. Eat dicks and die of the STD of your choice.

      Moving on...

      When you openly ask for assistance you do not repay your volunteer's effort by treating them like a fucking idiot when they come to you, the expert on the subject, for a goddamn answer. I can't document what I don't understand and if you are the only person in the world that actually understands it what the fuck do you expect me to do?

      I got fed up with all of the hostility directed towards me from people that ASKED ME TO HELP THEM that I gave it all the fuck up. The final fucking straw was when one asshole told me to ask questions on the forum because he couldn't be bothered to answer them. What. The. Fuck.

      If you don't give enough of a shit about your software to answer one person's question, which would in turn answer the questions of a few HUNDRED people, which would allow you to NOT NEED A FORUM DEDICATED TO FIGURING OUT YOUR FUCKING SOFTWARE then why should I give enough of a shit to write the documentation?

      I've never been dismissed from a project because unlike the cuntbunglers that program the shit, I actually act like a fucking professional and DON'T tell them to eat dicks and die of the STD of choice. I simply let them cut their own heads off and go about my business.

    18. Re:Nothing by Anonymous Coward · · Score: 1, Insightful

      No. My communication skills are fucking excellent when I'm not shitting all over someone for being an asshole to me. Believe it or not, not everyone is a boring fuck like yourself. Some of us are actually capable of communicating in multiple ways depending on the setting.

    19. Re:Nothing by Anonymous Coward · · Score: 0

      Including the foul language makes it very clear that the poster is biased, and can't (or won't) set aside that bias long enough to have a discussion.

      That's just bullshit.

    20. Re:Nothing by DutchUncle · · Score: 1

      If I might review your scenario from a slightly different perspective, we might see why Linux has still not taken over the desktop.

      The programmer has implemented something that doesn't fully work, because it's "good enough" and/or the programmer can't be bothered to make it right. The writer, like a normal user, is surprised when a casual experiment fails dismally. The programmer might (in a dream world) be embarrassed by the poor quality of his/her work, or (more likely) reacts with anger at the implied accusation of low quality (rather than accept the input as a feature request/prioritization), which anger is reflected back by the writer inferring that the programmer is not just uncaring but incompetent.

      Someone offering to handle documentation *is* offering an altruistic gift of time and effort, just like any other open source contributor, though expecting gratefulness is sort of hopeless, mainly because most programmers would *not* see the documentation as an aspect of the project at all, but as a separate afterthought.

      Normal people want stuff to work, and they don't want to remanufacture stuff first to make it work. Normal people assume that "published" or "released" stuff is ready to be used, not an experiment or a hobby project. Yes, they're getting stuff for free; but they're still comparing it against other stuff where people worked on the dull parts as well as the fun parts.

    21. Re:Nothing by DutchUncle · · Score: 1

      It's like if your car wasn't acting right, and you took it to a mechanic, and he told you, "just read the fucking manual you idiot." Of course, that doesn't happen, because most-if-not-all mechanics aren't so arrogant they think everyone should know how to fix their own car.

      Take it to the next step: Mechanics have realized that the benefit of others not knowing how to fix cars is that Mechanics have a skill for which they can ask to be paid. They can be as arrogant as they want about their superior car knowledge, as long as they don't tick off the paying customers. The programmer who has thrown his incomplete hack on a server and called it FOSS is not getting paid, and sees no reason to put in any "extra" effort.

    22. Re:Nothing by jafac · · Score: 2

      Even as a coder, I've had this problem when trying to contribute to documentation. Even writing howto's for specific use-cases. There are a few good developers out there who are capable of communicating, answering questions, etc. - to help make sure that the documentation I write is accurate. But they're few.

      --

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

      It's like if your car wasn't acting right, and you took it to a mechanic, and he told you, "just read the fucking manual you idiot." Of course, that doesn't happen, because most-if-not-all mechanics aren't so arrogant they think everyone should know how to fix their own car.

      You forgot the clause "for free" in there. Of course that doesn't happen because there's an expectation that if you bring the car in, the mechanic is going to get _paid_ to first figure out what's wrong with your car starting with the description of "Car no go". So the mechanic gets paid for the time that he takes just figuring out what's wrong first, and paid to then fix the problem (plus parts). (and eventually you find out that the person is trying to use the car to go driving up and down sand dunes in Oregon.... but they are trying to do it in an F1 race car with racing slicks)

    24. Re:Nothing by DoofusOfDeath · · Score: 1

      Just a wild guess here, but hear me out: Is there any chance that your interpersonal skills could have contributed to the lack of communication?

      Yes there is, other Barry, yes there is.

    25. Re: Nothing by Anonymous Coward · · Score: 0

      I used to write documentation for niche software. Good enough, that the developers used it to determine what the program was supposed to, when bugs were encountered.

      Expanding my horizons, I wrote documentation for a similar program. And promptly recieved a very scary and nasty letter from a lawyer representing the developers of the second program.

      I decided to target software in a different area of endevour. I announced my intention to write documentation, and within a week, two sets of lawyers send me very scary nasty letters. Said lawyers could not explain how, nor why describing how the software works infringes on the patents that they collect royalties for.

      I'm thinking about writing documentation for another project, but I can no longer afford to fund the lawyers.

    26. Re:Nothing by Sarten-X · · Score: 1

      Of course. I don't mean to suggest that programmers are always blameless. Short tempers are found everywhere.

      [Alice] reacts with anger at the implied accusation of [unprofessional work] ... which anger is reflected back by [Bob] inferring that [Alice] is not just uncaring but incompetent.

      That's the problem, in a general form. One person offends the other, who retaliates with something to offend the first, and the partnership is doomed.

      My point, which I believe still stands, is that from the demonstrated linguistic preference of the writer, it seems likely that he's the sort of person to take offense most easily, and return it in an amplified form, rather than the kind of person to put aside such minor transgressions for the sake of the project.

      --
      You do not have a moral or legal right to do absolutely anything you want.
    27. Re:Nothing by fuckface · · Score: 1

      Spoken like a snot-nosed coder who can't be assed to explain his delicate genius even to the people hired to listen.

    28. Re:Nothing by CanHasDIY · · Score: 1

      It's like if your car wasn't acting right, and you took it to a mechanic, and he told you, "just read the fucking manual you idiot." Of course, that doesn't happen, because most-if-not-all mechanics aren't so arrogant they think everyone should know how to fix their own car.

      Take it to the next step: Mechanics have realized that the benefit of others not knowing how to fix cars is that Mechanics have a skill for which they can ask to be paid. They can be as arrogant as they want about their superior car knowledge, as long as they don't tick off the paying customers. The programmer who has thrown his incomplete hack on a server and called it FOSS is not getting paid, and sees no reason to put in any "extra" effort.

      That's like saying if you have a friend who's a mechanic, and he, say, changes your spark plugs for free, he "sees no reason" to put the plug wires back on, since that would be "extra effort."

      Funny you put it that way, since there seem to be a lot of people who "work" on a FOSS project as resume fluff. Ignoring the documentation because it's "extra effort" would, to me, tell a potential employer that you're lazy and tend to half-ass your projects.

      --
      An enigma, wrapped in a riddle, shrouded in bacon and cheese
    29. Re:Nothing by CanHasDIY · · Score: 1

      It's like if your car wasn't acting right, and you took it to a mechanic, and he told you, "just read the fucking manual you idiot." Of course, that doesn't happen, because most-if-not-all mechanics aren't so arrogant they think everyone should know how to fix their own car.

      You forgot the clause "for free" in there.

      I forgot nothing. As a mechanic, I work on my friends and families cars for free all the time, but I don't see that as an excuse to be an arrogant prick nor half-ass my work.

      --
      An enigma, wrapped in a riddle, shrouded in bacon and cheese
    30. Re:Nothing by TWX · · Score: 1

      I developed my chops working with MS-DOS in the early nineties as a kid, starting with version 3.3, which lacked an online help system. I had an MS-DOS manual that covered a whole lot of what could be done, and then when I moved on the MS-DOS 5 and online help appeared, I found it to be decent even if not great, and it only got better throughout the versions, until I stopped using DOS.

      Maybe my perspective is a little skewed, but I like documents that decribe usage concisely, and I like examples when the usage can't be described concisely. It's okay if the complexity of a product or project can't be describe concisely, so long as good examples exist. When I first started using Linux it was Slackware back in the 2.0.0 kernel days, and I found that my UNIX-in-a-Nutshell book worked quite well even if there were a few things that didn't apply because of the System V vs BSD nature of UNIX as compared to whatever init Slackware used, plus the whole commercial UNIX versus GPL versions of things situation.

      I totally get that if software isn't improved over time that it could die-on-the-vine, through lack of use over time, but those changes need to coincide with usage docs. If they don't then things could die-on-the-vine as they get too out-there for people to easily use.

      --
      Do not look into laser with remaining eye.
    31. Re:Nothing by TWX · · Score: 1

      As someone that has factory service manuals for every vehicle owned, and probably a few for vehicles that are long-gone, there's a difference between an owner's manual and a factory service manual, and most FOSS projects lack both, or lack the Owner's Manual and the first couple of chapters for extended but common maintenance service of the FSM.

      Both general-use manuals and in-depth manuals have their places, but the manuals that don't exist don't help very much. To continue the car analogy, I may not need to replace the high-reverse piston in the transmission's front planetary sun gear, but I would sure like to know how to change the filter and fluid, and how to remove and reinstall the transmission without accidently dropping the torque converter on my face.

      --
      Do not look into laser with remaining eye.
    32. Re:Nothing by Anonymous Coward · · Score: 0

      Including the foul language makes it very clear that the poster is biased, and can't (or won't) set aside that bias long enough to have a discussion.

      Not necessarily. It only means the poster appears angry. We don't know enough to judge whether the anger is justified.

      My impression is that the writer sees his contributions as an altruistic gift that the programmers should be absolutely grateful to receive. Meanwhile, the programmer sees the documentation as just another aspect of the project, conveniently being handled by someone else.

      I dunno. At face value, the poster specifically replied to requests for documentation writers, specifically disclosed lack of programming proficiency and gave specific examples of inappropriate responses. If the developers of those projects did not have time to support a documentation writer, they shouldn't have posted a request for one.

      I don't know if face value is the correct value, but I wouldn't make the kinds of assumptions you make.

      There are many developers who work well with documentation writers. They don't do what the poster described.

      Given the verbiage used in this post, we can infer how quickly a discussion about such a disparity of priority would heat up. I would not be surprised to learn that the writer had been dismissed from projects because of his attitude toward the programmers.

      Without knowing whether the "verbiage" is a consequence of his experience or preceded his experience, we can infer nothing.

    33. Re:Nothing by Anonymous Coward · · Score: 0

      MOTHERFUCKER, IT DOESN'T WORK LIKE THAT. Fuck you in your goddamn asshole you fucking arrogant fucking pricks.

      Your documentation must have been epic.

      Indeed. Since when did Samuel L. Jackson become a documentation writer?

    34. Re:Nothing by Bite+The+Pillow · · Score: 1

      Yes, but it's more likely that numerous years of experience have soured the person on developers.

      In the past, Anonymous Coward has been on both sides of these types of issues. But in this case, I think maybe AC has a point.

      Developers do have a certain perspective. If you can't figure out how to use something, you really shouldn't be writing documentation. Documentation should be written by someone who can put information together in a sensible, readable way. And if you can't, then you shouldn't.

      As a developer, I can list a hundred questions I've asked of applications. Is this supposed to work? Is this supposed to do anything? The label says this but it does this?

      Fuck you, read the code. Fuck me, read the code. Fuck us all.

      I guess it's time for an undercover sting to see if volunteer documentors are treated like hell.

      Care to bet?

    35. Re:Nothing by Anonymous Coward · · Score: 0

      How could you even write docs for them, since they're the coders and they don't write docs and you're not supposed to read their code?

      I'm totally confused.

    36. Re:Nothing by rp · · Score: 1

      Never attribute to malice what is adequately explained by ignorance.

      Paradoxically, the ignorance in this case is a result of the opposite: too much knowledge!

      Programmers tend to think in code. Many have never had the need to think about the problem they're creating code to solve in any other way than in terms of code. To inexperienced programmers, code may be the *only* way they have encountered to think about software. Consequently, they may have a lot of trouble envisaging other ways to talk about what the software does, how it does it, or why it does it; let alone imagining how such other ways could be useful.

      That is tunnel vision, but not necessarily anal retentiveness - it may simply be a result of lack of exposure to situations in which the level of detail that code provides is more of a hindrance than an advantage, such as teaching other people how to use the software.

    37. Re:Nothing by Anonymous Coward · · Score: 0

      ... fucking epic ...

    38. Re:Nothing by Fjandr · · Score: 1

      What one posts on a site like Slashdot isn't necessarily an indication of how they interact professionally.

  10. Software Documentation is bad everywhere by jellomizer · · Score: 3, Insightful

    The problem is most software is complex, and documentation is an attempt to simplify the work flow. But the documentation if complete would probably be just as large if not larger then the code, and just as complex to read.

    What I find for good documentation is down in the FAQ, or a quick spot where you know a particular area is kinda clunky in the UI, or just a list of of the features you can use and what they do. Not a formal write up in a 1000 page book. But the appendix, and the list of tables is usually enough.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    1. Re:Software Documentation is bad everywhere by Anonymous Coward · · Score: 1

      Nonsense! Professional software uses professional tech authors. I've never had any documentation issues using IBM, Oracle and Microsoft development environments.

    2. Re:Software Documentation is bad everywhere by Ghostworks · · Score: 3, Insightful

      "documentation is bad everywhere" is one of those lies developers tell themselves to help them sleep at night. There are programs out there with outstanding documentation. (For example, as a grad student who had never toughed MatLab before I was easily able to teach myself in about a week by just scrolling through the help files.) It's just that those programs are rare, and almost none are FOSS.

      This makes sense, because involvement in projects is voluntary, and contributors choose where to dole out their time. There are generally no "customers" with a carrot and stick to make the developers sweat about their failures and oversights. It makes sense that almost no one choose to spend time documenting. Even if they understand that it's a necessary pain, no one wants to be stuck doing in.

      The solutions would have to be institutional. I can't think of a single OS project I've seen that had something like "decent documentation for new features" as a gating condition for a major release. That kind of cultural change is hard (and unlikely), but needs to be done if anything is to be accomplished. The only alternative is automated documentation, which doesn't really do anything more than re-state the source code in a different form. It's still only useful if the developers are religious about updating meta-code comments, which they never are.

    3. Re:Software Documentation is bad everywhere by Livius · · Score: 1

      But the documentation if complete would probably be just as large if not larger then the code, and just as complex to read.

      If that's what it takes, then so be it.

    4. Re:Software Documentation is bad everywhere by gfxguy · · Score: 1

      I would think there should be automated ways to generate documentation based on the specifications and requirements.

      For example, if you're using an "agile" approach, and have your list of stories that need to be addressed, and the developers then create a list of tasks in order to address those stories, the tasks should have enough information to describe what they're doing.... not necessarily implementation details, but if they're writing a function for example, it should document what gets passed in and out and side effects.

      The stories would be end user documentation, the tasks developer documentation. That is, if they were written well and following some decent formatting conventions... but that's the problem right there, it's painful even getting users to properly describe the problems they are trying to solve, let alone developers providing *doc type descriptions in their tasks.

      --
      Stupid sexy Flanders.
    5. Re:Software Documentation is bad everywhere by Archangel+Michael · · Score: 1

      There are three basic levels (bunch of gray in between): Basic, Intermediate and Advanced.

      Basic usage (80%) can be simple easy to follow instructions. The next 15% is Intermediate use, which requires Proficiency at Basic Level, followed by Advanced, which requires proficiency at Intermediate levels.

      Most documentation is designed for Intermediate/Advanced users OR basic only.

      --
      Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
    6. Re:Software Documentation is bad everywhere by dskoll · · Score: 4, Informative

      Not everywhere. One free software project has the best documentation I've ever seen. We need to point people at shining examples of excellent documentation so they can realize how important it is.

    7. Re:Software Documentation is bad everywhere by jbolden · · Score: 2

      Agile stories don't make great documentation because of their focus.

      Story 1: Enters a transaction in a state which doesn't have county level sales taxes.
      Story 2: Enters a transaction in a state which does have county level sales taxes but neither the county nor municipality impose one.
      Story 3: Enters a transaction in a state which does have county level sales taxes the muncipality imposes one but the country does not.

      etc...

      Mattes a great deal to the software but you are exposing the abstraction. The end user wants:

      Story: How to enter a transaction

    8. Re:Software Documentation is bad everywhere by Captain+Hook · · Score: 2

      The stories would be of the form:

      As a user, I want to change my password...

      But they generally won't say that the means to do that should be a link from the user account page or what the steps of the process would be. Now for something simple like a a password change, there are generally well defined industry best practices that both the developer and the end user are probably aware of and so both have a common conception of what should happen. That isn't true for functions specific to the application or domain.

      There is a big gap between User Story and implementation specific documentation.

      --
      These comments are my personal opinions and do not necessarily reflect the opinions of the other voices in my head.
    9. Re:Software Documentation is bad everywhere by johnwallace123 · · Score: 5, Insightful

      Have you ever USED IBM, Oracle or MS software?

      I've run into scenarios with both IBM and MS where I'm looking for a specific error code, and I get into this:
      Q: What is ERR:174027?
      A: That's EDONTKNOWWTF
      Q: What is EDONTKNOWWTF?
      A: That's ERR:174027
      *Bashes head into wall*

      Commercial software might have better documentation, but a lot of the help still comes from blogs of people having the same error, which IS NOT documentation!

    10. Re:Software Documentation is bad everywhere by gfxguy · · Score: 1

      True - but I did say "if they were written well and following some decent formatting conventions." Similar to *doc style documenting... but it would require stories to be written a different way. I was never fond of the "as a user" type stories, anyway, and every feature being shoe-horned into that style of formatting. Still, even if it's not agile, the requirements documents should provide the bulk of end user documentation for software use; I still say that task documentation could be used for code library documentation.

      --
      Stupid sexy Flanders.
    11. Re:Software Documentation is bad everywhere by silas_moeckel · · Score: 1

      We fired the tech writers 20 years ago and told the devs to do it. Remember Dec with it's bookcase of manuals? When we paid people to document they documented, I'm sure some better than others but they did it. RHEL has a decent set of docs to go with it, far from perfect but workable and obviously it works for Centos as well.

      --
      No sir I dont like it.
    12. Re:Software Documentation is bad everywhere by laughingskeptic · · Score: 1

      Wrong. Microsoft's software documentation is generally excellent. Contributing programmers are 33% or less of Microsoft's empire, in FOSS programmers are 99% of the contributors. Not only is the end user documentation good, but for the devs Microsoft has MSDN, Dev Tech Net and a number of employees paid to pay attention to StackOverflow. Prior to any major software release a team of writers and engineers creates a 300 to 600 page book about the new release full of examples on configuring and coding for the new release. I know people hate paying for software, but sometimes you really do get what you pay for.

    13. Re:Software Documentation is bad everywhere by ron_ivi · · Score: 1

      Interesting project because they're very strict about requiring correct documentation (and regression tests) for even minor patches that random users contribute, before they even consider them.

    14. Re:Software Documentation is bad everywhere by phantomfive · · Score: 2

      Nonsense! Professional software uses professional tech authors. I've never had any documentation issues using IBM, Oracle and Microsoft development environments.

      lololololol

      --
      "First they came for the slanderers and i said nothing."
    15. Re:Software Documentation is bad everywhere by Anonymous Coward · · Score: 0

      3 cheers for PostgreSQL AND its documentation!

    16. Re:Software Documentation is bad everywhere by DutchUncle · · Score: 2

      ... generate documentation based on the specifications and requirements.

      What are these strange and mystic words you use?

    17. Re:Software Documentation is bad everywhere by Krishnoid · · Score: 1

      I'm not that familiar with how Agile 'stories' are scoped, but those seem a little abstract. While you're right about the specificity of the focus, wouldn't it sound more like:

      Story 1: Enters a transaction originating in Chicago, IL

      Story 2: Enters a transaction originating in Manhattan (too specific?), New York City, NY

      Story 3: Enters a transaction originating in unincorporated Los Angeles county, CA

      Those are specific, but wouldn't the 'story' involve actual physical jurisdictions, and eventually devolve the implementation and design to doesn't/have state/county/city-level taxes situations? Also, would the stories change as those indepedently governed locations introduce/change their laws?

    18. Re:Software Documentation is bad everywhere by Anonymous Coward · · Score: 0

      I can't think of a single OS project I've seen that had something like "decent documentation for new features" as a gating condition for a major release.

      One word: PostgreSQL.

    19. Re:Software Documentation is bad everywhere by Anonymous Coward · · Score: 0

      VAX VMS documentation ran to (I think) 32 volumes of 3-ring binders. IBM JCL documentation was endless (and often useless until you finally understood their backwards and sideways thinking). Solaris manpages used to be wonderful, extensive, readable, and useful.

      So, yes, complex code requires complex documentation. And if you think you can skate that, then fuck you and you deserve the opprobrium you receive, however obscene, scatalogical, and vile.

      Yours,

      An ex-programmer who is now a Tech Writer with 30-plus years in software documentation

    20. Re:Software Documentation is bad everywhere by Anonymous Coward · · Score: 0

      Bullshit. It's garbage. Most of the time when I'm looking things up there's no clue as to which version of the OS it applies to. I'll find that something is alleged to work, but a websearch online will reveal that it works that way, but for a more expensive version. As in, they include documentation that's worthless because they can't be arsed to remove mentions of features that don't apply to the release.

      MS used to have good documentation 20 years ago, but now it's mostly worthless as they can't be bothered to fix their bugs and there are so many bugs that you wind up finding them frequently.

    21. Re: Software Documentation is bad everywhere by Anonymous Coward · · Score: 0

      There is plenty of commercial software with horrible manuals and documentation. It's very expensive to write a good User Manual. And pretty expensive to print the physical books, too.

    22. Re:Software Documentation is bad everywhere by jbolden · · Score: 1

      I would think you build your story around the complexity (in this case the tax situation). So the story might be "city with condition X" and then the data picks a particular (NYC). You want to make sure to hit the various cases if you expect different system behaviors.

    23. Re:Software Documentation is bad everywhere by rnturn · · Score: 1

      My favorite commercial software error message fiasco was when I was asked to figure out where a cryptic error message was coming from. The message had no prefix telling which component of the software package was issuing the message. The message did not appear in the appendix where error messages were listed. When I grepped for the error message in the application's "bin" directory it turned out that all the binaries contained the error message; even utility programs that had nothing to do with the operation that was generating the error. It turned out that all of the executables contained all of the potential error messages that might be issued by any of the executables. (An insane use of an "#include" directive or something similar.) So much for the high quality of commercial software and documentation.

      The best -- and last -- commercial software that I think had really thorough documentation was back in my IBM mainframe/mini and DEC mini days. You really couldn't fault the documentation that came with those systems at all. Except, maybe, the quantity of it; some serious shelf space was required.

      --
      CUR ALLOC 20195.....5804M
    24. Re:Software Documentation is bad everywhere by TWX · · Score: 1

      V'GER is that which seeks The Creator.

      The Creator is that which V'GER seeks.

      --
      Do not look into laser with remaining eye.
    25. Re:Software Documentation is bad everywhere by TWX · · Score: 1

      Yeah, I've got one project that I'm working with that uses PostgreSQL as its DB. I went looking for O'Reilly and other books that cover it, and none are current. Then I found the online stuff and was really, really surprised by how good it is.

      --
      Do not look into laser with remaining eye.
    26. Re:Software Documentation is bad everywhere by Ghostworks · · Score: 1

      For developers, there are some times when the documentation SHOULD be larger than the code. The most important questions for many documentation efforts should be along the lines of "why did we choose this value" and "what values can this never be changed to without breaking something". The undocumented code must always be treated fragile, because it only gives you the final state of an engineering process. It doesn't convey any of the many small decisions that hemmed in that design. It gives you something that may work, but does not tell you how to build something that will work in the future if things change. If you give good documentation to a competent programmer, he can probably build something very close to the original program.

    27. Re:Software Documentation is bad everywhere by Bite+The+Pillow · · Score: 1

      Fuck you, idiot. I write pseudocode, and the code is at least 10x longer with things like error checking, validation, and especially error messages that clearly tell the user what was already in the documentation.

      First let's see a good, intuitive UI. Then a lot of the documentation goes away. An appendix and list of tables *should* be good enough. If the application is understandable enough, of course.

      The documentation should never be as complicated as the code. No excuse. If there is any software ever where the documentation needs to be bigger than the code, there should be no documentation. It was written by someone who understands it, when no one else probably will, and no one else should.

    28. Re:Software Documentation is bad everywhere by Craig+Ringer · · Score: 1

      I'm glad to see you say that.

      There's still plenty to improve in the Pg docs, and we welcome patches from everyone.

    29. Re:Software Documentation is bad everywhere by spectrumlogic · · Score: 1

      Well said...it appears the greatest attribute of OS may also be its tragic flaw...OS blesses the unbridled creative yet eschews the balance of discipline (with a decided flair and relish). OS is consequently hard wired to only respond to disaster (when abandonment exceeds growth maybe)...which may also be too late and will otherwise be known as the burst of the OS bubble...this is the honeymoon period as business models go. Planning and leadership are essential elements of successful long term/range projects because maximizing upside and minimizing downside momentum is essential to make it over the humps...trusting fate/destiny is risky (foolish). A better model is always right around the corner.

    30. Re:Software Documentation is bad everywhere by jwhitener · · Score: 1

      I don't know if this is true or not, but when I see documentation like postgresql.org, or other good examples, I think to myself "I wonder if they write the documentation first. Before they even write a line of code. Because if you can't describe what you intend to code in clear documentation, chances are it isn't worth coding."

  11. A Wiki is not Documentation!!! by Anonymous Coward · · Score: 2, Interesting

    In the past, there was usually a fairly good set of manual pages that seemed to accompany most OSS projects. However, nowdays all huge portion of projects seem to just think that if they set up a documenation wiki, they don't need to do anything else and some awesome documentation will just appear.

    1. Re:A Wiki is not Documentation!!! by Anonymous Coward · · Score: 0

      Man pages only make sense for command-line apps. But the UX designers have crapped all over FOSS, and we will never have good documentation again.

    2. Re:A Wiki is not Documentation!!! by praxis · · Score: 1

      Man pages also make sense for apis.

  12. Yes! by war4peace · · Score: 5, Interesting

    I am saddened to say that the lack of proper, structured documentation, combined with bad experience every time I asked a question on OFSS forums kept me away from OFSS in general (and Linux, more specifically). Every year I try again and I am seeing the same results.
    I know I might ask questions perceived as "stupid" but everyone's been a newbie at some point in time. Maybe it's just my turn to be one. Thing is, once I get the correct, detailed answer I never ask the same question again but I almost never get the answer, just "RTFM" and "haha noob" with the obligatory variations.

    Of course, I've been trying to ask very specific questions, I've provided detailed information on my issue and was very polite myself. Still was met with smug and bile.

    In all fairness, creating documentation is something that almost nobody wants to do. I get that. However, politely answering a question shouldn't be that difficult.

    --
    ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    1. Re:Yes! by serviscope_minor · · Score: 1

      Of course, I've been trying to ask very specific questions, I've provided detailed information on my issue and was very polite myself. Still was met with smug and bile.

      I do wonder which projects. My experience has been the opposite: providing detailed information and reasonable evidence that I'd read the document has always produced helpful, thoughtful responses (even from Theo de Raadt himself).

      Have you been asking the original developers or on various forums?

      --
      SJW n. One who posts facts.
    2. Re:Yes! by gfxguy · · Score: 1

      Where've you been looking? The Ubuntu forums are generally not bad at all, and in my experience have been very user friendly. I've been using Linux for quite some time; I'm a developer, but don't think everybody should have to be a system administrator in order to use Linux as their desktop. I don't know everything... I write graphics applications. If my network or sound card isn't working, I have just as much of a problem as most newbies.

      --
      Stupid sexy Flanders.
    3. Re:Yes! by war4peace · · Score: 1

      Both.
      The difference between FOSS and paid software responses is probably due to the fact that people who moderate, help and answer on paid software communities might get warned or fired if they misbehave.

      I remember that I have installed a Linux server back in 2000 for the purpose of hosting an IRC server and tried installing a shell, basically a bot which would moderate certain channels. It was a pet project of mine, but for some reason the IRC shell was misbehaving. I don't really remember what the problem was but I clearly remember that I went to a LUG (Linux Users Group) mailing list and posted everything that I tried, I was instantly mocked as a script kiddie and made fun of, etc.

      Few years later I tried using Wine under Red Hat and there was a sound issue (no sound). Again, I posted on a forum about that, I was called an idiot for not being able to figure it out. I admit my experience with Linux is fairly limited, but I'm willing to learn. However, I am not willing to learn against all odds. To make an analogy, if you want to teach your kid to ride a bike, you don't hop him on and shove him down a hill, laughing and calling him idiot when he falls and bruises a knee. You'll end up with a wimp instead of a bike racer.

      Last year I installed a commercial Linux flavor together with a commercial database on a dedicated machine, it worked fine until I shut down the machine, physically moved it and restarted it. The DB wouldn't start. I posted on their forums, got 3 pages of troubleshooting replies, with lists of commands, and when all that failed someone was kind enough to remotely connect to my machine and troubleshoot the issue himself, and all that during the trial period, before I even paid a dime. For security reasons, he didn't connect directly to my server, but we established a remote session to my desktop and I manually entered my credentials for remote connection, so it was all good. Unrelated, but it was a product whose maker is kind of hated here on /. I still have that DB online, although I still haven't bought support from them. No doubt that advanced support would likely cost a lot, but now I have backups and it's a dev environment so no biggie if I have to reinstall.

      As for your own experience: maybe you are more advanced than me and you hit the brick wall further down the path, hence the different experience.

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    4. Re:Yes! by cardpuncher · · Score: 1

      I suppose it's inevitable that people who are writing code for their own interest, and not because they're being paid to do it, will spend their time doing the things that they find most rewarding - and documentation is never going to be high on the list. However, I do suspect the motives of some people who make their code publicly available - it's not about demonstrating how clever you are, it's about sharing the solution to a problem.

      And there is definitely an element of the FOSS community that wants to preserve the mystique of the brotherhood - they rail against the iniquities or proprietary software yet behave as if they were members of a medieval crafts guild. That's the only reason why anyone would refuse to spend a fraction of the time they would otherwise spend patronising the uninitiated writing a simple explanation.

    5. Re:Yes! by war4peace · · Score: 1

      I don't use Linux for day-to-day work (or fun). I use RHEL and CentOS.

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    6. Re:Yes! by serviscope_minor · · Score: 1

      As for your own experience: maybe you are more advanced than me and you hit the brick wall further down the path, hence the different experience.

      I don't know. It might just be a question of different forums/software. I was certainly a total n00b at OpenBSD, but I mentioned the searched I'd done and pointed to the sections of hte manual I thought would help but ultimately did not.

      I put in a lot of effort to indicate that I'd got pretty much as far as I could, and it worked with those people.

      Unfortunately, some people like to make themselves feel superior by being nasty to others. Usually this seems to be hangers on than the actual technical people, in my general experience, though there are some developers like that too.

      Sometimes you get a very insular group dynamic where everyone starts to feel like that. Other times it's just one or two idiots who are tolerated for some reason.

      --
      SJW n. One who posts facts.
    7. Re:Yes! by war4peace · · Score: 4, Interesting

      True words, I've seen people who behaved like that.
      Here's a funny story that I was involved in a couple years ago.

      My desk was at the time located on a developer-heavy floor, very silent, with everybody neck-deep into their code. They generally regarded me as "the uninitiated", treating me with contempt, at most. Hardly ever anyone talking to me. Two developers were sitting across my desk and they were smokers, so we occasionally ended up on the balcony together. One day, they were talking about an application UI bug which they were trying to fix. I, as a non-developer, was ignored, of course, but I was shamelessly eavesdropping in the hopes I would learn something from their... um, well, gibberish (of sorts). The UI bug was around some fields not being populated automatically when values were selected in others. Think of it as a chain of picklists with dynamically populated List-Of-Values.
      I gathered my strengths and asked them whether it could be the fact that some picklists are populated in the wrong chronological order. They looked at me in a weird way, said nothing, then thrown their cigarette butts and went inside. I felt like a kid asking "Mooom, what's a dick?" during Uncle Moke's funeral.
      Couple hours pass and they come to me and ask me whether I would join them for another cigarette. I was very much surprised. On the balcony, they told me I was actually right and the bug was fixed.
      Glad I could help.
      They respected me and talked to me a lot more after that, and I helped them crush a few more bugs by just listening to them while they explained what was wrong and brainstorming what might cause it. We still keep in touch even if they moved to a different company.

      While the above wall of text is a bit offtopic, the idea is that if a developer treats everyone else as if they are no good, he might miss opportunities.

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    8. Re:Yes! by Anonymous Coward · · Score: 0

      Bad choice.

      RHEL and CentOS are too focused on servers, and very entreprisey, it attracts either corporate users, which get their help from paid support from redhat or whatever, or by BOFH types, who are more prone to lurk the forums giving you hell for being such a noob.

      End users tend to use more user-oriented distros, like Ubuntu . Those guys might have your same kind of problems, and be more able to help you.
      Free software advocates really put effort helping others use free software, but those guys tend to use Debian or Debian like, not RHEL.

    9. Re:Yes! by mckellar75238 · · Score: 1

      This has been my experience as well -- although, to be fair, it's been a while since I actually got "RTFM" as an answer. (It's just as well; my response would probably have been, "That's fine, but which FM should I be R'ing?")

      To answer the OP's question about what I do: I generally use Google, with as many key words as I need to use to refine the links returned. As an example, when I ran into a problem with not being able to enable my speakers, I Googled "[sound subsystem] speakers not found" and rummaged through the links returned until I found a workaround. That was a year or two ago, BTW, and the problem still hasn't been fixed properly, but at least the workaround is still good. And, yes, I did notify the package owner about what I found. Not only didn't he fix it, he never replied. But at least I had the satisfaction of knowing I'd done what I could.

    10. Re:Yes! by war4peace · · Score: 1

      I just said I am not an end user. I have a project which requires a complex database and a dedicated server. I don't need an user-oriented distro. I need an "enterprisey" one :)

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    11. Re:Yes! by gfxguy · · Score: 2

      Even as an experienced Linux user (slackware from the early 90's), I don't care to spend all my time playing system administrator, I want to get my work done. If I have to spend a lot of time configuring my network card, or sound card, or graphics card, then I might as well use Windows or a Mac. I know a lot of people don't like Ubuntu, but I install it, do a few tweaks, and I can work without problems for at least a year... more if I don't feel the desire to upgrade to the latest version. If I have a problem, the Ubuntu forums are very end user friendly by comparison to other forums.

      --
      Stupid sexy Flanders.
    12. Re:Yes! by mvdwege · · Score: 2

      The Ubuntu forums overflow with very friendly idiots who cannot do anything but post "I have the same issue", or cargo cult solutions that are out of date.

      --
      "I know I will be modded down for this": where's the option '-1, Asking for it'?
    13. Re:Yes! by Anonymous Coward · · Score: 0

      Having written 1000 page tomes of API documentation in the past (with ample examples and and whys&wherefores), I know just how much work this stuff requires. FOSS teams should give as much credit to those willing to write good documentation as those who invented and support it for the community. They are a much maligned group of underappreciated people. That said, just as those who can write good, clean code are rare, those who can write clear, clean documentation may be even more so...

    14. Re:Yes! by Anonymous Coward · · Score: 0, Insightful

      Let me tell you why I stopped using Linux.

      I stopped using Linux because of Debian.

      Keep in mind... by this point I'd been using Linux as my sole OS for over three years. Three years. I knew how to work the fucking thing. I had switched from Fedora to Debian due to some idiotic religious compatibility issues keeping me from using the sound software I wanted to use. I was merrily Linux-ing along and then, one day, Debian pushed a new update. Hooray! The crowds rejoiced! Everything was awesome 'cause it was a new kernel and a new UI and it was going to be SUPER! So I popped open the package manager and did the update dance. I restarted my computer so I could install the nVidia drivers (more religious bullshit) and noticed something weird... my hard drive was gone.

      Motherfucking WHAT?

      Reboot again and let it all load this time. It booted up into Debian just fine... but it was running off of the OS's partition and didn't even list the other 29 GB of space I had. I had no fucking clue what to do. I ran the partitioning program and it could see that the hard drive was 30 GB... but it listed 29 of it as unavailable.

      Motherfucking WHAT?

      For some reason I couldn't partition that space. I hadn't wiped the drive before, so all of my stuff should still be on there... right? Okay, I'll just search for a filename that I know exists on the hard drive.

      My fucking hard drive had been moved from /dev into /etc. All of the contents had been moved from /dev/hdd0 (or 1, I can't fucking remember) into /etc/somefuckingpath. Okay... all of my shit is still there. If I do straight to that directory I can still access all of my programs and files and everything else. Now how do I get that shit back?

      Should be a simple enough answer, but I still don't know.

      I went straight to the Debian forum and explained the situation very clearly. I updated. My stuff is borked. How do I unbork it?

      Days passed with no answer. In the tech help forum. Of Debian. I bumped the thread once and got bitched at for bumping old threads. I posted a new thread and got bitched at for doing THAT.

      Fine, I'll try a more direct approach and see if someone in the IRC help channel can assist me. I pop in, ask my question, and fucking immediately have one of the primary fucking developers (I shit ye not) jump up my ass for insinuating that their software could EVER do something like that. It was MY fault that the installation was fucked up. "You fucked it up, you figure it out." No, you fucking prick, your package manager fucking broke it you miserable fuck. I followed the instructions that YOU FUCKING WROTE, asshat.

      I grabbed my old Windows disk, put it in the drive, rebooted, installed over Debian, and have never looked back.

      None of my interactions with the Linux "community" were positive. Unless you are a programmer you are worthless to them.

      Fuck them and their fucking high horse.

      Linux: Not even once.

    15. Re:Yes! by Anonymous Coward · · Score: 0

      I've noticed a lot of documentation is written so it's pretty good, and useful, if you already know a whole bunch about what's being documented. But just getting started is like pulling teeth.

    16. Re:Yes! by TWX · · Score: 1

      Heh. I'd been running Linux exclusively on the desktop for about five years when my new-at-the-time laptop had a weird issue where the clock updated at a fast and seemingly random rate, minutes flying by almost like they were seconds. There was no solution, so I ended up on Windows again, and then I realised that I could play games again, and then I got lazy. But, In the intervening years I got tired of playing with computers at home when I work with them all day at the office, and I started playing with other things for hobbies.

      I figured I'd give this another chance, and setting up a multihead, multiseat box as a MythTV install for use at my desk, my wife's desk, and the entertainment center station seemed worthwhile, but it's quickly becoming not-so. I'd attempted to use Debian to do it but one of the graphics cards isn't supported in Jessie anymore, and, and when I attempted to use Ubuntu 14.04 things really went to hell. I'd rather use a new-stable distro or in the case of Jessie, a new, soon-to-be-stable distro, but I'm getting tired of pounding at the keyboard without reaching the goal every weekend. I've got better things to do than fight with something abstract.

      --
      Do not look into laser with remaining eye.
    17. Re:Yes! by Craig+Ringer · · Score: 1

      I find it incredibly valuable to talk to people who don't already know the system/problem/etc well. They often see what I can't because I'm already too immersed in it. When they don't, they're still useful because they force me to fully explain the problem and in the process often identify an error in my reasoning.

      I often write explanations to this imaginary new user now, when I'm trying to figure something out. Or I tell it to my partner - I work from home so there's nobody else. If she's not interested, well, the baby has no choice but to listen ;-)

    18. Re:Yes! by Anonymous Coward · · Score: 0

      While the above wall of text is a bit offtopic, the idea is that if a developer treats everyone else as if they are no good, he might miss opportunities.

      There is another side of the story.
      If a developer treats everyone as if they can contribute equally to the discussion they end up wasting all their time and getting nothing done.
      Programming is to some extent creative and people just love to have opinions on creative work.
      There ought to be a better way than hostility to discourage everyone and his sister from jumping in and having opinions on variable names and button colors but I can't think of one that doesn't involve spending an equivalent amount of time.

    19. Re:Yes! by Anonymous Coward · · Score: 0

      So you use... Linux.

    20. Re:Yes! by jwhitener · · Score: 1

      What forums/communities were you asking questions from and getting RTFM answers?

      I've never experienced that on the Ubuntu forums. I also posted on pgsql-novice list a long time ago, and got really great help, despite my questions being borderline stupid (long time ago, super newbie).

  13. Lists of bug fixes don't count as documentation by NotDrWho · · Score: 1

    If the webpage for your application consists entirely of a long list of bug fixes, you're dong it wrong. This is why you need more than a programmer to make a real application. A technical writer and even a [GASP] actual UI designer can take you from amateur hour to prime time.

    --
    SJW's don't eliminate discrimination. They just expropriate it for themselves.
    1. Re:Lists of bug fixes don't count as documentation by gfxguy · · Score: 1

      That's a nice sentiment, but not always practical for FOSS development.

      --
      Stupid sexy Flanders.
    2. Re:Lists of bug fixes don't count as documentation by NotDrWho · · Score: 1

      That's fine. But don't complain when the vast majority of people keep using the commercial products instead. If you want to offer a truly viable alternative, you have to do more than just code.

      --
      SJW's don't eliminate discrimination. They just expropriate it for themselves.
    3. Re:Lists of bug fixes don't count as documentation by gfxguy · · Score: 1

      No argument there. I'm not a fan of turning on your users and saying "figure it out," but at the same time, if users don't like what they're getting for free they can always pay for something. Ultimately, if the developers are writing for an audience instead of themselves, then it's up to them to provide proper documentation if they want wide acceptance.

      Unfortunately, a lot of FOSS projects started out as internal things (or proprietary) that weren't mean to end up as FOSS, but someone finally said "hey, this is neat [or old], let's release it to the community." So are you really going to get on their cases for being "nice" enough to release their stuff without bitching and moaning that, in addition to releasing it, they need to spend vast amounts of time documenting it?

      I suggest the vast majority of these free tools and applications started out as something the developer wanted for themselves, and only after it was substantially written (or finished), released to the public... at that point the developer is using it because they know how to use it, and they don't really care if you choose to use it or not.

      --
      Stupid sexy Flanders.
  14. I don't by Anonymous Coward · · Score: 0

    If all a Google search does is turn up the millions of listserv mirror sites (why do these exist) where someone, somewhere made a comment about the issue, then the time has come to drop the subject, and the project. It's not worth the time or frustration.

  15. Re:Read the source code by Pino+Grigio · · Score: 2

    That is indeed why proprietary software is almost always kinder to a developer, yes. You see if you don't maintain the documentation developers won't like it and if developers don't like it you won't make any money from it. Profit motivates good practice in this area.

  16. Big problem: Linux won by Dimwit · · Score: 4, Insightful

    A huge amount of documentation for various projects like GNU groff, GNU nano, Vim, and others, have implicit assumptions that users are familiar with those tools' traditional Unix counterparts. 'man nano' for example, doesn't describe any of the keybindings for the editor, instead assuming that users already know pico. The groff documentation in places explicitly states that it only documents the difference between groff and Unix troff.

    Linux has won. Most Linux users have never used a traditional Unix, and most never will.

    --
    ...but it's being eaten...by some...Linux or something...
    1. Re:Big problem: Linux won by Anonymous Coward · · Score: 0

      I love how the *roff manuals are huge, packed with stuff, but no relevant information. Lots of history, you get to learn everything about the author's life, but in the end you still don't know the first thing about using *roff.

    2. Re:Big problem: Linux won by Anonymous Coward · · Score: 0

      How many people today even know what groff/troff/tbl/pic are?

    3. Re:Big problem: Linux won by techno-vampire · · Score: 1

      Linux has won. Most Linux users have never used a traditional Unix, and most never will.

      You say that as though you think it's a bad thing. Think of it as evolution in action.

      --
      Good, inexpensive web hosting
    4. Re:Big problem: Linux won by CronoCloud · · Score: 1

      Well, I know there's is something called roff, which stands for "runoff". It is used for text formatting on Unix systems I also know that groff is the gnu version of it.

      IIRC man pages are done in nroff format.

      That's pretty much all I know about it.

    5. Re:Big problem: Linux won by Dimwit · · Score: 1

      No, I think it's a good thing. I just think the Linux community (and the wider modern OSS community) need to realize it and write their documentation accordingly. Very few people today know how to use traditional Unix tools, so why does GNU's documentation still only document the differences?

      --
      ...but it's being eaten...by some...Linux or something...
    6. Re:Big problem: Linux won by Guy+Harris · · Score: 1

      Linux has won. Most Linux users have never used a traditional Unix, and most never will. You say that as though you think it's a bad thing. Think of it as evolution in action.

      It's a bad thing for documentation writers who think "{the only XXX tool on your system} is like {traditional UNIX XXX tool} but with these extra options" is adequate documentation for the XXX tool in question.

      And it's an unfortunate thing for Linux users (or users of any other UN*X on which the XXX tool documented in that question is the XXX tool) who want complete documentation for the XXX tool in question.

    7. Re:Big problem: Linux won by Anonymous Coward · · Score: 0

      Linux has won. Most Linux users have never used a traditional Unix, and most never will.

      You say that as though you think it's a bad thing. Think of it as evolution in action.

      It is a bad thing when the documentation writer assumes that you know traditional Unix, and you don't.

    8. Re:Big problem: Linux won by techno-vampire · · Score: 1

      ...why does GNU's documentation still only document the differences?

      I'm only guessing here, but it seems reasonable that much of that was written back in the early days when most people using Linux had migrated from one or another form of Unix and all the users needed was a list of differences. Then, of course, other people copied that form of "documentation" under the impression that this was what was expected of them.

      --
      Good, inexpensive web hosting
    9. Re:Big problem: Linux won by Anonymous Coward · · Score: 0

      Obligatory XKCD: http://xkcd.com/1343/

      Frankly, Dwarf Fortress has better documentation than Linux. And at least catchy music to listen to while pondering the latest self-crafted disaster.

      I do have one particular nit to pick. There is a difference between a precise technical specification and a user manual. Even man separates them. User manuals go in section 1. If you want to write a technical specification, file formats and conventions are in 4.

      The sudoers(1) manpage is a perfect example of failure at either by trying to be both. And sadly, the sudoers(1) manpage is above average F/OSS documentation.

    10. Re:Big problem: Linux won by Anonymous Coward · · Score: 0

      A huge amount of documentation for various projects like GNU groff, GNU nano, Vim, and others, have implicit assumptions that users are familiar with those tools' traditional Unix counterparts.

      I am surprised you mention Vim here. Are you refering to the man page, vimtutor(1) or Vim's user guide (:he user-manual)? I find Vim's user manual of superb quality, but a novice should start with vimtutor.

    11. Re:Big problem: Linux won by Anonymous Coward · · Score: 0

      Unix is dead, long live the Unix.

    12. Re:Big problem: Linux won by Fjandr · · Score: 1

      It's a bad thing, but not because the users lack knowledge of Unix archaeology. Rather, certain devs expect users to have this archaic knowledge despite reason dictating otherwise.

  17. Some is better than others by willoughby · · Score: 1

    Some years back I decided to play around with FVWM. I was astounded with quality the man pages. FVWM isn't so much a window manager as it is a window manager *kit*, with lots & lots of configuration options. But the documentation is some of the best I've seen.

    I've just been trying to work with lightdm here, myself (disable guest login & not auto-fill-in the last user name) and found the same as you. The config files have even been moved and no-one bothered to mention that.

    Anyway, I usually end up in some user forum or other. Luckily I haven't had many unique problems. Almost always someone, somewhere, has had to figure it out before me & is willing to pass on the info.

    1. Re:Some is better than others by serviscope_minor · · Score: 1

      The config files have even been moved and no-one bothered to mention that.

      I've had to break strace out a few times before to figure out how to even begin configuring some tools, just to figure out where the heck it's trying to read stuff from.

      --
      SJW n. One who posts facts.
    2. Re:Some is better than others by TWX · · Score: 1

      Why the hell did they take the configs out of /etc in the first place? That's what I want to know.

      --
      Do not look into laser with remaining eye.
  18. Because by Anonymous Coward · · Score: 0

    Writing the documentation means having to both understand the code, and be able to get laymen level detail across to a wider audience. And to do all of this usually for little or nothing. Its not in the artistic end of a coders spectrum where he is trying to create, andthe really smart people will figure shit out themelves. You have a point. Core, solid documentation used to be part of computing, if you really wanted to do something or get anywhere, your program / system would have to come with solid documentation.

    Does anyone think Unix would have worked if MAN pages had not been around (I'm being very general - I know..)

    On the other hand, I see lots of projects asking people to step forward and help, including the none coding parts. And it underlines that many things don't just exist on coding leet skills. If you have a project and want it to progress, Its an area that would require some attention. How much is variable.

    1. Re:Because by jbolden · · Score: 1

      What was nice about MAN pages is they evolved iteratively very much like Wikipedia. Wikis for open source software might be a modern version that works.

  19. Re:Read the source code by jellomizer · · Score: 2

    Reading the source isn't documentation.
    You can see what it is doing, but you don't know why is it doing it, or what it is trying to accomplish.

    Much like the idea if it is Open Source then it is also Open Specification. Which isn't true.
    The source is the instructions for the computer to follow, the documentation and specifications are for the people to know what the product suppose to do.

    Often software will have a glitch, it doesn't get fixed, because there is not documentation or specification to compare it against. So the bug either gets worked around or just ignored while the program is still faulty.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  20. Write some! by DarkOx · · Score: 2

    I bet most projects would be happy to accept patches to their man pages, and files they store in /usr/doc/ if they improve quality or accuracy.

    This is one of the few areas where just about anyone can contribute even if you don't code. Chances are you can still read it enough glean what the expected options are etc.

    --
    Repeal the 17th Amendment TODAY! Also Please Read http://www.gnu.org/philosophy/right-to-read.html
    1. Re:Write some! by SigmundFloyd · · Score: 1

      I once submitted a man page patch for bootparam(7). It described a boot parameter to the Linux kernel.

      I never received a reply and it was never incorporated in the man page. That waste of time was the end of my "career" in documentation. Last I checked, that parameter was still undocumented.

      --
      Knowledge is power; knowledge shared is power lost.
    2. Re:Write some! by qzzpjs · · Score: 1

      The patch to the man page should have been included with the patch to the code. If the developer is adding or changing a parameter for their application, the documentation update should be a requirement before the commit is accepted. If you're not going to tell the user how to use your new options, why bother creating them in the first place?

      This is how I feel about all project documentation. If you aren't going to bother teaching the user how to use your app, then don't release the app at all. You're just wasting everyone's time. If you're lucky enough to have volunteers to write your docs for you, then give them the information they need up front to write them.

    3. Re:Write some! by Anonymous Coward · · Score: 0

      That's the wrong angle to take. Patches should be rejected if they don't update the documentation for the code or feature that's being changed. The code and documentation should never get out of sync and any un-synced sections should be treated as important bugs. If you want to improve the documentation, a technical writer can go through and make it better, but the developer still needs to document that something changed. In larger organizations you'll have a team going through all the commits and updating the docs as their job, but I don't think that works well for FOSS projects.

      No developer should be called a software engineer without doing this.

  21. The ArchWiki is salvation by Skarjak · · Score: 1

    The wiki for Archlinux is pretty much the best source of information on the web for linux, as far as I'm concerned. It's valuable even if you're not running Archlinux, with detailed guides for configuration of many FOSS programs.

  22. ARCH LINUX WIKI by hduff · · Score: 4, Informative

    I have found https://wiki.archlinux.org/, the Arch Linux Wiki to be the most useful single source of information taht is generalized enough to apply to most other distributions.

    As an early adopter of Linux, I too found the existing documentation appalling and started writing better documentation, which led to co-authoring RedHat/Fedora Unleashed with Bill Ball.

    My advice is to contribute to the documentation yourself since it appears that no one else, including the software authors, care much about it.

    But the barriers to contributing are high. You may not only need to learn about the application, but you need to learn any number of arcane editing and versioning tools, and then convince someone in authority to accept and include your changes. It's really no different that contributing code to a project and for your average writer, that's a huge hassle and likely a big part of why more writers don;t contribute.

    --
    "I believe in Karma. That means I can do bad things to people all day long and I assume they deserve it." : Dogbert
    1. Re:ARCH LINUX WIKI by bill_mcgonigle · · Score: 1

      But the barriers to contributing are high. You may not only need to learn about the application, but you need to learn any number of arcane editing and versioning tools, and then convince someone in authority to accept and include your changes.

      I will appreciate the natural aversion to this idea, but we need *another project* to mediate the needs and products of open source documentation.

      There are some translation websites that have been fabulously successful by making it extremely easy for volunteers to contribute translations to projects. There's nothing (that I know of) that makes it easy to match up the existing bad documentation, the user needs for new documentation, and the tools needed to easily integrate new documentation. There are some good documentation production tools - that doesn't need solving again - but the process needs some automation.

      Wikis are better than nothing, but the structure is not guided and volunteers will always need guidance to succeed (and obviously wikis haven't solved the problem). The Arch Wiki is really great, but that's sadly an aberration, not typical. Nearly every Sourceforge wiki is useless, for instance. Arch has earned itself a kick-ass community and I bet a small number of volunteers were instrumental in "erecting the cathedral".

      Most people blog on their own sites due to the obstacles involved with contributing good documentation. Fundamentally, it's a coordination problem, and that's something tools are good at solving.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    2. Re:ARCH LINUX WIKI by hduff · · Score: 1

      Most people blog on their own sites due to the obstacles involved with contributing good documentation. Fundamentally, it's a coordination problem, and that's something tools are good at solving.

      That the direction I took: http://maximumhoyt.com/ until that became too much of a hassle.

      Now I use Zim for creating personal documentation. One day I'll get around to putting that stuff in my blog.

      --
      "I believe in Karma. That means I can do bad things to people all day long and I assume they deserve it." : Dogbert
    3. Re:ARCH LINUX WIKI by jafac · · Score: 1

      I agree; the archlinux wiki is one of them most helpful sources out there. The arch distribution, however, is basically unusable, unless you personally have the hundreds of hours required to gain proficiency in every aspect of OS operation and configuration that, in nearly every other distribution, is basically 80-95% functional without the heroic levels of user intervention that arch typically requires.

      --

      These are my friends, See how they glisten. See this one shine, how he smiles in the light.
  23. Re:Read the source code by SecurityGuy · · Score: 2

    I like Javadoc (or Doxygen, which I use often), but read the source is horrible advice. Source code can be anywhere from elegant and clear to $DIETY awful spaghetti. Source code tells you precisely what the code does, not what it was meant to do (sometimes those differ and we call them bugs) or why it was done that way.

  24. Corrected Title by harl · · Score: 4, Insightful

    Ask Slashdot: What To Do About the Sorry State of All Software Documentation Everywhere?

    --
    I find being offended by me offensive.
    1. Re:Corrected Title by Anonymous Coward · · Score: 1

      Except that IBM, Microsoft, Apple, etc all have extensive documentation with examples. It's basically open source that sucks in this regard.

    2. Re:Corrected Title by bill_mcgonigle · · Score: 1

      Except that IBM, Microsoft, Apple, etc all have extensive documentation with examples. It's basically open source that sucks in this regard.

      Sun always had fantastic documentation as well (try to find an old SunSolve CD). And you needed it, because it was Solaris, but if you followed it to the T, stuff worked. Unless it was buggy, but that wasn't the writers' problem.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    3. Re:Corrected Title by bobbied · · Score: 1, Insightful

      Except that IBM, Microsoft, Apple, etc all have extensive documentation with examples. It's basically open source that sucks in this regard.

      I don't agree with you on this. Microsoft and Apple have documentation, but I find the documentation pretty bad too, once you get past the "user" level stuff and "Quick Start" guides. I don't have much experience with IBM documentation but I cannot imagine it's all that much better. What I would say is that Microsoft, Apple (and I presume IBM) actually have customers who expect documentation at some level and are willing to pay for it. These same customers are usually willing to pay for phone support too, so you can bet the *real* scoop is saved for the money making phone calls.

      So for FOSS, the same model applies, except there is NO profit in documentation, unless you write the definitive guide for something really popular like Wall did for Perl. There is nothing that says you cannot CHARGE for support of FOSS you know, which means if there is some project worth using for you, then offer to PAY for support. That's what Red Hat does for the most part. If the FOSS project is so short sighted that it provides no documentation and the development team won't help or just says "read the code" then it seems to me that there is a business opportunity here. You can figure it out on your own, write a document, either give it back to the project or publish it for profit and sell support services.

      --
      "File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
    4. Re:Corrected Title by phantomfive · · Score: 1

      About his question of what changed from the past:
      I think part of the problem is that google has more trouble finding relevant pages. Now if you want your stuff to show up, you need to do SEO, etc. I used to always look for help pages on the internet, but now they are harder to find in the noise.

      A second issue is that Linux software is now less stable than it used to be. The kernel itself is binary compatible with userland back to the 90s, but "hey, why not completely replace X with Mir?" Now the attitude is one that backwards compatibility doesn't matter, and you'll find APIs that change incompatibly with no real benefit (Android does this too, the jailbroken IOS developers are the worst, but even Gnome and QT do it). If Mark Shuttleworth has a brainstorm, lets rewrite it

      The big problem mentioned in the post, of software changing and documentation not keeping up, would be a lot easier to handle if software didn't change without improvement.

      --
      "First they came for the slanderers and i said nothing."
    5. Re:Corrected Title by Anonymous Coward · · Score: 2, Insightful

      Microsoft honestly has some of the worst documentation out there. (for a commercial product).
      Just try looking up how to do something in Visual Basic for applications or whatever it's called now.
      There are two or three different websites where you have to look for information.
      Sometimes the actual information is wrong, misleading, or just not there.
      In those cases usually the comment section explains what's going on.
      The search on their page doesn't help either, the whole thing is useless without google.
      So yeah, I wouldn't be using microsoft as an example of good documentation.

    6. Re:Corrected Title by qzzpjs · · Score: 1

      I can't speak for Apple, but Microsoft and IBM do have great documentation. The MSDN is extremely extensive in documenting every API they've released in C/C++/C#/VB/F#/OS/WMI/etc, and every release of those can still be looked up so you can see if an API has changed over time. They even provide code examples for most of the API calls so you can see how they are used. All of this is out there for everyone to use, for free. Microsoft understands that by giving out that information freely, it will help more developers write more applications for their platforms, and that is what helps them in the long run. Staffing a call center with knowledgeable support people does not make them money. There is a reason those calls cost so much.

      I do remember the documentation for OS/2 that IBM had. It was also super useful, especially in a world before we had good internet sites and search engines. Every API again had descriptions, parameter explanations, code samples, references to related API's, etc.

      There are some OSS projects that still try to be this good like GCC, Perl, Python, PostgreSQL, MySQL, Apache, but so many other projects just don't make the effort any more. You mention there is no profit in documentation, but like the free application itself, the profit should not expected to be in money. The profit to everyone is in actually building a user base around your application and If you are not willing to teach people how to use it, then why would you release it in the first place.

      In general, if I cannot read about your application or library and how it works then I'm not going to waste my time with it, even if it is the best app in the world. As a user, I don't need to see docs on your code, but I should at least be provided with an installation and user's guide. As a developer, I would expect to see docs in the code so that I can see how things work so I can use existing functions properly and I can make new code fit in properly with the original design.

    7. Re:Corrected Title by bobbied · · Score: 1

      In my mind, if you are discussing a programming interface, then personally I want the source code. In my experience, even paid for software has less than perfect documentation and If I'm coding to it, give me the code over the professionally written documentation that may or may not be right and complete.

      If I'm just using the application as is, then I prefer the user documentation along with a program that gives understandable error messages.

      --
      "File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
    8. Re:Corrected Title by Anonymous Coward · · Score: 0

      In my mind, if you are discussing a programming interface, then personally I want the source code. In my experience, even paid for software has less than perfect documentation and If I'm coding to it, give me the code over the professionally written documentation that may or may not be right and complete.

      If I'm just using the application as is, then I prefer the user documentation along with a program that gives understandable error messages.

      Why would you want or need the source code for an API if the API is properly documented with suitable examples? To prefer the source is to prefer the source for it's own sake and has nothing to with using the API (which has nothing wrong with it).
      During my professional programming life I've worked with many APIs including open source and closed.
      To my mind Microsoft used to be the best, it had well documented APIs and more importantly sanely named types. You could almost always workout what each method would do without worrying too much about it and for the more obscure stuff MSDN was practically perfect. Had descriptions of all the parameters, links to data types and examples to copy/paste.. uh i mean reference.
      Their more recent stuff is a bit more dire tho. I wanted to look at writing simple video compressors for DirectShow but so far as i can tell it's been deprecated but I cant for the life of me figure out what has replaced it. There seems to be a few options and the docs for them all suck ass. And they don't seem to have c# based anything for it which seems perverse.

      Having said all that the worst examples of docs all come from open source world. And not the small projects either, some of the biggest projects' documentation really lets them down. The last one I used was GStreamer which had docs accurate enough to get you started but misleading enough to send you off in the wrong direction.
      I think one of the main problems with the OSS docs is they take took much for granted and assume levels of knowledge that the user has no reason to have when they first come to read them.

      just my opinion, flame away.

  25. MySQL in particular drives me nuts. by SecurityGuy · · Score: 1

    For YEARS there's a been a file named INSTALL_SOURCE or something like it. Indeed, there's a section on that, but a lot of the file is how to download and install precompiled binaries. It's a little thing, but it just bugs me ever time I have to skip past the stuff that shouldn't be in there to get the stuff that should.

    1. Re:MySQL in particular drives me nuts. by Craig+Ringer · · Score: 1

      Did you report a bug about it?

      Sometimes the folks working on the tool just don't spot these issues and need to be poked. I know it's true for me anyway.

  26. LibreOffice suffers badly from this problem by uncqual · · Score: 1

    For a product intended for use by non-techies, LibreOffice's end user documentation is horrible. It's uneven in coverage, lacks useful examples, and is generally not sufficiently detailed. Comparing MS Office's documentation to LIbreOffice's documentation should make this obvious to all involved in LibreOffice even if they, themselves, are not "non-techie end users" and think "just read the code" is a good answer. This lacking reduces the uptake of LibreOffice unfortunately.

    Interestingly, the fact that MS Office code is not open forces MS to document its use well (although they probably would have anyway as MS does understand that a product is not just what the compiler spits out) - even if just so third party "self help" books can be reliably accurate.

    --
    Why is there an "insightful" mod and why isn't it "-1"? If I wanted insight, I wouldn't be reading /.
    1. Re:LibreOffice suffers badly from this problem by uncqual · · Score: 1

      Indeed. But those who claim that LibreOffice (et al) is "as good as or better than" MS office are just plain wrong because the documentation gap alone makes that claim untrue. It does not seem that the documentation gap is something that has been being improved aggressively in LibreOffice in spite of the gap being something that will hinder its acceptance in the non technical community (i.e., the majority of office suite users).

      Obviously, if you only use plain text, you don't need either MS Office or LibreOffice so good/bad/non-existent documentation of either wouldn't matter to you as you would never look at it.

      I suppose, we could think of LibreOffice as the "office suite" for techies who don't need or want an office suite - but I'm not sure that's their target market (if so, effort has been wasted on things like MS Office compatibility and the like).

      None of this is condemning LibreOffice. It's just pointing out one aspect of LibreOffice that is not competitive. It's likely this won't change soon given the limited funding. I know a lot of developers who like to code as a hobby and will do it for no compensation but I don't recall working with any technical writer (including the best I've worked with) that wrote technical documents just for the joy of it (they are, in some cases, spending their evenings and weekend writing the Great American Novel or something more literary though).

      I do use spreadsheets for certain types of data organization and charting and I do sometimes send/exchange/edit documents that are sufficiently complex that they benefit from visual and linking structure (chapters, headings, indexes, TOC etc) so although I use plain text for most things, I do use office suites (currently an ancient version of MS Office and a current version of LibreOffice -- the latter for stuff that is unlikely ever to leave my home network [except for backup of course!]).

      --
      Why is there an "insightful" mod and why isn't it "-1"? If I wanted insight, I wouldn't be reading /.
  27. At least the neckbeards weren't hipsters. by Anonymous Coward · · Score: 4, Insightful

    You think it was bad then? Well, I'm not saying that it wasn't, but it has gotten a whole lot worse lately.

    The neckbeards you speak of are now in their 50s and 60s. A lot of them have, I'm afraid to say, died. They didn't live the healthiest lives when young, and they have perished because of this. A lot of the others have been marginalized as we've seen the hipster tide sweep in.

    At least the neckbeards had real experience. Most of them had gone to college, and a lot of them had graduate degrees and decades of industry experience. They may have been assholes at times, but at least they were competent. They wrote good code, even if they didn't always provide documentation.

    The hipsters have none of this. Most of them are in their early 20s, if not younger. They have no real education. Their knowledge is extremely limited, but they don't realize this. This is why they think JS is a good programming language, for example. They have absolutely no idea about anything else. The software they write is typically total crap, and documentation is completely foreign to them.

    At least the neckbeards could be depended upon to provide useful information about how their software worked. Maybe it'd take some fighting with them, but eventually the information would come out, and it would be correct. It's a different ballgame with hipsters. They don't know how the software works, even when they wrote it. When they claim to know how it works, they actually don't. So if you're trying to write documentation for their code, not only do you have to deal with shitty code (assuming you know how to), but you can't even rely on the developers themselves to know how it works, how to use it, or what it's even supposed to do.

    As somebody who has contributed documentation for several neckbeard-run projects and several hipster-run projects, I would be more than happy to deal with the neckbeards any day. It isn't a good experience, but it isn't a total clusterfuck like it is when dealing with hipsters.

    1. Re:At least the neckbeards weren't hipsters. by jbolden · · Score: 1

      The neck beards are older. They were like the hipsters when they were in their 20s. Getting older changes things about people. Its a cycle.

    2. Re:At least the neckbeards weren't hipsters. by Anonymous Coward · · Score: 1

      I couldn't agree more. With hipsters their coding style is a stab in the dark, they don't know how to debug, how to problem solve, how to design. They just throw random things together and add more spaghetti code, then end up begging for solutions on stackexchange. On some commercial projects I've had unresponsive hipster developers tell me they spent the last N days getting high as if that excused their lack of work. It's a fucking mess, and it really makes me wonder where software development is headed 20-30 years from now if these people don't grow up.

      Neckbeards can be trollish and vain, but they can code, they can work, and they do get results. I'd rather take a frustrating neckbeard who does his job than some pothead hipster who produces unmaintainable garbage.

    3. Re:At least the neckbeards weren't hipsters. by Anonymous Coward · · Score: 0

      The neck beards are older. They were like the hipsters when they were in their 20s. Getting older changes things about people. Its a cycle.

      So, are you suggesting that hipsters are following in the same path and will die young?
      please, oh please say yes

    4. Re:At least the neckbeards weren't hipsters. by Anonymous Coward · · Score: 0

      Why is that comment at 2, Funny? I don't think it was joking. I tried committing some documentation to a couple of Ruby projects I had to use late last year. I ran into those same problems. And I've contributed a lot of Perl module documentation in the past, and never had anywere near as much trouble as I did with the Ruby projects. 'Hipsters' or 'Millenials' or whatever you want to call them are way more imcompetent than Old Timers ever were.

    5. Re:At least the neckbeards weren't hipsters. by Krishnoid · · Score: 1

      The hipsters have none of this. Most of them are in their early 20s, if not younger. They have no real education. Their knowledge is extremely limited, but they don't realize this. This is why they think JS is a good programming language, for example. They have absolutely no idea about anything else.

      Are you sure their evaluation skills stem from a lack of awareness of alternatives? They do drink Pabst Blue Ribbon, after all.

    6. Re:At least the neckbeards weren't hipsters. by Anonymous Coward · · Score: 0

      He's talking about fundamentally different mindsets, not differences in age.

      Before replying with generalities try to actually think about what somebody is saying.

  28. Re:Read the source code by suutar · · Score: 1

    I would have to agree that most javadoc doesn't add anything to the source, but it does pick out the stuff I'm interested in (api) and hide the stuff I'm not (implementation). At least, when it's actually filled in with minimal descriptions (all too rare).

  29. Re:Read the source code by james_pb · · Score: 4, Interesting

    This is silly. I've been trying to use Autodesk Fusion 360 - it's most definitely a proprietary bit of software from a large developer.

    The documentation is worse than awful; you'd be better off just reading the source.

    And iOS vs Android? iOS is pain layered on suffering. Reading the source would be _so_ much better than depending on Apple.

    Commercial != good doc.

  30. Hello Grumpynerd? by MRe_nl · · Score: 4, Insightful

    "Incomplete Documentation
    Open Source nerds don't have the discipline to write documentation because it's no fun. Writing new code is fun. Fixing bugs in old code is less fun. Writing documentation sucks. Which is why most open source software is buggy and features little to no documentation making it useless to everyone outside of the authors".

    http://www.grumpynerd.com/?p=1...

    --
    "Kill 'em all and let Root sort 'em out"
    1. Re:Hello Grumpynerd? by TWX · · Score: 1

      I always thought that the most fun, or at least the biggest feeling of smug satisfaction, was in seeing your project become a core, can't-live-without project. That requires at least a certain degree of documentation to exist to even reach that point.

      --
      Do not look into laser with remaining eye.
  31. Not an open source problem by Anonymous Coward · · Score: 1

    How is this problem specific to open source? Some F/OSS docs are great, some not so great. Some communities are really helpful, some not so much. But how is that any different than the situation with proprietary software?

    1. Re:Not an open source problem by Jiro · · Score: 1

      The problem is specific to open source because of the motivations of open source developers. People write documentation when they are paid to do so, but people don't generally write documentation for fun, nor do they write documentation when they need to modify a program in order to get something done.

  32. Step 1: Stop ignoring tech writers offering help by Anonymous Coward · · Score: 0

    I'm a tech writer who has offered to help with various projects. E-mails get ignored. Support tickets get pushed to infinity. Threads get one post saying 'yeah, good idea' and yet no further action gets taken.

    Oh, of COURSE you believe in good documentation.

  33. How About Crowdfunding? by Bob9113 · · Score: 2

    How about crowdfunding some documentation efforts by real technical writers?

    The reality, for better or worse, is that writing FLOSS code has sufficient apparent benefits for the software engineers and their sponsors to get the job done. The technical writing of good documentation does not. Whatever the reasons, it is the case; that has been the reality for decades.

    But how much would it cost for a first pass at documentation? Take "Installing and Configuring MyCloud" as the example. Contact a few people who have written articles or put up YouTube videos on the subject. Let's get a high estimate; call it $100/hr, one month, three documenters, 10 hours per week each, 50% overhead = $100 * 1 * 3 * (4 * 10) * 1.5 = $18,000.

    That seems do-able, and a good opportunity to develop a crowdfunded brand; a team that grows a reputation for getting projects done. Then you could offer a follow-on project to do a deeper dive on the same subject, or put together another team to do Asterisk & Secure VoIP, or whatever is next. Maybe start with the counter-NSA stuff, where there's a sudden broad interest and complex software that, until now, has been run mostly by experts.

    A few thousands of people willing to kick in a small amount of money each toward a common goal; crowdfunding documentation seems like a natural fit.

  34. Free stuff doesn't necessarily mean it's good by DidgetMaster · · Score: 0

    Free software is....well...free. The people who wrote it don't get paid. That means they generally only want to do the "fun stuff". In my experience as a programmer, all the grunt work (error checking, documentation, well formed error messages, etc.) is generally avoided by coders until the company says "you have to do X, Y, and Z before we can ship this product and customers will pay for it. You do it because you are paid to do it. FOSS software has no such motivations so all the "not fun" stuff goes largely undone. Some free software is great. A bunch of it is garbage. Without a profit motive, why should anyone be surprised that most of it is half-baked at best.

  35. Re:Doctor, it hurts when I eat chicken... by Anonymous Coward · · Score: 0

    In addition to missing documentation, there is often also bugs and unimplemented features.

    Since this is equally true of proprietary software, you seem to have no workable advice to offer.

  36. Use open source software on Windows by Anonymous Coward · · Score: 0

    It just works and it's well documented. I've tried Linux many times and always gave up. All my Windows software (other than the OS) is free software, and I couldn't be happier.

  37. I disagree with the premise... by QuietLagoon · · Score: 2

    The state of FOSS documentation is about the same or, in my experience, a bit better, than the state of software documentation in general.

    1. Re:I disagree with the premise... by Anonymous Coward · · Score: 1

      This I agree with, with a few important differences.

      There's many OSS projects with good documentation just like there's many commercial products with good documentation. Both tend to be larger, more common products that have good documentation. Bad examples of poorly documents software also exist in open and closed source software.

      One big difference is that OSS sometimes has NO documentation at all. The commercial software I've seen almost always has SOME documentation, and not zero. (Of course that doesn't mean it's good documentation).

      The other pattern I've seen, and this is equally true for both open and closed software is the documentation that only tells you about how each component works, with hundreds or even thousands of different components, but never tells you how do so the 3 simple tasks that 80% of people actually want to do. You're left trying to sort through 500 pages of compontent documentation to find the right 7 components that tell you what you need to know to accomplish the task. Or worse, there's no documentation that tells you how to accomplish your task, and you have to infer it from a poor understanding of the micro-level docs.

    2. Re:I disagree with the premise... by Anonymous Coward · · Score: 0

      Thanks for not buying into the circlejerk. Mod parent up. I doubt most of the people commenting have really have enough breadth of field to compare and contrast fairly.

    3. Re:I disagree with the premise... by QuietLagoon · · Score: 1

      ...One big difference is that OSS sometimes has NO documentation at all. The commercial software I've seen almost always has SOME documentation, and not zero. (Of course that doesn't mean it's good documentation)....

      Agreed.

      However a big difference between the FOSS and the commercial software in the scenario you cite is that with the FOSS you will not spend money to find out the documentation is lacking.

      It is rude (I'm being kind) to charge for software that has no or little documentation.

      If I have to proffer my credit card in order acquire the software, the documentation had better well be useful.

  38. Read the source code by Anonymous Coward · · Score: 0

    I can read the code, read english, write syntactically correct code (sometimes), but write english sentens is somehow difficult. Even more, when it's documentation which should not confuse the reader or when it's on an official wiki where language errors are not very funny :)

  39. Donate to Gnome's Outreach Program for Women by twistedcubic · · Score: 1

    Because they include documentation as one of their priorities.

    1. Re:Donate to Gnome's Outreach Program for Women by Anonymous Coward · · Score: 0

      Yes, lets all support and institutionalize sexism, because that has worked so well in the past for society.

  40. Use FreeBSD? by ogdenk · · Score: 1

    I find FreeBSD typically has far better documentation than the various patchwork Linux distros. A lot of FOSS projects are actually quite well documented.

    The biggest problem with documentation is developers don't want to help maintain because it gets in the way of keeping their projects in a perpetual beta release state by changing things constantly.

    Stable and mature software that can be properly documented = stale software that's less interesting to developers.

    1. Re:Use FreeBSD? by srobert · · Score: 1

      The FreeBSD Handbook and forums are awesome. I use FreeBSD on my laptop, but also have Arch Linux running in a VM. Arch Linux is also incredibly well documented. On the Linux side of things, the fragmentation means that what you learn for one distro may not apply well to another. To the OP I'd advise, just focus on the documentation that applies to the distro that you're running. If it's not good or it's out of date, then choose a different distro.

    2. Re:Use FreeBSD? by Anonymous Coward · · Score: 0

      Also, writing code and shipping it is what pays the bills and is easy to account for on a spreadsheet. Having to support the code/product is a negative on the bottom line.

      Product quality or lack thereof is hard to quantify for accounting purposes, and therefore gets treated as a second class citizen many times.

  41. Re:Read the source code by Charliemopps · · Score: 2

    he means in-line documentation: /*
          Function: Compare
          Compares two Types
          Parameters:
                l - lhs
          Returns:
                boolean result
    */

    Etc... as opposed to external documentation.
    It's rare that someone would leave inaccurate documentation inline with the code.
    Ok, yea, we've all done it on our local machines... but to them publish that?!?

    But I think you need both. External documentation is more for theory and meathodology. "This program is designed to do X and it's command line only because of Y" Etc...
    In-line documentation is more for "I used a string here because sometimes this numerical value does Z" etc...
    You need to document both the forest and the trees.

  42. semi-colons by Anonymous Coward · · Score: 0

    TLDP is close to a decade out-of-date, fragmentation between distributions has grown to the point that answers from one distro won't readily apply to another, and web forums for even specific projects are full of questions without answers, or those that head off into completely unrelated discussion, or with snarky, "it's in the documentation, stupid!" responses.

    It's probably best to use semi-colons rather than commas in this.

    1. Re:semi-colons by hendrikboom · · Score: 1

      Since there was an 'and' between the main clauses, commas were appropriate.

    2. Re:semi-colons by Anonymous Coward · · Score: 0

      Maybe it's okay grammar-wise. But it just seems a bit messy to me. Although, to be fair, the first time I read it, I thought it was multiple independent clauses.

    3. Re:semi-colons by Anonymous Coward · · Score: 0

      Just posted #47604903

      I'm a bit confused. Here is how I saw it...
      1. TLDP is close to a decade out-of-date
      2. fragmentation between distributions has grown to the point that answers from one distro won't readily apply to another,
      3. web forums for even specific projects are full of questions without answers, or those that head off into completely unrelated discussion, or with snarky, "it's in the documentation, stupid!" responses.

      I think there are three independent clauses there. Is 2 elaborating on 1? I have no idea what TLDP is, and if it has anything to do with fragmentation. When I think about using multiple sentences strung together in list format, I think semi-colons. I'm not trying to be harsh about this.

  43. Contributors start with documentation by MobyDisk · · Score: 1

    Perhaps new contributors should start with the documentation, then "move up" to contributing code? Or would one more barrier to becoming a contributor merely make things worse?

    1. Re:Contributors start with documentation by jedidiah · · Score: 1

      ...or better yet. People that like to whine about documentation actually contribute to that documentation once they have gone to the trouble to sort themselves out.

      You determine your own level of involvement with project mayhem.

      --
      A Pirate and a Puritan look the same on a balance sheet.
  44. Report missing/wrong documentation as a bug by MobyDisk · · Score: 1

    Do any F/OSS projects allow you to report bugs in the documentation using the bug reporting tool?

    1. Re:Report missing/wrong documentation as a bug by Anonymous Coward · · Score: 0

      I have seen the comments on documentation as a great way of make it relevant. Adobe Flex 3.5 used to have this feature and usually it was one of the first things i looked for when reading a section. It was like having a FAQ integrated on the documentation and usually when I couldn't find something on the doc, it was on the comments. A life saver on that time.

    2. Re:Report missing/wrong documentation as a bug by jones_supa · · Score: 1

      I think many of them would be fine with that.

    3. Re:Report missing/wrong documentation as a bug by CurryCamel · · Score: 1

      Mine does. It's hosted on github, so label the issue as "bug" if the documentation is wrong, or "enhancement" if it is missing.
      I promise nobody is going to flame you, and the fact that you show interest probably will make the documentation appear, even if you don't contribute it yourself.

    4. Re:Report missing/wrong documentation as a bug by Colonel+Fahlt · · Score: 1

      I'm not sure why any of them wouldn't, though it's often very project specific as to how they want documentation bugs identified/categorized. For instance, I once reported a documentation error for GCC and asked why they didn't have a general category for such in their Bugzilla. Their answer was that they use a keyword "documentation" and want documentation bugs filed against the specific component (as if it was a software bug), as the developers of the component in question also "own" any documentation issues. Some other projects are similar, or have their own quirks.

  45. /usr/share/doc by twistedcubic · · Score: 1

    On Debian, this is the directory which contains documentation outside of the man/info directories. Sometimes to get documentation for a package named foo, you have to install separately the package foo-doc. Debian does this to separate free software from documentation which does not satisfy its own guidelines for free software.

  46. If its as sorry as you say by Stumbles · · Score: 0

    then quit your bellyaching and fix it whiner. Its not like they use closed source proprietary nebulous document formats. Slashdot articles have gone into the toilet.

    --
    My karma is not a Chameleon.
  47. I just let time sort it out for me by Anonymous Coward · · Score: 0

    I work on several open source projects. What I do is first get hacker-types (the people who like to take things apart, investigate further, research and learn, the traditional meaning of the word) hyped up over the project, giving it some tech cred. Then I tell reddit that my projects are awesome and point to the tech cred as evidence.

    This step is important. Reddit, and similar other community-moderated fourms, are all about gaining internet points. Once those forums are secured, Stackoverflow will eventually fill up with questions and answers pertaining to my projects, and voila, documentation written.

  48. Try FreeBSD by Anonymous Coward · · Score: 0

    Back when I was a wee nipper, I remember having to learn how to consult and search man pages in order to run GNU/Linux. I've found that FreeBSD's documentation is generally excellent. Maybe it's something about BSD culture, but I find that it's where idiots like myself that need good docs have gravitated.

  49. Google it by Anonymous Coward · · Score: 0, Insightful

    A simple search on Google will find what you need If it isn't in the man page.

  50. Yes, proprietary (commercial) often wins here by Anonymous+Brave+Guy · · Score: 3, Insightful

    I will just wind up using proprietary software with proper documentation.

    Same here.

    I love the idea of Open Source, community-driven projects, and I'm happy when they provide useful software to people for no cost, and I'm happy that there are people providing competition for the big name software companies.

    I'm also a busy person. If I've got work to do or something important to finish personally, then realistically the cost of buying more polished commercial/proprietary software can often be justified instantly.

    That might be because it has comprehensive documentation, but much the same applies to the usual FOSS weaknesses: ease of use, or compatibility with industry standards, convenient availability of professional consultancy and training, and so on.

    (Of course, I am similarly sceptical about proprietary commercial software where the documentation or ease of use don't justify the high prices sometimes asked. This isn't about FOSS, it's about whether it's worth spending real money to get a much more practically useful product.)

    --
    If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    1. Re:Yes, proprietary (commercial) often wins here by Anonymous Coward · · Score: 0

      You went wrong in assuming that the expensive proprietary solution is more polished and documented better.

      It rarely is.

    2. Re:Yes, proprietary (commercial) often wins here by Anonymous+Brave+Guy · · Score: 1

      YMMV of course, but on this issue I find mine is unfortunately very consistent. FOSS projects with good usability and user documentation are rare things, while leading commercial/proprietary software frequently got to its dominant position by being better in these respects than its competition.

      I personally believe this enough to spend a lot of money on the software I use. Apparently enough other people are concerned about it that there are hundreds of posts in this discussion without many posts seriously questioning that the problem exists -- and this is Slashdot, which is about as pro-FOSS a forum as you're ever going to find on-line.

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
  51. Terrible coding standards by Enry · · Score: 4, Informative

    I'm a rather odd duck. I did a lot of coding in college and my first job (writing software for hospitals) but have since moved to system administration/design and have a degree in technical documentation. I've written books on Linux and have documentation up on the LDP, some of which is still in use. So I've seen all the sides.

    Coders are too busy writing code and making changes to what they write to give time for accurate documentation to be written. The days of "read the code for documentation" are long gone when you have multiple layers of libraries and applications to go through to find what you're looking for. This kinda worked in the days when you could fit an entire Linux install on three floppies but now that you need a few GB there's no way a single human can keep track of it all. Documentation takes time to write and get right. In the age of using github as a distribution and code changes between today and tomorrow, the documentation is suddenly invalid before it's written. Even then, it requires a lot of stupid questions asked by the documentation staff to coders who think they have better things to do.

    As for TLDP there was a bunch of problems. Using DocBook was brilliant, but the toolsets were terrible to work with and difficult for people who never used SGML or XML. Linuxdoc was easier to use but really wasn't the way to go long term, especially since the tools were Linux-only and meant the tools were of limited use. Once Wikis took over online there wasn't enough enthusiasm in TLDP to convert and lead the charge.

    1. Re:Terrible coding standards by Vellmont · · Score: 2

      Coders are too busy writing code and making changes to what they write to give time for accurate documentation to be written....
        In the age of using github as a distribution and code changes between today and tomorrow, the documentation is suddenly invalid before it's written. Even then, it requires a lot of stupid questions asked by the documentation staff to coders who think they have better things to do.

      You've just described an extremely flawed development model. For some reason you can still get away with this with documentation since it's still thought of as not all that important and can be done last. People used to think of security in the same way (and some people still do this), but 20 years of people saying you have to bake security in at the start has resulted in nobody seriously considering doing that as a last step. But yet we still think of documentation this way, by and large.

      The point being, if you want documentation, it needs to be part of the process, and part of the job. If a developer changes a major part of how people interact with the software, everyone in the project should know about that and it shouldn't just be this big surprise at the end.

      --
      AccountKiller
    2. Re:Terrible coding standards by Enry · · Score: 1

      Security is somewhat at the developer level, but usually only in a few cases where the software really is security related and gets properly audited before release. Those kinds of software projects are far and few between and even then the documentation is still lacking. Even then that's easier because the people doing the auditing are themselves coders. Documentation requires a whole different skill set (see Word Crimes by Weird Al) that is not always held by coders.

      For most other apps, security rests at the system level and is thus outside the scope of what the developers are working on. In some cases the compiler will alert them to common problems.

      The best kind of documentation you're going to get for now is really what we have now - some combination of end users writing on their blog, posts to stackexchange, or threads in mailing lists. And some of those may or may not apply to the code that's currently in use.

      Longer term, there's things like what synfig does by crowdfunding development efforts including documentation and training. This has a lot of potential, but can quickly get expensive for end users.

    3. Re:Terrible coding standards by tlhIngan · · Score: 1

      Coders are too busy writing code and making changes to what they write to give time for accurate documentation to be written. The days of "read the code for documentation" are long gone when you have multiple layers of libraries and applications to go through to find what you're looking for. This kinda worked in the days when you could fit an entire Linux install on three floppies but now that you need a few GB there's no way a single human can keep track of it all. Documentation takes time to write and get right. In the age of using github as a distribution and code changes between today and tomorrow, the documentation is suddenly invalid before it's written. Even then, it requires a lot of stupid questions asked by the documentation staff to coders who think they have better things to do.

      Maybe for FOSS, but given I now write commercial software, as "higher up" level guy, in the end, I write the documentation (I also talk with customers).

      I do it voluntarily now, so much so that coding fell from 50% of my time to probably only 20% of my time, while most of the other time is interfacing with customers, running around ensuring everyone has work and making sure everyone has all the necessary information, materials and other stuff to code.

      Turns out that communication skills are the keys necessary to get ahead, and writing documentation and talking with customers are great training for that. Even if you don't want to go managerial track, just doing the "hard work" part gives you an edge.

      I've written all sorts of documentation - from simple "how to take our release and run with it" guides to "here's how to properly set up your machine to build" guides. Usually because the guys would often do something that breaks something else requiring another half-dozen steps to fix, or a fundamental change is required in order to get stuff working, so I end up documenting everything I do in order to get it working for me.

      Then I take that and try it on a clean machine to make sure it still works and is accurate, ending up with a customer document that guides from them zero to hero, and makes us (the company) look good because wow, instead of a random collection of tarballs, randomly scattered README files, and all that, there's one guide to help them navigate the mess and answer the question of "ok, now what?".

      My weakest area would be API documentation, because it's not easy to write - you have to rely on the developer helping you out and while I can make it look pretty, ask all sorts of questions on edge cases and all that so a developer reading it won't say "well, this is a pointer, what happens if I feed it NULL? NULL is a reasonable input, and there's even a reasonable output for it (other than crashing)".

      After all, it's easy to say "in - integer between 1 and 10" and not have an error output like "OUT_OF_RANGE_ERROR", raising the question of what happens when it is out of range. You could enforce sanity and check every time you call it, and miss the odd time internal code has a bug, or other stuff.

      And no, when you're busy documenting, like I said, providing API examples starts eating into the free coding time I have left to verify that yes, it does as its told. (Some developers are terrible at providing examples and terrible at providing even a modicum of documentation - just enough of a hit that I can at least try to figure out what's going on and develop the rest of the documentation).

      And then there's the developer that gives me a function, expects me to document it from the code, and when I do so, suddenly feel constrained because shit, I said it would always return ERROR_FOO when the state of BAR was BAZ. Because hey, you gave me the code, I'm assuming everything in it is going to be the spec, so don't blame me when I document the code as now "limiting" you because you couldn't lift a finger and say "By the way, an error is returned when Bar is in BAZ state, but I haven't figured out what the proper error code is".

    4. Re:Terrible coding standards by Vellmont · · Score: 1

      Sure, you're probbably right that documenting skills and coding skills are mostly orthogonal to one another. But my point is more that the documenting at the very end is the wrong approach. Producing documentation should be integral into the process, not an afterthought. That doesn't mean it has to be done by the same person, only that it's not the last thing you do, and has to be overcome with people feeling like they're asking "dumb questions"

      --
      AccountKiller
    5. Re:Terrible coding standards by Enry · · Score: 1

      *adjusts onion on belt*

      When I wrote code for the Dept. of Veterans Affairs, the code almost literally wrote itself. I had to document every single function with what it was supposed to do and list inputs, outputs, and every variable that was created/read/modified. By the time I sat down to write the code I knew exactly how each function would work and it was just a matter of implementing it off the spec I had written. Then the code review, then the testing. In the meantime, I got questions from the documentation staff and they had access to the same spec I was using.

      But I've gotten the sense that software development isn't done like that anymore, certainly not in the OSS space.

  52. I don't usually bother by sjbe · · Score: 3, Insightful

    Where do you go for your FOSS documentation and self-help?

    Documenting code is different than documenting an interface. As an end user I honestly I don't bother with FOSS documentation for the most part because it's generally so bad. (Sadly non-FOSS software is too seldom much better even when it should be) While there are times when I have to dig into whatever is available, I generally don't bother with any application (FOSS or not) that I need to consult the documentation to figure out unless I absolutely have no alternative. It's sort of a quick and dirty way of sorting out what I want to use since 99% of what I do does not require deep magic. If I have to get out the manual then chances are that the application is poorly designed and will most likely cost me more time than some alternative. There are exceptions of course but it's not a bad first pass filter.

    As a random example it's why I can't be bothered with EMACS despite the fact that it's an absurdly capable piece of software. (I don't like vi either so spare everyone the holy war) If I have to consult a manual to do even the most basic things in the application then it isn't worth my time. (Ctrl-x Ctrl-c to quit? Seriously?!? No thanks) I don't want to memorize a random list of key shortcuts especially for an application I'm just starting to use. Installation routines should take care of all but the most arcane issues. Applications should never require magic keystroke combinations or buried options for common tasks. Minimalism is fine but not when it hides so much that I can't immediately discern how to do a task (I'm looking at you Apple). If I need a tooltip to figure out what something does then it is badly designed. If I have to pull up a help screen (press F1 etc) then it is really badly designed. If I have to look at a man page or consult a third party reference then it is probably completely broken.

    I think good documentation is important but it should never be a substitute for a well designed interface. Furthermore documentation for users (code is different) should primarily serve two purposes. 1) To get people up to speed on basic tasks with an unfamiliar application and 2) To document weird corner cases and how to deal with them. 99% of what any application does should not require special documentation. If it does then it needs to fixed until it is in a state where it no longer needs the documentation.

    1. Re:I don't usually bother by Anonymous Coward · · Score: 0

      Where do you go for your FOSS documentation and self-help?

      ...If I have to consult a manual to do even the most basic things in the application then it isn't worth my time...

      This is precisely why I dislike Blender.

    2. Re:I don't usually bother by Anonymous Coward · · Score: 0

      Given a piece of paper and told to make it fly, some people will drop it and let the wind take it, others will folder it into a paper airplane, some will wad it up and throw it, others will take it on a plane with them, a few will tell you the exercise is bullshit and not worth their time, and one will say God didn't give it wings thus it shouldn't fly. If you think everything can be made simple enough to be obvious then you have a very self-centered view of the world. Even babies need to be taught how to use a nipple. Almost all learn quickly, but they still had to learn.

    3. Re:I don't usually bother by TWX · · Score: 1

      I used to be sold on pico/nano, but then I needed to do things that weren't terribly easy to do in pico/nano, like significant regular-expression parsing in thousand-line files. I ended up switching to vi, mostly because while the commands are not necessarily intuitive, the project is very mature and well documented. It's a pain sometimes, certainly, but necessity pushed me to it and for the most part I'm getting good with it.

      It took me close to 20 years of using UNIX/Linux to finally have a need to make that change, for what it's worth.

      --
      Do not look into laser with remaining eye.
    4. Re:I don't usually bother by Anonymous Coward · · Score: 0

      Ctrl-x Ctrl-c to quit? Seriously?!?

      See that "x" thing in the top right corner of the Emacs window? It's called a close button. It's purpose is to quit the current application.

      I don't want to memorize a random list of key shortcuts especially for an application I'm just starting to use

      Then why are you using an application which was literally designed for the purpose of using it entirely with random key shorcuts?

      If I need a tooltip to figure out what something does then it is badly designed. If I have to pull up a help screen (press F1 etc) then it is really badly designed. If I have to look at a man page or consult a third party reference then it is probably completely broken.

      If there is a fancy GUI menu taking up my screenspace, then your software is badly designed. If I need to comb through menus to turn off "helpful" features that ruin my workflow, then your software is completely broken.

      Or perhaps I need to learn appreciate the existence of people with different needs and tastes a little more, rather complain about things I don't like.

    5. Re:I don't usually bother by Anonymous Coward · · Score: 0

      "I think good documentation is important but it should never be a substitute for a well designed interface. Furthermore documentation for users (code is different) should primarily serve two purposes."

      I think there is a bit of a mixup with some people expecting all apps to be iOS apps, and start talking UI when what they really want is something that works the way they expect (based on history, background, etc). The problem is that capable tools generally take an investment in order to be able to really use them. Yes, there are aspects (emacs can have VI bindings if it's what you know) but you simply can't expect Photoshop to behave as Photobooth for editing your photos. If you want to do what Photoshop allows you to do, you're going to have to invest some time to learn the tool, and then things like documentation come into play (especially if lacking a net connection). If you can't be bothered, no worries.

  53. There is no coolness in to write documentation by Anonymous Coward · · Score: 1

    There is no glamor in writing documentation. You do not get any kudos for writing documentation. You only get kudos for writing good source code. No one makes you the keynote speaker at the hacker convention because you write good documentation. Maybe if they paid people to write documentation?

    When I worked in a software company, the first people to be laid off were the people who wrote documentation.

    I used to buy books for Linux, but it was a waste of money and time to buy and read them. By the time a book would come out for Linux, they would have replaced how the user interface worked or rewrote the tool.

  54. Just suffer through it by Kjella · · Score: 2

    This exact story could have been posted the first day I visited /. and nothing has changed nor will it change. Keeping the documentation up to date with good examples is boring work and few want to do it. A lot of open source developers do it for their own benefit and will simply say that's not their problem. Since most of it is a volunteer effort you can't make them do anything and the few who want to write documentation can't make a dent in the number of changes that should have been documented.

    There are of course exceptions but they usually intersect with the kind of software that runs business critical applications where a lot of time and money is riding on it and paid developers do a lot of the work. Or you have someone who's being a bit of a nazi on it, but they tend to often get overrun by a fork that's moving more quick and dirty. Because users like to complain about poor documentation but they want the shiny new features too and there's not a few forks that's started because someone was rightly denied commit privileges.

    Personally I got tired of waiting for the gold at the end of the rainbow when things would finally stabilize and get working and documented and done. It is a half-baked work in progress and if you got the time and interest to deal with it please do. I managed to make Linux work for me for about 3.5 years, thinking I'd eventually get to stop tinkering with it but despite releases coming and going fixing some issues new ones appeared and it never really settled down. I finally decided to get a Win7 license four years ago, I guess Linux is an escape option if Microsoft doesn't clue in from Win8/8.1 but I don't expect much has changed.

    P.S. That's something I heard often, you tried like a 12 month old distro? Try it now, all your criticism is outdated and it's totally different and much better now. I used it long enough to know that's usually total BS.

    --
    Live today, because you never know what tomorrow brings
  55. Re:Read the source code by Anonymous Coward · · Score: 0

    what's the point of abstraction then?

  56. Some open source projects are documented by Anonymous Coward · · Score: 0

    The Postfix (MTA) project generally does not accept feature contributions without associated documentation. If an important feature is accepted from a contributor who did not document it, it is only released to users after documentation is added. Documenting new features before code is written helps one find defects in the interface or failure to handle important use-cases.

    Since documentation is valued, it is in fact comprehensive. This does not mean that it is always accessible to complete novices, there is still room for community maintained task-oriented HOWTO documents. Though these are not always of a uniformly high quality, they are sometimes more accessible to an inexperienced user under time pressure to complete a narrow task.

  57. Comment removed by account_deleted · · Score: 3, Interesting

    Comment removed based on user account deletion

  58. Writing Manuals and Documentation by hughbar · · Score: 3, Informative

    To blow my own tiny trumpet for a moment, I've written and updated a manual to go with: http://sourceforge.net/project... for each release.

    However, it isn't terrific AND I worked as a technical author for a number of years, doing mainframe software manuals. This is my main point, good manuals [mine is not] are hard and probably require equivalent effort to the software itself. The other big obstacle is that in, for example, mainframe world there is formal review process, formalised customer feedback, errata etc. etc. Also, manuals are planned as a 'set' installation, operation, troubleshooting, API etc.

    I don't know a lot of my customers and can only correct things that appear in the Google group. In my case, since it's a niche. there's not very much.

    Actually there's an opportunity here as well, in that non-code people could also participate in their favourite projects by writing guides. Indeed sometimes they do, but not often enough and they're fragmentary.

    --
    On y va, qui mal y pense!
  59. OpenBSD by SigmundFloyd · · Score: 2

    I'm aghast at the state ofdocumentation for Open Source projects

    You must have missed OpenBSD, then.
    I know, I know: It's an exception. I just wanted to mention the best documented Free Software I've ever seen.

    --
    Knowledge is power; knowledge shared is power lost.
    1. Re:OpenBSD by Anonymous Coward · · Score: 0

      Seconded. OpenBSD is one of the few software packages out there (free or commercial) that actually considers errors or omissions in the documentation to be a bug. Just have a look at the PF FAQ as an example of the quality of the documentation.

    2. Re:OpenBSD by Anonymous Coward · · Score: 0

      They can sleep at night saying "RTFM"

  60. Re:Read the source code by FireFury03 · · Score: 4, Insightful

    That is completely unreasonable. If I have to read the source code just to be able to understand how to use the program, I will just wind up using proprietary software with proper documentation.

    On the other hand, I've noticed a steady decline in documentation for commercial software too. Manuals have gone from the thick reference books I remember from 20 years ago to little "quick start" books if you're lucky. More frequently no documentation at all.

    Self documentation is going downhill too - there seems to be a trend to removing UI hints such as the short cut keys from menus, so where you would discover stuff from clicking around in the UI and seeing it, now it frequently seems that you'll never figure this stuff out without googling for an answer.

    Error messages, too, have disappeared - back in the day you used to get a descriptive error that told you what broke. Ok, so the non-techies probably didn't understand them but at least they could ask a techie. Over the past few years, error messages have been replaced with generic "something broke" errors that give no one any hints as to what went wrong. Increasingly (especially on Android and iOS) apps don't display an error at all - if something breaks they often just plain don't work and its very difficult to figure out why.

  61. Documentation will not fix a bad interface by sjbe · · Score: 2

    I bet most projects would be happy to accept patches to their man pages, and files they store in /usr/doc/ if they improve quality or accuracy.

    What you say is quite true however it doesn't really get at the root of the problem. If I ever have to consult a man page and I'm not doing something really arcane then the application interface is badly designed. No amount of documentation will ever fix a bad interface.

  62. I mail the author by angel'o'sphere · · Score: 3, Interesting

    Then I hire him, after all writing code I accidentally use in my commercial product, and feeling being hold hostage because in a corner area it does not work, is his business model :)

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    1. Re:I mail the author by SecurityGuy · · Score: 1

      There's a kernel of truth in here.

      If someone writes software for you for free and you want something else from them, pay them (or someone else) to write it. If you don't want it badly enough to pay for it, write it yourself.

  63. Re:Doctor, it hurts when I eat chicken... by Anonymous Coward · · Score: 0

    It's not equally true. You can test this yourself: think about a problem for which you need a software solution and OSS can't deliver. Is there a good proprietary solution available as the alternative? The answer is nearly always "yes".

  64. RTFM by guruevi · · Score: 0

    I don't see a lack of documentation anywhere in the FOSS world, it's actually a lot better than most closed source software. I don't know whether you're complaining about your lack of Google-fu or the fact that software is reliant on other things. Off course, very obscure things are not well documented but that is regardless of software you use, that's when you experiment and find out what you need, write a blog post or improve the documentation yourself. But for a regular user and regular sysadmin and developer tasks, there is plenty of help available.

    --
    Custom electronics and digital signage for your business: www.evcircuits.com
  65. Rapidly obsolete documentation by sjbe · · Score: 2

    How about crowdfunding some documentation efforts by real technical writers?

    A band-aid that doesn't solve the real problem. Even if you did this and produced some great documentation, it would fairly rapidly become obsolete unless the software is never updated. You would have to basically create an endowment to fund ongoing documentation development. The real problem is that A) the interfaces are bad enough that documentation is even necessary in the first place and B) documentation is boring, unrewarding and time consuming to do well so nobody wants to bother.

    1. Re:Rapidly obsolete documentation by Bob9113 · · Score: 1

      You would have to basically create an endowment to fund ongoing documentation development.

      Agreed that continued funding would be necessary to the extent that renewed documentation is needed. Whether an endowment or repeat crowdfunding is the best mechanism for doing so would probably vary from project to project. Perhaps you make the endowment approach a big stretch goal; like "$18,000 base funding for a one-time project, $250,000 or more creates an endowment with three annual $20,000 update projects until the endowment (invested in broad-based low risk equity funds, 50% domestic, 25% foreign first world, 25% foreign developing nations) is depleted" -- but I digress, you get the idea.

      A) the interfaces are bad enough that documentation is even necessary in the first place

      As you imply, I find that good documentation often exposes opportunities for improvement in the interface. That could become a channel for providing recommendations to the core development team, or could become the seed for a third-party development effort. Things which have value can get built, either because the developers and their sponsors want them, or through crowdfunding, or through some other motivating mechanism.

      In short; you've raised an opportunity to create additional value, not a threat to succeeding in the base objective.

      B) documentation is boring, unrewarding and time consuming to do well so nobody wants to bother.

      That is a restatement of the original premise for which we are attempting to find potential solutions. I think I am missing your intent in raising it anew as a bullet point.

    2. Re:Rapidly obsolete documentation by trytoguess · · Score: 1

      Patreon might fit the bill. In that crowdfunding site, people pledge to pay x amount of cash each time a product is released. I've seen this used for internet video producers, but there doesn't seem to be a reason this can't be used for regular documentation.

    3. Re:Rapidly obsolete documentation by John+Bokma · · Score: 1

      B) documentation is boring, unrewarding and time consuming to do well so nobody wants to bother.

      I actually like to write documentation. And at 100 USD/hr you can certainly drop me a line if this crowd sourcing ever happens.

    4. Re:Rapidly obsolete documentation by Anonymous Coward · · Score: 0

      Documentation will always be necessary. In an API, I want to know what happens if I pass in a negative number for a specific parameter, a nil value, a not-a-real-number value, a list of numbers, etc... Will it fail with an exception? Will it produce non-sense results? Will it crash? Will it return a default error value? Will the result be consistent? Will it just use the first number? Will it reapply the function for each number? Etc... If you can come up with a way to show all that in the interface API, then it probably looks exactly like documentation anyway. Java is pretty good at this. Python really sucks at it. (I program daily in both)

  66. Re:Read the source code by cayenne8 · · Score: 1
    Isn't "Documentation" a 4-Letter Word?

    ;)

    --
    Light travels faster than sound. This is why some people appear bright until you hear them speak.........
  67. Developers often still get paid by sjbe · · Score: 1, Insightful

    Free software is....well...free. The people who wrote it don't get paid.

    Frequently that is not at all true. Most free software is developed by professional developers in conjunction with their day job. It is released as free but for many important software projects the developer probably actually did get paid for their time. Sure there are a non-trivial number of developers who really are doing it for non-financial reasons in their spare time but the number is far smaller than most people think.

    Bad documentation is not unique to FOSS. Commercial software is often just as bad.

  68. Re: Read the source code by Anonymous Coward · · Score: 0

    If your apps are from the Play Store or App Store send the devs the reports. You can't fix the errors anyways so give it to those with the source. A lot of Android bugs are because of the manufacturers doing something nonstandard or it is sometimes just a bug.

    Disclaimer: I write Android, iOS, and pretty much everything else at my company.

  69. How to fix the sorry state of FOSS docs by Culture20 · · Score: 3, Interesting

    Switch all of the info docs back to man pages. man pages are neatly organized and have all of the info in a handy grep-able format. info help pages are as disorganized as 1990's websites with their random hyperlinking. Something GNU got waaay wrong.

    1. Re:How to fix the sorry state of FOSS docs by putaro · · Score: 1

      Yes - I still don't know what the point behind info is other than to be different than man.

    2. Re:How to fix the sorry state of FOSS docs by Anonymous Coward · · Score: 0

      Everytime i see something about using info, I turn to google instead. Info is useless.

    3. Re:How to fix the sorry state of FOSS docs by drinkypoo · · Score: 1

      Yes - I still don't know what the point behind info is other than to be different than man.

      It's an improvement in some ways, but inscrutable in others. Sadly, instead of improving man, it's NIH.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  70. Re:Read the source code by Raseri · · Score: 5, Informative

    On the other hand, I've noticed a steady decline in documentation for commercial software too.

    Many of them seem to be going the route of "community-driven" documentation; i.e., dropping the cost of the manuals (and everything related, such as tech writers, printing, and so on), and shifting the burden of educating new users to more experienced ones. This is more or less how most FOSS projects have been documented for years, though out of necessity rather than a desire to cut yet another corner.

    --
    Writhe your naked ass to the mindless groove.
  71. Hence, "Software Engineer" == MYTH by CanHasDIY · · Score: 4, Insightful

    ... and this is why the term "software engineer" is a bit of a misnomer.

    Could you imagine if, say, aerospace engineers didn't document their work? Automotive engineers? I can hear the shop talk now:

    "Hey, Jim, what's the recommended torque for head bolts on an '09 Madza 3?"

    "What's the manual say?"

    "Nothing, they didn't document that part."

    Ergo, coders who fail to document are anything but engineers, cocky attitudes aside.

    --
    An enigma, wrapped in a riddle, shrouded in bacon and cheese
    1. Re:Hence, "Software Engineer" == MYTH by Anonymous Coward · · Score: 0

      You're describing scenes from a time long past in software. It used to be that way. The spec was formalized. The math was proven. The software was written. Sure, there were simulations and debugging, but not after release.

      Then everything went to shit.

      Software is not made by software engineers anymore. It used to be, and the title applied exactly as you say it should have. But not anymore. Corporate greed and personal laziness have stripped that away.

    2. Re:Hence, "Software Engineer" == MYTH by Anonymous Coward · · Score: 0

      Software engineers are managers. They estimate costs and duration. They adhere to a process for quality assurance. They make sure documentation is in place to facilitate usability and maintainability. A lot of them are developers but the actual coding isn't the engineering part.

      You've confused programmers with software engineers. It's okay, everyone does. It's not hard to understand why when most software coders call themselves software engineers despite the lack of qualification to the title.

    3. Re:Hence, "Software Engineer" == MYTH by Whatsisname · · Score: 1

      Your scenario only seems ridiculous because car companies don't share all their mechanical drawings. It would not be unreasonable to be expected to look up the torque in the mechanical schematics if that information was readily available to you.

      You don't expect the manual for a computer motherboard to list the resistor values of every resistor on the motherboard, do you?

    4. Re:Hence, "Software Engineer" == MYTH by DoofusOfDeath · · Score: 1

      Could you imagine if, say, aerospace engineers didn't document their work?

      I think it's a poor simile. Software developers for most projects are asked to make revisions at a pace far faster than those for airplanes. This leads to various shortcuts. If documentation and testing were really that important for software, then the pace of new development would go way down and/or the # of person-hours involved in each change would go way up.

      Perhaps a better simile would be what happens with mission-critical software. I suspect (but don't know) that the documentation is a lot better.

    5. Re:Hence, "Software Engineer" == MYTH by CanHasDIY · · Score: 1

      Your scenario only seems ridiculous because car companies don't share all their mechanical drawings. It would not be unreasonable to be expected to look up the torque in the mechanical schematics if that information was readily available to you.

      Which is my point - the info for torque specs exists because the engineers who designed the car properly documented their work (and BTW, yes, the torque specs for pretty much every non-exotic car is readily available with either a Google search or purchase of a vehicle-specific repair manual).

      You don't expect the manual for a computer motherboard to list the resistor values of every resistor on the motherboard, do you?

      No, but I expect the guy who designed it to have the values written down somewhere accessible to other people working on building the same piece of hardware.

      In essence, what I'm saying boils down to, "Coders aren't engineers, because they don't document their work."

      And I stand by that.

      --
      An enigma, wrapped in a riddle, shrouded in bacon and cheese
    6. Re:Hence, "Software Engineer" == MYTH by CanHasDIY · · Score: 1

      In case you were wondering:

      Torque specs for 2009 Mazda 3 head bolts:

      Install new cylinder head bolts and torque in 2–3 steps, in sequence as follows:

      Step 1: Tighten the bolts in sequence to 27–97 inch lbs. (3–11 Nm).

      Step 2: Tighten the bolts in sequence to 9.5–12.5 ft. lbs. (13–17 Nm).

      Step 3: Tighten the bolts in sequence to 32–34.5 ft. lbs. (43–47 Nm).

      Step 4: Paint a mark on the edge of each cylinder head bolt to use as a reference. Turn each bolt, in sequence, 85–92 degrees.

      Step 5: Turn each bolt, in sequence, 85–92 degrees.

      Straight out of the Chilton's manual (available at any auto parts dealer), but I found it on a forum. The info is there.

      --
      An enigma, wrapped in a riddle, shrouded in bacon and cheese
    7. Re:Hence, "Software Engineer" == MYTH by CanHasDIY · · Score: 1

      Could you imagine if, say, aerospace engineers didn't document their work?

      I think it's a poor simile. Software developers for most projects are asked to make revisions at a pace far faster than those for airplanes. This leads to various shortcuts. If documentation and testing were really that important for software, then the pace of new development would go way down and/or the # of person-hours involved in each change would go way up.

      Perhaps a better simile would be what happens with mission-critical software. I suspect (but don't know) that the documentation is a lot better.

      Sounds like an excuse for laziness to me. If you've got time to revise the code, you've got time to revise the documentation.

      Now, am I saying that this is 100% the developer's fault? Not always, I accept that secondary and tertiary factors (such as dealing with a PHB who doesn't understand that good work takes time) can affect workflow.

      But we're not talking about hard-deadline work for your boss, we're talking about FOSS. So I dunno.

      --
      An enigma, wrapped in a riddle, shrouded in bacon and cheese
    8. Re:Hence, "Software Engineer" == MYTH by Bill_the_Engineer · · Score: 1

      Could you imagine if, say, aerospace engineers didn't document their work? Automotive engineers?

      A "software engineer" that didn't document their work is a code slinger pretending to be an engineer.

      I think you've confused software developers who work in the consumer applications sector (release fast, often and cheaply) with software engineers in the industrial, manufacturing, enterprise, and control systems sector.

      --
      These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
    9. Re:Hence, "Software Engineer" == MYTH by DoofusOfDeath · · Score: 1

      Sounds like an excuse for laziness to me. If you've got time to revise the code, you've got time to revise the documentation.

      For personal projects, sure. When you're working on someone else's dime, that's their call.

    10. Re:Hence, "Software Engineer" == MYTH by CanHasDIY · · Score: 1

      No, no. I qualified my statements, read again. Namely the first and last sentences in the post.

      --
      An enigma, wrapped in a riddle, shrouded in bacon and cheese
    11. Re:Hence, "Software Engineer" == MYTH by CanHasDIY · · Score: 1

      Sounds like an excuse for laziness to me. If you've got time to revise the code, you've got time to revise the documentation.

      For personal projects, sure. When you're working on someone else's dime, that's their call.

      Sure.

      But, like I said in my last post (which you apparently did not read thoroughly), "we're not talking about hard-deadline work for your boss, we're talking about FOSS."

      A lot of people are making the exact opposite claim as you for their excuse: Devs aren't getting paid for their FOSS work, so they don't see the "value" in doing the job right, ie writing documentation.

      --
      An enigma, wrapped in a riddle, shrouded in bacon and cheese
    12. Re:Hence, "Software Engineer" == MYTH by Bill_the_Engineer · · Score: 1

      In your subject you claim "Software Engineer" is a myth and in your first sentence you called the term "software engineer" a bit of a misnomer.

      I'm pointing out that you're mistaken.

      To use your analogy: Automotive Engineers are a myth because all of your generalizations are based on automotive mechanics who aren't known for documenting their work.

      --
      These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
    13. Re:Hence, "Software Engineer" == MYTH by DoofusOfDeath · · Score: 1

      Yeah, my apologies. Somehow I actually only saw the first line of your post.

    14. Re:Hence, "Software Engineer" == MYTH by Craig+Ringer · · Score: 1

      Your point is somewhat accurate, if poorly made.

      You neglect important externalities though. Often the devs are competent, but working to unrealistic deadlines and with priorities that specify that the product must work - not be pretty or properly documented.

      You'll find this attitude in many fast-moving industries with little regulatory oversight.

      Heavier regulation tends to force better processes, better documentation, higher standards for QA, etc ... and greatly increase the cost and time taken for everything.

      It's a trade-off. You would clearly prefer the trade-off to be more toward a process-based, managed system than it currently is. Are you also willing to pay 3x as much for software? To greatly reduce what's available or possible for people to build for free, or make it entirely impossible?

      I share your frustration, but unlike you I don't think the answers are simple, or that the explanation is that people other than you (obviously) are stupid.

    15. Re:Hence, "Software Engineer" == MYTH by Craig+Ringer · · Score: 1

      I love the way that people who don't contribute themselves describe those who do as "lazy" and demand that they make "excuses" for not doing what they're doing well enough to meet the standards of random other people.

      This attitude actually makes the problem worse. "Screw you, why should I bother documenting something I wrote for me when some asshole's going to come along and tell me it's not good enough for them anyway? What'd they ever do? I'll just make it work for me."

    16. Re:Hence, "Software Engineer" == MYTH by Anonymous Coward · · Score: 0

      You obviously haven't worked where I do.

    17. Re:Hence, "Software Engineer" == MYTH by CanHasDIY · · Score: 1

      In your subject

      Huh, I didn't think anybody actually read those...

      --
      An enigma, wrapped in a riddle, shrouded in bacon and cheese
    18. Re:Hence, "Software Engineer" == MYTH by Anonymous Coward · · Score: 0

      Could you imagine if aerospace or automotive engineers worked for free and just put all their designs on the net so you could download a car? Some open source work is paid for and much is not. Stop making equivocations.

  72. Re:Read the source code by sabri · · Score: 4, Insightful

    I think several here have different expectations of what constitutes "good documentation". Being a Linux sysadmin, I work in FOSS day in, day out, and documentation is always available and clear.

    Without knowing, you've hit the nail with the hammer.

    Here is why FOSS docs are so nice to you, but proprietary ones are not: audience analysis.

    The people who create FOSS documentation are often either the developers themselves, or very early adopters who spend a lot of time with the developers. They have a technical mindset, and will write documentation in that way. You have a very technical mindset, and like me, will probably prefer a well-commented configuration example over a nicely formatted .pdf document with all possible options.

    In large enterprises, things are different. That's where the professional technical writers come in (yes, that's a full-time job). These folks will come up with a target audience, secondary audience, initial outline for the documentation and (in their minds) well-written content and examples. Since this gets reviewed many times by people who all have an ego telling them that they must make at least some changes in order to show productivity to their bosses, the documentation ends up being a piece of crap. It may be correct, but it usually is a piece of crap. For example, let's take any routing vendor's documentation. You are looking to configure something as simple as an L3VPN. The easiest way to do this is by getting an example configuration and just change some IP addresses to match your own network, right? Well, the "professionals" think not. They will come up with this:

    Step 1: configure an IGP. For more information on how to configure an IGP, see chapter 12, section 3.
    Step 2: enable the appropriate interfaces for MPLS. For more information on how to enable interfaces for MPLS, see chapter 2, section 1.
    Step 3: create an LSP between the two PE nodes. For more information an how to configure LSPs, see chapter 2, section 10.
    Step 4: enable a signaling protocol such as BGP or LDP. For more information on how to configure BGP as an L3VPN signaling protocol, see chapter 10, section 9. For more information on how to configure (targeted) LDP as your L3VPN signaling protocol, see chapter 7, section 1.
    Step 5: configure the route-target: set route-target 12345:1. For more information on route-target configuration, see chapter 8, section 2.
    Step 6: configure the route-distinguisher: set route-distinguisher 12345:100. For more information on route-distinguisher configuration, see chapter 8, section 3.

    And that, my friend, is why commercial documentation sucks a monkey's ass.

    --
    I'm not a complete idiot... Some parts are missing.
  73. Bring back man pages as the primary documentation by ron_ivi · · Score: 3, Informative

    I think Unix (not just BSD, but I include BSD-based SunOS 4.x) documentation from the mid 90's was the best and easiest to follow.

    The main thing I miss from that era is that practically everything I wanted to know could be looked up in man pages; and if not on that first man page I tried, in a meaningful see-also page.

    These days, seems most software (not just Linux, but for any platform) is scattered amongst HTML-urls that point to long-gone former websites, and youtube tutorial videos.

    Now you might say that much of today's software is too complex to describe in a man page --- but IMHO - that's the bigger problem. If people write complex monolithic bloat, writing pretty documentation for it is the least of our problems.

  74. Teach, don't tell -- and the non FOSS world. by quintessentialk · · Score: 3, Interesting

    First, I wanted to link to This blog post by Steve Losh on writing documentation. I think offers some good metaphors as to why 'reading the source', even 'self documenting' source, is insufficient, though of course not everyone will agree with his philosophy.

    Second, I wanted to say on the projects that I work on as a systems engineer doing new product development (as in this, not the information technology use of the term) documentation is perpetually threatened. And we usually work on comparatively well funded, non-FOSS programs. Documentation is timing consuming and expensive, and sometimes it is even customer direction to place it at a lower priority than new development. Though inevitably it makes things harder later, sometimes that is o.k. if it works better with the cash flow (saving money now only to pay more later can work if you expect to have more money later). Unfortunately FOSS software projects don't necessarily have people promising a ton of money for the documentation.

  75. Re:Read the source code by bzipitidoo · · Score: 2

    Isn't "Documentation" a 4-Letter Word?

    docx ?

    --
    Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"
  76. One vendor's wiki? Ugh. by ron_ivi · · Score: 1

    Now if only they would push such information to the upstream projects we'd be getting somewhere. Otherwise, that's just one more set of web-pages that needs to be checked.

    Pretty annoying if the best way to find out about an application is to have to check the Yggdrasil archives, the Slackware web page archives, the Caldera docs, archives of the Mandrake web pages, Knoppix blogs, etc.

  77. Re:Read the source code by Anonymous Coward · · Score: 3, Interesting

    Yup, I'm convinced JavaDocs are the worst thing to happen to documentation in a long time. They actively discourage good documentation.

    There is no good way to have API docs alongside meaningful documentation (with examples, diagrams, longer blocks of prose) without ramming everything into your codebase.

    Look at Sphinx (Python's standard for docs - although supports other languages) - it allows you to curate custom docs, and then add in your API documentation from your code. Your code keeps it's core documentation for 'this is how you use this class/function', while your docs actually explain how the system fits together, how everything works.

    JavaDocs are like a testing suite that only allows you to do unit tests - it makes you think in terms of the smallest unit, so you never test the whole. Sure, a foo may be passed into the bar, but what does that really mean? JavaDocs are essentially no more than browsing the code with folding enabled.

    Good documentation is about all the stuff that *isn't* represented by your code. JavaDocs focus only on what is.

    In general, Python is the best example - the documentation is execellent, and tools like DocTests allow you to ensure your documentation is up to date and accurate.

  78. Re:Read the source code by RabidReindeer · · Score: 2

    I've never seen JavaDocs that add anything to the source. It's okay if you need a list of methods or parameters, but usage is lacking.

    Documentation needs to have several *working* examples (not snippets) from a simple Hello World to more sophisticated but still commonly used. A single example that illustrates every imaginable feature and use case is rarely helpful.

    Blame Sun.

    JavaDocs have the capability of being used to good advantage, but in actual use, they're really just a loose aggregation of API call specs. And for more recent javadocs, they're often even useless for that. One major product's javadocs are more a pointless muttering about internal implementation details than actual usage information. I've never seen a major library that could actually be properly used based on the information in the Javadocs alone.

    Sun did mitigate the uselessness of JavaDocs by supplying tutorials, but the two weren't tied together in a meaningful way.

  79. Wow, this is hard. by seebs · · Score: 0

    So there's this project which anyone can contribute to which doesn't have a thing I want. But unlike many things, this one doesn't require nearly as many specialized skills to produce, so the chances are pretty good I could make it if I cared to spend the time.

    WHAT SHOULD I DO!?!?!?? Please help me, Slashdot. I need a way to feel like this is someone else's fault and I can't do anything about it. ... I guess, Slashdot being what it is, I should point out that the above does not actually reflect my feelings on the topic. I actually do contribute documentation updates to projects sometimes.

    --
    My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
    1. Re:Wow, this is hard. by BaronM · · Score: 2

      Here's the thing: quality technical writing DOES require specialized skills. It also requires close collaboration with and cooperation from the dev team.

      Having worked with a professional tech writer in the past, the process works something like this:

      1. Dev team writes the software to meet the business requirements, keeping notes about which requirements are met completely, partial solutions, known bugs, etc.
      2. Tech writer meets with dev team on a regular basis, developing draft documentation from dev team notes and business requirements following appropriate style guidelines.
      3. At some point, a release is declared. Tech writer completes draft documentation draft for work completed for that release.
      4. Dev team and tech writer reviews draft documentation together for completeness and correctness.
      5. QA team implements the software in the QA environment PER THE DOCUMENTATION. -- this is the key part. If the documentation is insufficient to implement the software and/or the software does not work as documented, it is a bug.
      6. Bug reports are filed against both the software and the documentation as necessary.
      7. Release is ready when the software is acceptably debugged and works as documented.

      Of course, this hardly ever happens anymore whether software is FOSS, commercial, or in-house, but I have see the process happen, and it is a beautiful thing when it does.

    2. Re:Wow, this is hard. by Anonymous Coward · · Score: 0

      What I like about your response is it talks about a process rather than a specific tool or set of tools. One thing is missing, step 8. which is essentially repeat steps 1 through 7 when the next feature goes out.

      Technical writers are continually checking what was written against the next release. What is missing from open source documentation, from the "blogger" that writes a how-to, and from the developer that documents an API is the continual maintenance which is part of a writer's job.

      Fewer companies are investing in a really good writing team. Just as QA is also something they aren't investing in. I recently left a company 11% of which was composed of just Support personal. They had a weak writing team and a weak QA team.

      So, when a customer called to say "Hey, the product is doing X? This doesn't look right to me.?" The Support people had no fricking idea what the product should be doing --- no functional specs, no documentation on how the product should respond. To answer this customer's question, the support person has to recreate the customer's situation and then interrupt a developer to find out if the result was expected or not. The Support person maybe would write a KB article. Not a professional writer and pressed for time you can imagine the quality of that. Any KB article was a one off and when the product changed, the KB article didn't.

      Both the cost to Support and the benefit of a good writing team are difficult to quantify --- soft science. The company's take was just "our products are too complex" or worse "we have some really stupid customers" and that's why we need a Support Team of this size.

      Happily, I think companies are beginning to realize that documentation can be a competitive advantage. Look at Digital Ocean's help library https://www.digitalocean.com/help/ or Atlassian's investment in Git tutorials.

  80. Re:Doctor, it hurts when I eat chicken... by bobbied · · Score: 2

    Then don't use open source. In addition to missing documentation, there is often also bugs and unimplemented features. Unless you are actually working on a project which is built upon open source components, why would you use inferior software?

    There is two kinds of freedom: freedom of the source code, and freedom of yourself getting cool stuff done productively.

    Ever heard of Red Hat? They don't sell an operating system, they sell fully vetted, stable, documented and supported Open Source solutions that have been well tested. They keep knowledgeable staff and support the development of FOSS by paying them to contribute to various projects they find useful for their customers. You may not like Linux and have no need for Red Hat or companies like them, but I think you too easily discount the level of support available for the major parts of the FOSS universe.

    Personally, I've used both Microsoft's and Red Hat's support services and Red Hat wins in my book hands down. I had tickets open for WEEKS with Microsoft that dragged into MONTHS and we didn't get any resolution from them beyond "Just reload the system from scratch and that will fix it". Where with Red Hat, I never had a ticket open for more than 2 weeks and usually had a coherent answer from them in a few days. Your mileage may vary, but IMHO FOSS isn't as big of a problem as you seem to think.

    --
    "File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
  81. Just avoid shitty GitHub projects. by slashdice · · Score: 1

    Sorry folks, we accidentally used dice.com to hire some new sourceforge developer advocates. The official slashdice HR guidelines prevent us from hiring people on dice.com (we don't eat our own dogshit) but the HRtard responsible, umm, well, was hired from dice.com. Rest assured that we're firing all of them and sourceforge will continue to serve the finest adware installers for stable open source projects t(meaning they haven't been updated since the 90s.)

    --
    Copyright (c) 1990 - 2014 Dice. All rights reserved. Use of this comment is subject to certain Terms and Conditions.
  82. So simple by iggymanz · · Score: 1

    Only use open source that has good documentation; this is why I prefer BSD over Linux for servers, for example. On the desktop, the major packages I use have great docs. this article mentions some fringe desktop I never even heard of (and I'm a Unix/BSD admin and user for over 25 years and Linux user for 16), there's your problem right there buddy.

  83. CI by fulldecent · · Score: 1

    Now that server time has reduced in cost, you can add continuous integration to a project and make full documentation a requirement.

    For example, here is a CI tool for KDE which tracks missing documentation at English Breakfast Network http://ebn.kde.org/

    --

    -- I was raised on the command line, bitch

  84. Re: Read the source code by Anonymous Coward · · Score: 0

    Wiki

  85. Re:Read the source code by shaitand · · Score: 3, Insightful

    I haven't generally found that to be the case at all. At least not with enterprise stuff. Generally the company wants you to buy support contracts and training from them so they make operation as obscure as possible. One almost universal technique used to build an internal vernacular for the proprietary product, naming elements and configuration blocks using invented product specific labels instead of using standard industry terms. This is great because someone who is perfectly competent can't make heads or tails of your documentation until they've learned the vernacular you use.

    Good documentation in my experience is documentation that any competent programmer/engineer/user can pick up and immediately use without ever having seen your stuff before.

  86. O'Reilly, Manning, Apress by Anonymous Coward · · Score: 0

    But especially O'Reilly because they've been doing it the longest.

  87. i am a smartass by Anonymous Coward · · Score: 0

    for documentation i try to read what is supplied. then i go browse/ask stack overflow. then i go fiddle with the source code if i feel competent in the language and libraries used. finally i give up and suck thumb in the corner, looking for alternatives.

    as for self help, for that i usually go to youporn. but there are plenty good alternatives too.

  88. Re:Read the source code by phantomfive · · Score: 2

    I've never seen JavaDocs that add anything to the source.......Documentation needs to have several *working* examples

    Well there's your problem......you're someone who doesn't learn from reading, you're someone who needs examples.

    Javadocs are often useful if you don't want to read through several layers of code to find out what the function returns on error, or if it's safe to pass in NULL, for example. Good ones define the contract for the method, and that's extremely valuable, but contracts are a different topic.

    --
    "First they came for the slanderers and i said nothing."
  89. Step 2: If you don't like it, fork it by FatLittleMonkey · · Score: 1

    Perhaps frustrated tech writers like yourself should get together to form their own group (with blackjack and hookers) which picks specific un/underdocumented FOSS projects and "bombs" them with documentation. Self-hosted if the project devs don't realise what they're getting. Gathering professionals, enthusiast volunteers, through to helpful coders.

    Eventually the group gains enough reputation that you can start to make demands of projects, in order to raise the general standard of technical/project and user documentation across FOSS projects. Likewise, tutorials, courses, e-textbooks, etc.

    --
    Science is all about firing a drunk pig out of a cannon just to see what happens.
    1. Re:Step 2: If you don't like it, fork it by Anonymous Coward · · Score: 0

      I'm all for open source, but if the devs are so fucking stupid, that they won't make use when someone professional offers help, why bother with that project? Move on to the next one and hopefully someone has the brains and that project does not dissapear.

  90. Goodbye karma by GrumpySteen · · Score: 2

    Where do you go for your FOSS documentation and self-help?

    To be honest, my answer is often "closed source software from a company that provides documentation and support contacts."

    Yeah yeah... open source rah rah read the code and fix it yourself. Fuck that. I have better things to do with my time than trying to decipher and fix some other jackass's code.

  91. Contribute a piece of info by Anonymous Coward · · Score: 0

    Duh.

  92. Re:Read the source code by james_pb · · Score: 3, Insightful

    Setting up a resource like that doesn't mean that it's filled out in a useful way, and it's not.

  93. man nanorc by Anonymous Coward · · Score: 0

    the keybindings are in
    man nanorc

    This is the correct place for them if you understand man, which apparently you don't

    It's funny because pico is actually more poorly documented than nano, because it make the assumption you know pine

    The fact that this post is at 5 insightful tells you all you need to know about Slashdot

  94. Re: Read the source code by Anonymous Coward · · Score: 0

    Who needs documentation to know how to use iOS? It's pretty intuitive.

  95. Do it the OpenBSD way. by CrAlt · · Score: 1

    If it is not documented it doesn't ship. If the docs are wrong it's considered a reportable bug.

    The man pages and official FAQ's are all you normally ever need.

    --
    I have to return some videotapes...
  96. Re:Read the source code by Curunir_wolf · · Score: 1

    Error messages, too, have disappeared

    Users won't understand the error message anyway, just give them a frowny face and be done with it!

    --
    "Somebody has to do something. It's just incredibly pathetic it has to be us."
    --- Jerry Garcia
  97. Re:Read the source code by Bill_the_Engineer · · Score: 2

    JavaDocs are only as good as the person writing the documentation. I've seen useless JavaDocs which were nothing more than a list of API calls, and I've seen JavaDocs that were so well done that it could have easily been published to a book.

    --
    These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
  98. Re:Read the source code by Zeek40 · · Score: 0

    Proprietary documentation is often just as bad or worse than FOSS software. Oracle software is particularly bad about this, as well as being broken in ways that make it almost nonfunctional for many of it's advertised purposes.

  99. Re:Read the source code by Curunir_wolf · · Score: 0

    Blame Sun.

    Thanks, Obama!

    --
    "Somebody has to do something. It's just incredibly pathetic it has to be us."
    --- Jerry Garcia
  100. Re:Read the source code by FireFury03 · · Score: 1

    Error messages, too, have disappeared

    Users won't understand the error message anyway, just give them a frowny face and be done with it!

    I don't mind the idea of hiding the error message behind some kind of "advanced" button on the error dialogue, but removing it entirely is just nuts.

  101. Re:Doctor, it hurts when I eat chicken... by Bill_the_Engineer · · Score: 1

    I think you mentioned another reason documentation is lacking in FOSS. It gives an incentive towards paying for support.

    --
    These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
  102. Neckbeards? Old Grey Beards maybe ;) by Anonymous Coward · · Score: 0

    We all have our quirks ;) But I still have more respect for someone that does not descend in to a rant of #%!@&^%#$* And keeps on subject, is clear and respectful.

    Just saying, it goes both ways.

    We Old Grey Beards, can not all be put in the same box ;)
    Just like those following, can not all be put in the same box ;)

    No group has a monopoly on Knowledge, Tact or Respect. Just like no group has a monopoly on being Brash, Nasty, Foul Mouthed, Inconsiderate and Hard to Get Along With.

    There are all types in all groups. And I get to choose who I associate with ;)

    So I just chill out, respect others and go with flow and enjoy life ;)

  103. Money by Kamineko · · Score: 1

    Money is the answer.

    If you were to give me money, I could write all kinds of words for you. Tell me all about the configuration, deployment and best practices for your system and we'll work together on some documentation.

  104. Re:Read the source code by james_pb · · Score: 1

    And don't take this as a condemnation of Fusion 360 - it's a really useful tool, and it's improving quickly.

  105. Re:Read the source code by CaptnZilog · · Score: 2

    They will come up with this:

    Step 1: configure an IGP. For more information on how to configure an IGP, see chapter 12, section 3.

    Step 2: enable the appropriate interfaces for MPLS. For more information on how to enable interfaces for MPLS, see chapter 2, section 1.

    Step 3: create an LSP between the two PE nodes. For more information an how to configure LSPs, see chapter 2, section 10.

    Step 4: enable a signaling protocol such as BGP or LDP. For more information on how to configure BGP as an L3VPN signaling protocol, see chapter 10, section 9. For more information on how to configure (targeted) LDP as your L3VPN signaling protocol, see chapter 7, section 1.

    Step 5: configure the route-target: set route-target 12345:1. For more information on route-target configuration, see chapter 8, section 2.

    Step 6: configure the route-distinguisher: set route-distinguisher 12345:100. For more information on route-distinguisher configuration, see chapter 8, section 3.

    And that, my friend, is why commercial documentation sucks a monkey's ass.

    Damn, you just described the O'Reilly Sendmail book perfectly! (LMFAO)
    It's an excellent reference for someone who knows a good amount about Sendmail already, but even as a fairly advanced admin I find it really convoluted in a lot of ways.

  106. To the source by realilskater · · Score: 1

    Often the only reliable up-to-date documentation is sadly the source code itself.

  107. Pay someone or write it yourself by Anonymous Coward · · Score: 0

    I work on serveral open source projects and I agree, the documentation usually sucks. If not for the front-end application itself, then at least for the underlying libraries and such. Software documentation is often in a terrible state for several reasons:
    1. Developers are busy writing code
    2. Coding is more fun than writing documentation
    3. Developers are idiots and somehow assume their twisted logic and UI is intutive.

    If you really want to fix this problem you can do one of two things:
    1. Write documentation yourself and contact developers for help, maybe offer to contribute the documentation to the project.
    2. Contact the developers and offer to pay them (donate to the project) if they write better docs.

    I donate my free time to open source and I almost never get paid for it. When I do receive money it is usually with a request to fix something in the code or add a feature. No one has ever offered me cash to write documentation, but I would happily do so if someone offered up the money.

  108. I want to help but don't know how by Anonymous Coward · · Score: 0

    I wanted to help, but tried to find a way to contribute and was defeated. Each project has special formats and needs. You can't just jump in and start writing. I hit a wall just trying to figure out what to do to get started. How does a technical writer find a project that needs help?

  109. tl;dr by Anonymous Coward · · Score: 0

    Is it just me, or does "tldp" look awfully similar to "tl;dr"?

  110. Re:Bring back man pages as the primary documentati by Anonymous Coward · · Score: 0

    Info must die. Real manpages for all the GNU tools.

  111. PostgreSQL by Anonymous Coward · · Score: 0

    For another project that has solid documentation, see PostgreSQL. Highly recommended, both the database and the documentation.

  112. Best Strategy to fix the sorry state of FOSS docs by Anonymous Coward · · Score: 0

    The best strategy to fix this: Let's create a new linux distribution.
    Only packages with thorough documentation on each and every feature will be accepted for the repositories.

  113. Re:Best Strategy to fix the sorry state of FOSS do by Anonymous Coward · · Score: 0

    Only packages with thorough documentation on each and every feature will be accepted for the repositories.

    Oh my gawd! It stopped booting!!!
    Why on earth did they throw out the linux-kernel package?!?

  114. Re:Read the source code by Dadoo · · Score: 1

    Error messages, too, have disappeared

    Wow, I totally agree with you, on that. For example, one reason I've always preferred Firefox over IE is that, when it couldn't get connected to a website, it would basically just say "I can't get connected to that site". My first question was always, "well why can't you get connected?". Were you able to find look up the name? Did you get a network error, like "connection refused" or "network unreachable?" Now, Firefox is doing the same thing. Holy crap, is that irritating.

    --
    Sit, Ubuntu, sit. Good dog.
  115. Re:Read the source code by CronoCloud · · Score: 2

    On the other hand, I've noticed a steady decline in documentation for commercial software too. Manuals have gone from the thick reference books I remember from 20 years ago to little "quick start" books if you're lucky. More frequently no documentation at all.

    How I miss the days of fat manuals and binders with software In the old (meaning even up to XP) days they even used to ship comprehensive user guides with computers.

    It's even effecting games now, both PC and console. For example The manual for the PS3 edition of the GOTY version of Fallout 3 is 43 pages long. The manual for the PS3 version of the Legendary version of Skyrim is a two page pamphlet directing you to http://manuals.bethsoft.com/ where you can get a PDF version, which is slightly over 20 pages long. That PDF is useless on the PS3 itself, of course. Digital downloads are hit or miss. Strangely the PSP was better in that regard.

    One set of well done user documentation I have encountered recently is that for Scrivener. Very comprehensive.

  116. Requirements by nastyphil · · Score: 1

    Programmers, some of them at least can write programs. Deploying a solution requires more. Architecture, human resource management, scheduling, testing, triage, review, marketing and documentation user support and product management, for example. There are reasons there are such specialisations. Business Cases and Functional Requirements should provide use cases or stories, which inform your testing and provides the skeleton of your user manual. You do start a project/phase/update/maintenance by understanding the requirements, right? You accept the output by validating it against the original impetus. And then you describe it in something of a narrative. Whether you sprint, spiral or fall over water, this works.

    --
    Dialectician. Archology.
  117. No Documentation, no use. by Khyber · · Score: 1

    It's that simple. If documentation cannot be kept up to date and accurate, I cannot rely upon the software, and will not touch it period.

    --
    Still waiting on Serviscope_minor to wake up to fucking reality and realize that Jessica Price isn't going to fuck him.
  118. Re:Bring back man pages as the primary documentati by ron_ivi · · Score: 2

    I think that's *half* of where the problem started.

    The second half is when various Linux distros started writing their "own" documentation, rather than contributing back to the upstream projects.

    Once documentation fragmented like that; every damn blogger started trying to make documentation "his" to preserve his own page-rank; and a bunch of commercial Question/Answer sites saw the business opportunity of trying to own the documentation for themselves.

    Once all those were in place -- it seems most of the efforts moved away from contributing documentation back to the source projects, and moved towards commercializing and monitizing "answers" - which is only profitable when the documentation doesn't keep up.

    Sad.

  119. Write it! by Doc+Hopper · · Score: 1

    I was really concerned about the sorry state of the Bugzilla documentation a decade ago. So I wrote first an unofficial FAQ, and then later a book called "The Bugzilla Guide" and submitted it to the CVS repository under my own copyright. A few years later when I felt it was in a reasonable state, I released the documentation to the Mozilla Foundation and washed my hands of the project. They've done a pretty good job keeping it updated; SOMEBODY has to do the groundwork to create a framework for the documentation to hang together. It's either a labor of love or a labor of money. Lucky for me in writing The Bugzilla Guide, I had both: first was paid to work on it part-time as part of my job, and then for several years with no remuneration. Eventually I stopped using the product professionally, so therefore had no need to revisit and update any further. The tale is the same for many of us, I believe. I parlayed that experience into a series of lucrative contracts that leveraged the fact that I was the guy who "wrote the book on Bugzilla". These days, I have largely stopped doing contract work on the basis of that anymore; my full-time job -- that, not coincidentally, involves writing a lot of documentation! -- is way too interesting for me to spend more time on that :-) So in short: find a personal or professional reason to use a product and write the docs. If you don't do it, who will?

  120. Re: Read the source code by fisted · · Score: 1

    yeah, and pretty inflexible.

  121. Re:Read the source code by Anonymous Coward · · Score: 0

    well, RTFM is

  122. Re:Read the source code by Anonymous Coward · · Score: 0

    Glad to see you didn't make sweeping generalizations based on a sample size of 2.

  123. Re:Read the source code by fisted · · Score: 1

    Your sig annoys the hell out of me, could you finally s/Unix/Linux/, or even s/Unix/Slackware/ it, please?!
    Repeat after me: Linux is not Unix. It does not even try to be. And frankly, this very Ask-Slashdot brings up of the main difference between Unix and Linux; namely the point that the Unix documentation (Nowadays the BSDs' for most practical purposes) is largely fine, and well-maintained.
    So all your sig does is making yourself look like an idiot, and worse, it does it in a supposedly smug way.
    Your sig is fail. Thanks for considering.

  124. Re:Read the source code by war4peace · · Score: 2

    I actually prefer it that way. Simple enough for the knowledgeable, with drill-down capability for those who need more detail about step X or have a custom configuration that needs taken care of.
    Beats man pages anyway.

    --
    ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
  125. Re:Read the source code by war4peace · · Score: 1

    Oracle software is particularly bad about this, as well as being broken in ways that make it almost nonfunctional for many of it's advertised purposes.

    Really?
    http://www.oracle.com/technetw...
    http://docs.oracle.com/cd/E282...

    Yes, Oracle documentation is inherently complicated, because its products are very complicated. Comprehensive documentation tends to be that way.

    --
    ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
  126. Re:Bring back man pages as the primary documentati by Graymalkin · · Score: 3, Insightful

    Now you might say that much of today's software is too complex to describe in a man page --- but IMHO - that's the bigger problem. If people write complex monolithic bloat, writing pretty documentation for it is the least of our problems.

    I wouldn't say that today's software is too complex for man pages but instead man pages have never really been ideal for the tasks for which they're used. Software has always been complex. Man pages might have been appropriate for some short window of time but technology quickly left them behind.

    Man pages do not have an effective system of hyperlinking, indexing, or even searching. They were meant to be read on a teletype or printed on paper. For documentation any more complex than instructions on how to use console commands they are completely inadequate. Even for looking up instructions on console commands they're less than adequate because there's no sort of authoritative hierarchy, if you don't look up the exact right term man won't point you to the correct documentation (or best guesses).

    Besides man being inadequate it is difficult to write proper man pages. This is just adding insult to injury as it makes it less likely that developers will write even bad documentation.

    Of existing documentation systems I'd most like to see GNU Info become the primary documentation mechanism for FOSS. It solves most of man's problems without introducing its own new ones. Even GNU Info isn't perfect and could use some improvements.

    I don't disagree with the idea that FOSS desperately needs some reliable offline documentation. This idea might require that FOSS distributions themselves maintain their own documentation. The Arch wiki for instance is fantastic, it's some of the best Linux/Unix documentation around. While the Wiki is great it would be really nice to see this information turned into texinfo/manpage/whatever files so everyone could have good references and not need access to the internet.

    --
    I'm a loner Dottie, a Rebel.
  127. Re:One vendor's wiki? Ugh. by TWX · · Score: 1

    Yup. And that's been the other part of the problem, poor versioning on the writeups that are out there, so there's a bit of research just to see if this document even applies to the project, package, and version that you're trying to work with. Since I was working with video, notorious for knocking down the local console to the point that a reboot is required, I decided to set up a serial TTY so that with my old laptop I could serial-console in. In the process I found instructions for configuring the bootloader to also use the TTY interface, but while Grub2 is better documented than a lot of projects I still found some erroneous documentation for Grub2 and some now-useless documentation for the first-generation Grub as well.

    --
    Do not look into laser with remaining eye.
  128. Re:Read the source code by Zeek40 · · Score: 0

    Yes, Really. I wish Oracle documentation was complicated, but it's not. It's entirely insufficient to actually use their products for anything but the most simplistic use cases, and frequently completely incorrect. Of the ~30 SR's I've opened since this January, 4 of them turned out to be the result of the documentation being wrong.

  129. Difficult to fix, and getting harder by Anonymous Coward · · Score: 0

    As software development accelerates it's going to become more and more difficult to justify documentation for the simple reason that it goes out of date almost immediately. Rigorous design principles are great on paper, and you can take rigid software designs directly to the documentation, but software design is something that only really happens in academia and big software shops with specifically targeted customers. For everyone else documentation is development drag - it's a slowdown and everyone hates doing it.

  130. Manual by Anonymous Coward · · Score: 0

    I write great manuals and sell them as e books.

    Being paid to document by the most enthusiastic users is the way to go.

  131. I buy books by Phronesis · · Score: 1

    I spend a lot of money on books. O'Reilly, Packt, etc. put out some very useful books documenting FOSS tools (and for statistical computing in R, both Springer and CRC publish a lot of really excellent books, although they can be very pricey). These books are mostly written by people who can really write and edited by people who can really edit.

    And when I spend my money buying this kind of documentation, it supports a culture of good technical writing and ensures that good technical writers to get paid for their work.

    It might be nice if there were a similar quality of documentation available for download under CC, but absent that it's nice that there is a thriving industry providing good, useful documentation in books.

  132. Re:Read the source code by Salgat · · Score: 1

    If source code was written in human language I'd agree.

  133. And the THIRD half... by Ungrounded+Lightning · · Score: 2

    [First half: Info replacing man.]
    [Second half: Distro-specific Linux documentation explosion and lack of upstream transmission.]

    And the THIRD half: The X windows system dumping every little subroutine interface into the man pages, with names that collide with unrelated non-X features, so the "apropos" command became buried in junk. B-b

    --
    Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
    1. Re:And the THIRD half... by ron_ivi · · Score: 1

      Info replacing man

      If it replaced it, I could almost be OK with it.

      The problem is that it didn't - so for half the stuff you have man pages (with pretty good see-also sections); and for the other half the stuff you have info pages; and suddently you have to do twice the work to find anything.

      "apropos" command became buried in junk.

      Better search technology could help that one.

  134. Re:Bring back man pages as the primary documentati by Anonymous Coward · · Score: 0

    I don't think Linux installs man pages anymore, they replaced them with a search engine for random forum posts and askubuntu questions.

  135. Re:Read the source code by david_thornley · · Score: 1

    Let me tell you a little story.

    We use Visual Studio 2012 here, and not long ago somebody told me a neat little editor trick. I looked at the menus, on-line documentation, Visual Studio books on Safari, and the MSDN site, and didn't see any reference to it. I wondered if there were others, so I asked a question on Stack Overflow asking if there was thorough documentation of the VS2012 editor like there is for emacs and vim.

    The question was downvoted. Two people voted to close for "off topic" before I pointed out specifically where the guidelines said such questions were on topic. People simply didn't understand what I was looking for, like it was inconceivable that such documentation could exist.

    This is after years of hunting through the MSDN site to check on things, and failing to find what I needed to know about half the time, on the web pages that the information belonged on (either on the page or through links from there).

    So, you'll forgive me if I look at TFS and snigger uncontrollably.

    --
    "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  136. Re:Read the source code by Lotana · · Score: 1

    We use Visual Studio 2012 here, and not long ago somebody told me a neat little editor trick.

    Well, don't hold it to yourself: Share it! We use VS2012 as well here, so I am curious.

  137. contribute by Anonymous Coward · · Score: 0

    Write the docs. Make them great. Pester those who know what you don't until you've figured it out. Set the example for everyone to follow. You're a leader. Lead!

  138. Re: Read the source code by Anonymous Coward · · Score: 0

    Not... it's just AFLA

  139. Re:Bring back man pages as the primary documentati by Anonymous Coward · · Score: 0

    > Now you might say that much of today's software is too complex to describe in a man page

    It is not. The problem is cowboy software development where people find pleasure in hacking out something but hate to do documentation. It takes discipline and rigor to do documentation. But, I think if we had better tools for creating documentation that would go a long way to improving the situation. Make it dead-simple, even "fun" (some kind of gamification perhaps?) to write docs and we'd have a better chance of getting developers to write down WTF is going on.

  140. Re:Read the source code by exomondo · · Score: 1

    How I miss the days of fat manuals and binders with software

    But that's just nostalgia, digital documentation is much more efficient and effective. You can quickly search the entire contents, it isn't wasteful, it doesn't take up heaps of space and you can take it with you wherever you go easily.

  141. Re:Doctor, it hurts when I eat chicken... by Anonymous Coward · · Score: 0

    None of which is useful without EPEL, the free repository maintained on the side by Red Hat personnel working with their pet upstream sandbox, Fedora. There are too many missing components, especially critical Perl and PHP and Ruby plugins. Even long standardized tools like Nagios are not in the base OS.

    And guess what? Red Hat support gets you *nothing* from EPEL. Paying your dues by yourself writing software and updating documentation and configuration notes, does.

  142. Re:Read the source code by Anonymous Coward · · Score: 0

    > JavaDocs have the capability of being used to good advantage

    So does "Object Oriented Programming(tm)", and MixEdCaSeVarIablENames", and lexical scoping. Too bad they were lexically scoping their own backsides when they were writing the programming guidelines for Java. The senior programmers *warned* them that it would come back to bite them, and it bit Sun right out of making any money.

  143. Re: Read the source code by Anonymous Coward · · Score: 0

    What happens is those who have support contracts file bug reports that consist of little more than the frowny face. Somehow support thinks that engineering needs to prove it isn't a bug. Sure these get sent back, wasting hours to days getting info that a proper error message (or in the case of problem not reasonably reducable by error handler -- I'm looking at you COMException and SQLException a a stack trace!) could give us in the initial report.

  144. Last user of the pack by Anonymous Coward · · Score: 0

    I just live with software that's between 2 and 5 years out of date and don't upgrade often. After using something for a year or so, the UI gets familiar enough to live with.
    Experiences so far
          - XFCE is the best desktop environment ever.
          - about 10 percent of websites, fail to render correctly, and are unusable.
          - pam is too complex for mere mortals to understand.

  145. Nothing by Anonymous Coward · · Score: 0

    I think they are all niggers, at least honorary niggers.

  146. Re:Read the source code by phantomfive · · Score: 1

    Your sig is fail. Thanks for considering.

    Your post has been taken into consideration

    --
    "First they came for the slanderers and i said nothing."
  147. Re:Read the source code by bonehead · · Score: 1

    Here is why FOSS docs are so nice to you, but proprietary ones are not: audience analysis.

    Exactly. The OP gives himself away when he describes his computer use as a "home hobby".

    As a pro, I much prefer the nice, succinct, "straight-to-the-point" man pages that you find with open source stuff than the tediously long novels that come along with commercial software.

    I'm sure hobbyists would prefer a "for dummies" version, but I just don't have the time to read 30 pages of rambling bullshit just to figure out what the "-x" command line option does.

    Personally, I think OSS documentation is, for the most part, exactly what it should be.

    Alternate answer:

    Docs for commercial software are written by professional "technical writers". Many of them paid by the hour. ALL of them incapable of understanding the details of what they're writing about. Their job is to describe the software to the least common denominator. Many times, the person writing the documentation IS the least common denominator, and couldn't make good use of it to save their life. What they do understand, is that the more words they put in the doc, the bigger their paycheck. So you end up with 750 pages of bullshit that doesn't actually explain how the program works.

    OP should fire up a Linux system and type "man rsync" and "man bash", read them top to bottom, and then ask himself why his own inability to comprehend that excellent documentation leaves him thinking that OSS docs aren't up to par.

  148. Re:Bring back man pages as the primary documentati by ron_ivi · · Score: 1

    Might require that FOSS distributions themselves maintain their own documentation.

    I rather the distributions stay away from this -- or at most just passed whatever documentation they do add to the upstream projects.

    IMHO the biggest *problem* now is that you often have to got to Red Hat's manuals, or to Arch's or Ubuntu's wiki, or to Gentoo's mailing list, etc. to find documentation to anything.

    Seems like that means you have a half-dozen competing efforts that all are re-envengint the same documentation; and since many of those distros are commercial enterprises, are motivated not to share and to paywall off their investment. Ugh.

  149. Linux Encyclopedia by yusing · · Score: 1

    Documentation could improve a lot faster and better if some company took the time to setup a Wikipedia-type "Linux Encyclopedia". Everyone could get at it and improve it in waves in the very same way, and it would unite stuff that's scattered hither and thither.

    --

    "You must try to forget all you have learned. You must begin to dream." -- Sherwood Anderson

    1. Re:Linux Encyclopedia by Craig+Ringer · · Score: 1

      I'm not at all convinced by that. I think it'd just be even more fragmented, confusing and bitrotted than what we already have, unless it was very carefully designed to tag passages as relevant to particular versions/distros, etc.

      It's not easy to get this right.

      A big first step would IMO be to lock all distro devs in a single room and declare that the last one standing gets to live. Or, at minimum, do this for package formats. We need rpm OR deb. One of them has to die.

  150. Re:Read the source code by bonehead · · Score: 1

    Damn, you just described the O'Reilly Sendmail book perfectly! (LMFAO)
    It's an excellent reference for someone who knows a good amount about Sendmail already, but even as a fairly advanced admin I find it really convoluted in a lot of ways.

    To be fair to O'Reilly, it's convoluted because it's about Sendmail.

    No admin in their right mind would choose Sendmail these days. For a small installation with no budget, Postfix can do the job and is much simpler to admin. For a large installation, you either get the higher-ups to fork over the dough for CGP, or start firing off resumes.

    In this day and age, being a sendmail admin == being a masochist.

  151. Intellectual Property by NotInHere · · Score: 1

    Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"

    Are you reffering to copyright or patents? Second are monopolistic, true, but copyright is not monopolistic at all: it allows for remixes, and implementations that do something the same way but are not just a simple copy.

    Defective? Please name a better model. Current implementation has certain issues (terms too long for both patents and copyright, strongly national, problems with alternative models like open content, penalties far too high), but the principle itself isn't broken.

    Why is it a "tyranny over the mind of man"? I'm not reffering to DRM or trolling patents (almost all software patents are trolling or defensive-trolling). I think copyright creates incentives to create Intellectual property. Would an author write a book when he knew he wouldn't get any money from its sales? Would you put research money into a drug when your competition could copy it the moment you release it to the market? What are your ideas to redesign these systems?

    1. Re:Intellectual Property by bzipitidoo · · Score: 1

      Both. Copyright is monopolistic. Why is it that only one publisher at a time can have the "right" to make copies of works still in copyright? There's no good reason for such restrictions. As an example, anyone can print Sherlock Holmes stories. No need to ask anyone for permission. You might think that means no one can profit from printing them, and so no one does, but that is not the case.

      As for better models, one word: patronage. Patronage worked for centuries. It worked for Mozart. You might suppose that means only the wealthy would patronize the arts. In Mozart's day, that was largely the case. But today we can do patronage much, much better. Thanks to vastly superior communication, the public can directly participate in the financing of art and science. That was simply not possible centuries ago. Currently we have Kickstarter, Indiegogo, and Humble Bundle.

      Patronage can be the mainstay, but it's not all. There's also the advertising and endorsement models. Broadcast radio and TV uses advertising.

      Having to get permission to share information is indeed tyranny. Tyranny over our very thoughts. Civilization arose and advanced because we invented and improved ways of sharing knowledge. We created writing systems so we could more easily share knowledge. Sharing is the natural state. It is only relatively recently that a coalition of various small interests have conspired to change the thinking on sharing so that now it's vilified as "piracy". The Gutenberg press was a huge advancement that some, sadly predictably, attempted to suppress. One of the forces attempting to control the press was the Church. They wanted to make sure there were no inaccurate Bibles circulating amongst the people no matter how high their rank, and felt this "need" gave them the right to dictate what printers could print. They helped pioneer the whole idea of copyright, for that purpose. Today, it is unthinkable that anyone could censor the Bible. The Pope himself has no authority to tell printers that they can't print whatever version of the Bible they want.

      And today, suppression is happening again with our most recent breakthrough, the Internet. It will eventually end, it's only a question of when. The sooner the better.

      --
      Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"
    2. Re:Intellectual Property by Anonymous Coward · · Score: 0

      Why is it that only one publisher at a time can have the "right" to make copies of works still in copyright?

      That is not true. If I write a technical book, as long I have leverage to redact language that locks me into that publisher, I can self-publish, have multiple publishers, whatever.

      More realistically if your claim was true, I could not put up the software that I own the copyright to on multiple software repositories, like Github, download.com, tucows, sourceforge, my own website etc. I can and do.

  152. Re:Read the source code by Anonymous Coward · · Score: 0

    Seems I only ever have mod points when I see something funny. I wanted to mod you up instead of posting this useless "me too!" post, but there you go.

    Some Javadoc stuff is great. Some is awful. I like the way headerdoc/xml comments pop up useful info in the IDE while you're coding, but it seems like none of the tools go any lengths towards helping someone produce good standalone documentation.

    Do you know of any good examples to look at for people who produce excellent docs from these types of tools? Do they have to basically write novels within code comments, or can the bulk text be stored separately and merged with the header comments afterwards?

  153. Here is one solution by Anonymous Coward · · Score: 0

    Each software project should set up it's documentation on a semi-wiki. That is, a web page where the current documention is readable but is unwritable, but below it are proposed rewrites, corrections, comments, quiestions, etc entered by anyone. This way the documentation can be rewritten by the users overtime, and when release time for the package comes , the best additions of documentation become the new canonical version released with the product, and take over the unwritable version at the top. Thus, when you read something you don't agree with in the documentation you can contribute on the spot, like any wiki. Plus it's vandal-minimized.

  154. I fix it by Craig+Ringer · · Score: 1

    When I find a problem, I fix it where possible, and at least bring it to the attention of relevant people where I can't.

    If people actually did this, instead of complain that "the docs suck" and expecting someone *else* to do the work to fix the issue, the docs wouldn't suck.

    If whatever it is uses some particularly arcane and awful docs build system I'll often just send in textual changes. If it uses something sane, or something insane that I already know (docbook for example) I'll send a patch.

    This is a case of JFDI.

    1. Re:I fix it by Craig+Ringer · · Score: 1

      ... and yes, I know it's hard. I've spent *hours* figuring something out to write it up. Many, many times.

      OTOH, I'm using someone else's often very good work for free. Perhaps it's not an efficient use of time ... but then if I've paid for something I often find I still have to dig around and figure out issues with it anyway.

  155. Tech writing is a skill by Craig+Ringer · · Score: 1

    Agreed. You can produce good docs without the solid co-operation of the dev team, but it's much more difficult, more time consuming, and a lot more frustrating. They also tend to bit-rot a lot faster.

  156. Re:Read the source code by FireFury03 · · Score: 1

    But that's just nostalgia, digital documentation is much more efficient and effective. You can quickly search the entire contents, it isn't wasteful, it doesn't take up heaps of space and you can take it with you wherever you go easily.

    Nothing wrong with digital documentation. My complaint is frequently *no* documentation.

  157. Re:Read the source code by Anonymous Coward · · Score: 0

    Consider the JavaDocs for Java.
    In almost all cases there are three or more classes with overlapping functionality, you can solve every problem in more than one way.
    If you make the wrong choice it is going to come back and bite you, hard.
    To be able to make an informed choice between the different ways to solve the problem you need documentation that on when and where to use the classes. What the intended use cases are.
    JavaDocs tend to only document the API and the official documentation for Java can only be used as a reference, not as a complete manual.

    While I am sure that it is possible to write good documentation with JavaDocs it will also probably make the code unreadable.
    The information that you can conveniently put in JavaDocs is what should be in the appendix of the manual, not being the complete manual in itself.

  158. Re:Read the source code by FireFury03 · · Score: 1

    Error messages, too, have disappeared

    Wow, I totally agree with you, on that. For example, one reason I've always preferred Firefox over IE is that, when it couldn't get connected to a website, it would basically just say "I can't get connected to that site". My first question was always, "well why can't you get connected?". Were you able to find look up the name? Did you get a network error, like "connection refused" or "network unreachable?" Now, Firefox is doing the same thing. Holy crap, is that irritating.

    I'm finding that on tablets, things frequently simply don't work - no errors or anything. The iCloud stuff, for example - if it can't connect through to the internet (because it isn't playing nice with a proxy server, for example) then it simply doesn't synchronise; no indication why it isn't working, or that there is anything wrong other than the fact that you notice it isn't synchronising. And yes I know there is an event log hidden away that has debugging info in it, but asking a customer to find that and read out relevant detail is a lot harder than an on-screen error message.

  159. Re: Read the source code by Anonymous Coward · · Score: 0

    That. Threir products are complicated. That's where the problem starts.

  160. Manual first? by Anonymous Coward · · Score: 0

    The problem is that the development process is backwards. Writing a mountain of code and then trying to document it after the fact is stupid. It would be easier to get both aspects of the software (code and documentation) to match if you wrote the manual first and then wrote code to behave the way the manual says it should. We already do this for ourselves when we flow chart an algorithm or do pseudo code. We already frequently make use of "contracts" to define code functionality before the contract is fulfilled. How much harder would it be to go up one more abstraction layer and write those behavior contracts in plain english?

  161. Re:Read the source code by phantomfive · · Score: 1

    I really am not sure what you are saying.....the Javadocs for Java have served me well.

    --
    "First they came for the slanderers and i said nothing."
  162. I think we found the solution by mdervin2001 · · Score: 1

    To our glut of Unemployed English Majors.

  163. LibreOffice suffers badly from this problem by Anonymous Coward · · Score: 0

    If LibreOffice were produced by a division that pulls in $20 Billion a year the documentation would be pretty damn good. Luckily, I work almost exclusively with plain text and have no need for any "office" software.

  164. Re: bad FOSS documentation, or Ubuntu sucks! by bbsalem · · Score: 1

    I'd rather have good docs and bad tools instead of tools that claim to be ready for users that are poorly documented. I have just experienced yet another instance of bad documentation and indeed how developer choices contribute to both poor documentation and poor software.

    FOSS and Linux eontail a lie. It is somewhat like a social media lie that a community can arrive at quality products just by the need they express and the solutions they generate. I have been using Ubuntu since 8.04 and my 12.04 just fell off the end of the repos, The means I get the "Untrusted Package" nonsense from the Soiftware Center for any new package I try to install. This is Cannonical's sneaky way to telling you that your need to reinstal; it isn't a matter of upgrade because the next rev. they allow you to use is 12,10, and that is not supported. Now this would not be so bad if they allowed /home to be in its own partition by default, but they don't help you with that. When Ubuntu installs, it needs a swap partition, so why can't it ask if there is a separate /home or make one?

    There is a FOSS tool called recordmydesktop that claims to do desktop video capture with sound. It fails to capture sound at all on U. 12,04 and 14.04 installs I have. The documentation is a night mare because the program has a lousy interface is was a hacked command line tool with many many options, To get into sound on most Linux systems is a nightmare again because of complex command-line options. It is very hard to figure this stuff out and the way FOSS works if it gets on the Debian repositories it is propagated everywhere, Ubuntu, Mint, etc., etc., with no standards for utility and quality of documentation. That is why FOSS and Linux suck and suck even more as time goes on. My eyesight is failing and to read complex man pages and use command-line options is literally getting to be a pain. I am convinced that much of this is unecessary and is due to geeks not finishing what they started or not really dealing with proper choices in the first place.

    Go to You Tube and look for a video that came from the SciPy 2013 Conference from Austin Texas entitled something like "Write Buggy Software". This describes the problem very well and the challenge not met by developers to write simple tools first and use bug reports to tell them who their users are and what they expect from the tool. Too often especially on the Debian repositories I down load something to try that disappoints because it either does not do what it claims or it is too complex to use. The developer has lost the forest for the trees because the underlying driver environment was buggy or he added too many choices each one of which multiplies the chance for bugs. He becomes overwealmed, having bitten off too much, and walks away, and yet the software remains on the repositories.

    I am seriously consider leaving the world of Linux, I have used and managed early UNIX systems and nearly all Solaris systems, so I am not afraid of the command line. I just think that the systems ought to be more robust and easier to maintain in config. I am seriously thinking about getting rid of all of my Linux installs and getting a Mac as my main desktop. I have had a Mac before, OS X 10.4, Power PC Mac Mini, but that is a white elephant now, but I may get a current Mac Mini or a Macbook of some kind. The reason is that UNIX and BSD are still under the hood, and FOSS stuff installs there, I can get a Terminal when I want to use the shell, all true, but the big plus of OS X in my experience is that Apple has assured that an application it supports will install and configure reasonably on its hardware. My hint to Apple is that you can undercut poorly supported Debian derivative Linux installs by cutting the cost of Mac hardware by one half. Then it would become an attractive alternative to Linux and Microsoft Windows, and that the way in is that support of apps on a stable platform.

  165. Re:Read the source code by jeremyp · · Score: 1

    Javadoc isn't meant to add to the source, it is supposed to be instead of the source. You shouldn't need to read and decipher the source code in order to use an API.

    --
    All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
  166. Better than documentation for commercial software by Anonymous Coward · · Score: 0

    I was going to post about the FOSS documentation being better than the software from commercial offerings. While MSDN for developers is often pretty good, when it comes to registry changes needed to make Windows sane, they are often very poorly documented.

    But then I saw this was about Ubuntu - a commercial entity - making private changes to FOSS software, and including the documentation for the standard version.

    This does not conflict with my view that FOSS documentation is better than documentation from commercial entities such as Microsoft or Ubuntu.

  167. Re:Read the source code by lsatenstein · · Score: 1

    Agreed. I think several here have different expectations of what constitutes "good documentation". Being a Linux sysadmin, I work in FOSS day in, day out, and documentation is always available and clear.

    As soon as I dip a toe into proprietary software, I'm met with a stubborn inability to communicate from the publisher. NVIDIA, HP, Microsoft, rank about the same in terms of opacity. Even Red Hat's documentation of their proprietary products are no match for the exact same company's contributions to FOSS documentation.

    But then there are other FOSS products that match proprietary for its lousiness in documentation. Ganglia, Puppet, I'm looking at you.

    My frustration with Fedora is the locked in attitude to documentation preparation and editing. Some of the grammar stinks, and some of it is just plain missing or two generations late.

    Fedora uses software tools (I did not see GIT in there) and a closed team to writing and translating. I did not see much in the way of editing being possible. A much much superior approach, in my opinion would be to use Wordpress or Wikapaedia (or a clone) to allow a community of users to revise the writing and editing of the documentation.
    All in favor of having Wikapaedia as the documentation management system for FOSS say AYE!!!

    Aye (from Montreal)

    --
    Leslie Satenstein Montreal Quebec Canada
  168. Re:Read the source code by lsatenstein · · Score: 1

    I think several here have different expectations of what constitutes "good documentation". Being a Linux sysadmin, I work in FOSS day in, day out, and documentation is always available and clear.

    Without knowing, you've hit the nail with the hammer.

    Here is why FOSS docs are so nice to you, but proprietary ones are not: audience analysis.

    The people who create FOSS documentation are often either the developers themselves, or very early adopters who spend a lot of time with the developers. They have a technical mindset, and will write documentation in that way. You have a very technical mindset, and like me, will probably prefer a well-commented configuration example over a nicely formatted .pdf document with all possible options.

    Our local colleges and universities demand documentation in the source. Typically, doxygen is the tool. With doxygen, html, pdf and man documentation can be relatively easily prepared. And the reason it wins my support is that one documents the code while the information is fresh in the mind. Software updates are documented in place, and with one "make" program call,the new revised documentation is created.

    In large enterprises, things are different. That's where the professional technical writers come in (yes, that's a full-time job). These folks will come up with a target audience, secondary audience, initial outline for the documentation and (in their minds) well-written content and examples. Since this gets reviewed many times by people who all have an ego telling them that they must make at least some changes in order to show productivity to their bosses, the documentation ends up being a piece of crap. It may be correct, but it usually is a piece of crap.

    For example, let's take any routing vendor's documentation. You are looking to configure something as simple as an L3VPN. The easiest way to do this is by getting an example configuration and just change some IP addresses to match your own network, right? Well, the "professionals" think not. They will come up with this:

    Step 1: configure an IGP. For more information on how to configure an IGP, see chapter 12, section 3.

    Step 2: enable the appropriate interfaces for MPLS. For more information on how to enable interfaces for MPLS, see chapter 2, section 1.

    Step 3: create an LSP between the two PE nodes. For more information an how to configure LSPs, see chapter 2, section 10.

    Step 4: enable a signaling protocol such as BGP or LDP. For more information on how to configure BGP as an L3VPN signaling protocol, see chapter 10, section 9. For more information on how to configure (targeted) LDP as your L3VPN signaling protocol, see chapter 7, section 1.

    Step 5: configure the route-target: set route-target 12345:1. For more information on route-target configuration, see chapter 8, section 2.

    Step 6: configure the route-distinguisher: set route-distinguisher 12345:100. For more information on route-distinguisher configuration, see chapter 8, section 3.

    And that, my friend, is why commercial documentation sucks a monkey's ass.

    BRAVO. Also you forgot jargon and abbreviations without a glossary to describe what it is you mean by the "Gronk" function. The Gronk function, by the way is a fixed up fubar function.

    --
    Leslie Satenstein Montreal Quebec Canada
  169. Obvious solution by Urkki · · Score: 1

    Obvious solution to poor documentation: don't read it!
    .
    There's a lot of decent, good and even excellent documentation to read too, after all. Why would anybody read the bad documentation instead?

  170. FOSS Documentation by bmullan · · Score: 1

    I think today many people utilize either realtime chat/IRC etc or email lists or even facebook to share or exchange info on how to do things, solutions to bugs or misconfigurations etc. Look at YouTube and how immense the number of training & how-to video's are there now on anything from OpenStack to LXC.

  171. Re:Read the source code by Pino+Grigio · · Score: 1

    Yea, "neat little tricks" tend to be undocumented for a reason.

  172. Re:Read the source code by david_thornley · · Score: 1

    The little trick was control-hyphen to go back to where the cursor had been after a jump (such as "Go To Definition"). Quite useful

    I don't know how intended or official this behavior is, and the reason I don't know is that there is apparently no source of truth on what the VS editor is and is not supposed to do.

    --
    "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  173. Re:Read the source code by Anonymous Coward · · Score: 0

    Well I'm sorry to hear that, "As soon as I dip a toe into proprietary software, I'm met with a stubborn inability to communicate from the publisher." My experience has been much different.

    I've worked with numerous closed source systems. The majority have had good to excellent documentation. For one system the documentation they produced was excellent but sporadic; there were definite gaps in both time and function on the documentation front.

  174. Seriously? by Anonymous Coward · · Score: 0

    The answer is obvious and unlike non-FOSS it is doable.

    How about an Ask Slashdot, What to do with the sorry state of MS documentation?

    Oh yeah, the answer is nothing, suck it up MS fanboy.

  175. Re:Read the source code by Anonymous Coward · · Score: 0

    It is obviously intended. Poor documentation is what MS is all about. They would prefer that you pay them to learn that information.

    You should find a new job. Working for an MS shop is soul destroying.

  176. A few problems... by Spugglefink · · Score: 1

    As someone else already pointed out, doc writers for FOSS projects tend to be technical-minded early adopters who are either developers themselves, or who spend a lot of time with developers. That's how I got my own start, and it has come with the dual problems that my writing is too technical for Joe User on the one hand, and on the other, when you start documenting new software, you find a LOT of bugs. If you have any coding skills at all, it's faster to go fix the bugs than wait for someone else to do it, and that's how doc writers morph into developers morph into project managers. I haven't updated my documentation in almost 10 years, because only so many hats fit on my head at one time.

    As a project manager, the problem I've faced is that I have dozen of peoples who loves my project and woulds liking to help in some way to be part of the team. These generous peoples is wanting to help very muchly, but they isn't writing so good in English, because they isn't talking English as first language. Really interesting it is getting when collaborating are peoples from two very distinctive language background who makes error in strangely conflicting way too. Resulting is documentation need to be heavily edited, to the point of rewriting everything. Them peoples is nice, but they isn't no use writing nothing.

    It has been a really frustrating ride over the years. We could do better on documentation if I took the time to sit down and go through it all, but if I had that much time, there are so many more critical things to deal with first. What it all amounts to over the span of almost 15 years is a slow process of attrition and collapse where more people leave than join, and more and more unfinished work piles up everywhere.

    It is what it is. If you don't want to deal with all this, go spend $1,000 on some commercial stuff.