April 19, 2010, 4:07 PM —
Recently, I have been spending my free time writing a book on Fedora 13.
Despite the fact that I have little to no free time, the book is coming along pretty well. I could attest this to my superior writing skills, but my mother always taught me not to lie.
In truth, the answer is more likely that using Linux on the desktop has become so much easier to do in the last few years, there simply isn't a big need to crank out massive page counts for consumer-level books. I've got a bunch of books under my belt over the years, and the skill level it takes to successfully implement Linux on the desktop has clearly gotten a lot easier in my experience.
I bring this up because I saw my friend Joe Brockmeier had just brought up the subject of documentation over on OStatic. In his column, Brockmeier laments that for all of the effort being poured into coding (his example is Google's rev of the Summer of Code), very little resources are being shifted to documentation for said code. And that, he concludes, is a real shame.
For my part, I agree with Brockmeier, especially when he's talking about the type of documentation end users don't usually see. The specifications and requirements documents that developers should have when they code so they know exactly what the program is supposed to do. You would be amazed how many developers ignore or shortcut this kind of documentation, preferring instead to fly by the seat of their pants to produce some awesome, gnarly code. And even if their code works, pity the next developer who comes along to update the application and has no clue what the first developer was thinking when they put the app together.
Hence, the need for developer documentation.
End users, of course, need documentation, too. Though I am starting to wonder if software companies are trying to push past the need for end-user documentation by making the platforms so easy to use they don't need to invest much in documentation. I call this mystical goal of documentation freedom the "iPhone point." Like it or not, the iPhone interface (and now the iPad) really doesn't need global documentation. After playing around with the interface a bit, most people get it. Those that don't can get a quick demo at the phone or Apple store. Really confused users can check online for a little more support.
In an ideal world, all software like this should be this easy to use. Not that I have any great love for the iPhone, but I have to admit that the interface is very simple to use. And this is not just true for Apple: the same holds true for the Android and Moblin interfaces (I haven't used MeeGo yet); they're straightforward and built with ease of use in mind. From what I have been able to glean from the early builds, ChromeOS will be the same way.
You will note the pattern: these are all mobile interfaces, built for devices that don't have mice or (usually) big keyboards. They're built to let the user see the Internet or whatever network they're connected to, and then get the heck out of the way.
The big platforms--Windows, OS X, and some versions of Linux--see this coming, and are making great strides to refine their respective user interfaces to something with which users won't have to struggle. On the Linux side, Canonical was investing a lot of effort into user interfaces and design a couple of years ago. To make Ubuntu more pretty? A side-benefit, but not the real reason.
Mark Shuttleworth and his team knew that to make Ubuntu a viable platform for the cloud, it would have to be as efficient for mobile users as possible. I would be willing to bet money that the new Bright theme was tested on netbooks and other mobile Internet devices, and the new color scheme and design was found to be the best fit on those devices.
Does this trend negate the need for end-user documentation? No, but it's going to shift the format. I think that as interfaces move towards the cloud, the need for books is going to plummet. Not because of need: no matter how easy platforms and applications are, there will always be people who need things spelled out for them in detail. But I think the very mobility of these devices will necessitate a format change. Even if I need it, would I lug a book around that's 10 times larger than the device I am using?
Books made of trees work for people sitting at desks who have the time to teach themselves something. If the user base becomes mobile, then so will the documentation. If the interface becomes less complicated, so will the documentation.
I believe we will really start to see a faster shift towards electronic formats. Which, in turn, will lead to different forms of documentation than the non-collaborative "author teaches, reader learns" model. With online documentation, things can become more collaborative, which eases the burden of a single content provider.
This is likely a long-term goal of application and operating system developers. Make the interface easy to use and build collaborative documents, and you will greatly reduce the time and energy put into docs. That may not be the best thing in the long run for end users, but given the historical loathing developers have for documenting anything, it's sure to make them happy.
Let's see if the end users like it.