Discussion Locked

Real Problems for Documentation Writers

0 helpful
4 replies
Closed to new repliesThis discussion is closed. It stays readable, but it takes no new replies.

I am a budding user interface designer and my biggest hurdle creating documentation (with companies I have worked for) is technical people. Scott's recent article's question: "Do you usually task your developers with creating documentation, or do you bring in technical writers?" is the wrong question. Now understand, I read Scott's articles, and appreciate his insight very much, and usually agree with his answers to the many vagaries of corporate IT problems. So what follows are the observations of a friend, and loyal reader.

To cast this part of the the question in this way ("Do you usually task your developers with creating documentation, or do you bring in technical writers?") reveals the entire problem with typically poor software documentation, and also, with poor interface designs. The problem with the question is that it assumes two different kinds of technical people: either the answer should be that technical developers will write the documentation or that technical writers will. The common problem with both statements is the word "technical." Scott is essentially asking "Which of the two techies will solve the problem for you?" The problem is that technical people cannot solve an instructional writing problem. One would expect that technical writers have the skills to solve this problem (after all, they are "writers," right?), but they most often cannot do so, for two reasons.

1) Technical writers are usually techy-types first, writers second. Personnel departments hire them not on their abilities to teach or write well, but as technical people first and foremost. 2) Technical writers usually think of their writing abilities as secondary attributes--the really neat stuff of their jobs is figuring out all the good (technical) stuff. In fact, I would say most of them think of their abilities to understand technology as the primary goal of their job and personal interests. Writing abilities are made subservient to this primary goal. Thus, technical writers can readily understand the workings of software, but rarely understand the workings of an interface design on the non-technical human mind.

This is important--technical writers are really describing (writing about) interface connections: either the user interface or a lower-level interface (such as function calls within a piece of program code or machine language communication between software and hardware). But the problem is that technical writers are not trained either to teach or describe difficult ideas to the non-technical human mind--they have instead been trained in mathematics and other technical subjects: mostly to solve problems, not teach. It is like hiring a well-spoken (and well-credentialed) car mechanic to teach driving. Bad idea! O.K., so I may learn about the four cycles of a typical car engine (Intake, Compression, Power and Exhaust): but I don't try to be aware of where the pistons are in these cycles while the engine is running in order to be a better driver. In fact, though I do know much about the inner workings of an engine (I grew up in the Detroit area), I rarely (if ever) think about them while driving. My destination, and comfort-level driving the car are uppermost in my mind--as well as spotting and avoiding the occasional bad driver in order to avoid a wreck.

The real problem here is that technical people, developers and technical writers, are not usually concerned with the "destination," but the inner workings of the "machine" being developed. However, the users of the software are interested primarily in the destination (what they want to use the software for), and not the inner workings of the software machine that is being designed to "get them where they want to go--as quickly and comfortably as possible." Essentially, non-technical people want the machine to virtually disappear into the activities of their daily tasks, while technical people want to showcase the machine and ignore, as much as possible, the daily tasks that machine is supposed to perform. It takes a different kind of person than either a developer or a technical writer to solve these issues.

It takes someone who can learn complex ideas and translate them into language easy enough for almost anyone to understand. It doesn't take teachers, for teachers have been taught to emphasize, not the basics of a given subject, but the techniques of teaching. The word "technique" here is just another word for emphasizing the technical. But for pragmatic reasons, companies sometimes hire teachers, or people who have teaching degrees, to help with documentation. This oftentimes has the same result as hiring technical writers: teachers who love teaching often love the mechanics of teaching more than the subject matter they teach. That was the problem with the bad Math, Science or English teacher we have all occasionally had. They may have known their subjects very well, but they loved the teaching part of their job more than seeing their students grasp the fun intricacies of the subject at hand. All our really great teachers accomplished both.

What is needed (and I have never found a company who yet does this) is a creative person. That's right--a creative writer. Although Scott also said "many application development managers attempt to improve the quality of their software documentation by employing technical writers or business analysts. This presents the opposite problem: Technical writers and business analysts usually have limited technical skills." This is rarely true of Technical writers, but it is true of writers who attempt technical documentation. These people are really writers first--yet another type of techy: one who enjoys, more than most things, the mechanics of writing. But what Scott really meant was not technical people, but this kind of writer--one who really understands the practice of writing better than technical subject matter.

I am a creative writer who was forced into learning computer technology in the mid 1980s in various jobs I had. Over the years, I became an instructor and support technician. I finally realized, a few years ago, from all this experience, that the main problems people have with computers are twofold: the interfaces are difficult to understand (they are often too technical) and they are often unstable (buggy). Good documentation does not solve either problem: good user and low-level interface design does. The problem posed in Scott's article: "What Makes Software Documentation Good" misses the point. If the design of the interfaces are good, the documentation will be easy to make. But in order to see what is possible, one has to use a person who is expert in seeing the possible and creating it. I found I had a lot of computer responsibilities dumped on me because of my lack of seniority, and I used my creativity to adapt to this situation. I learned the inner-workings of computer software and hardware well and then used my (creative) writing and teaching skills to create easy to use documentation, in words and with metaphors that non-technical people could understand. I became, as all artists can, technical, but without losing sight of my creativity, or the necessity to use my creative writing skills as a means of teaching the software to others.

It's like this--most of us have worked to develop relational databases in our careers. We created tables, wrote programs for calculating, sorting and reporting, etc. then built an interface. Do you remember the first time you realized that you had to recreate user interface, because it wasn't working as well as you had imagined it? Do you remember this leading to your redesigning the table structure? I do! After four of five times doing this, I started to begin all projects with the user interface. Once I got that design down on paper, it helped to create better (and therefore, faster and more stable) database tables, which resulted in more stable programs. The user interface, if intuitive (and therefore, efficient for the user), gave me all kinds of hints for how to design the architecture of the database--things I had often missed before in typical "missing the forest for the trees" fashion.

The problem with needing documentation is really that there is a significant problem with the interface--either for the end-user or an intermediary developer or programmer--or other technician trying to solve some problem. The real issue here is one of design--a subject all artists understand and use well, but which technical people, as a rule, do not. Technical people understand how to do things well, creative people understand how to make things well--and useable. The proof in the pudding is Games. Games are often just as complicated and system-intensive as real-life programs, and often have substantial documentation. The difference is that it takes users seconds to minutes to figure out how to make games work, but hours to figure out a new database program. In games, the user-interface is intuitive and the low-level interfaces are object-oriented and streamlined. And the marketing of games is more competitive than real-life programs too: game makers are obligated to meet rigid and fast-paced development deadlines and keep the cost of their products in reach of most adolescents or their middle-class parents. Finally, the documentation that comes with games is being reduced in size every year--because the interfaces are becomming intuitive.

But the best proof of my argument that comes from games is that I can easily figure out what to do so well, so quickly and so enjoyably, that when I play most games, I am unaware of the computer or the game's user interface--I simply play. The same thing goes for real-life programs I intuitively use. I focus on the work, not the machine or the software. If I can forget about these two things operating in the background, there is little need of documentation.

But if I need to have documentation, then creating an intuitive user interface, based on the user's mental task-model, will provided the best stepping-stone to making the documentation--just as beginning with the user interface makes it easier to create stable program code and relational tables. Unfortunately, adding creative people to design teams seems too risky for Personnel departments. But oh, what profits cold be made if they were!

If you doubt my claims here, I can put my money where my mouth is. I would be willing to send you a before-and-after interface design I created that shows the pathetic module redesigned into an intuitive, user-based, task oriented interface. The design was for a veterinary practice software firm: I redesigned a two-dialog animal boarding module interface (with no easy return to the main dialog, and several difficult sub-dialogs) into an easy-to-understand and use single dialog with four tabs. Just tell me what your limits are regarding attachment file size and I will be glad to show it to you. Remember, all this came from a guy who never took a computer science course during his college years, but who was extremely creative (as a writer among other things). I submit that if you all begin to hire creative people like me, we would make you more money in your companies than you could wildly dream.

But you would have to get around your Personnel department's prejudices first.

(Mr.) Erin Avery

4 replies

by snoopdoug

I agree with much of what you say (I'm not sure if you are the budding genius you claim, but I'll give you the benefit of the doubt), but your claim that games are intuitive is a crock. They may be intuitive to someone who plays them all of the time, but sure as heck aren't for the infrequent gamer (moi).

Whenever I visit my brother (about twice a year on average), he and his two teenage sons beat the crap out of me in Halo or whatever shoot-em-up game they have. They laugh themselves silly when I play Madden Football, as often I don't even know which player my controller is controlling. Familiarity leads to expertise, whether in gaming, programming (I use Xemacs, try that interface if you want to feel clutzy), or what have you.

I think you have hit the nail on the head with your analysis of a poor UI leading to crappy docs. It's like "putting lipstick on a pig". It's still pig, right?

Another common failing of software is the tendency to attempt document their way out of a bug or other software issue. I think you obtusely referred to this in your blurb, but it's extremely common in my doc realm, developer docs. It doesn't solve the problem, but it's the cover your a** attitued that stinks. It gives the company an out as they can claim "it's in the docs" or as I learned 20 years ago when I first worked on the Unix Programmer's Manual, RTFM.

So how do we fix the doc problem? There is no easy answer. First, as you propose, you start with a good UI. However, that is window dressing compared to a poor architecture/design of the underlying software, so we need to also stress the infrastructure.

So let's assume we have a decent design, a well thought out UI, and a good spec (I don't recall seeing that anywhere in your spiel, so I'm throwing it in now).

You say companies should hire creative writers and not technical writers. I don't see why those are mutually exclusive, but I'll pass on that argument for now. Regardless of the writer, projects should also consider user testing as part of the release cycle. When I was at Intel we would snarf a number of first year CS students from Portland State, give them the compiler software and docs, give them some simple tasks (get this buggy program to compile and run, and minimize the run-time size, etc.), and sit back and watch. It's amazing what you learn that you forgot when a smart, but ignorant, user uses your software and docs.

And don't forget about the bane of all technical writers--a decent review. We often ask developer to review the docs at exactly the wrong time, when they are frantically fixing the last serious bugs before the release. How do we ameliorate this problem? The best solution I've found is to dole out the documenation review in easily digestible bites, as I finish them.

Other doc issues? How about the tendency of companies to see docs as a cost, not as the spearhead to customer satisfaction. Poor docs are an indication to the user that the company does not put enough effort into their product or cannot properly manage their projects. Both are warning signs that suggest to the user they might find better software elsewhere.

Developing good documentation is hard work and costly, but cheap compared to the potential lost revenue when users discover competing software with stronger design, UI, and docs.

doug

by bucky kaufman (mcsd)

re:
think you have hit the nail on the head with your analysis of a poor UI leading to crappy docs. It's like "putting lipstick on a pig". It's still pig, right?

Another common failing of software is the tendency to attempt document their way out of a bug or other software issue
----- ----- ----- ----- ----- -----

Man, did you evern hit that one on the head! Right now I'm documenting an internally created FoxPro app that quite simply, does not work.

It was created over the course of a year, without any documented design goals. When I asked "What business processes does it support" none of the I.T. folks could give me a direct, concise answer. Even the primary developer, whom the rest refer to as the "sole" developer, couldn't do it.

So instead of documenting the app, I'm reverse-engineering it. I'm getting the Project Administrator (they have no Project Manager) to give me about 100 or so hours of various people's time to get from them - user requirements, design goals, data flow, etc.

AFTER all that, I'll spend another hundred hours getting the developer to show me how he implemented these requirements, or IF he did. Meanwhile, I KNOW the developer is making hot-fixes.

While I appreciate all the billable hours, it would be a lot cooler if I could document their successes, insted of their failures.

I know how George Bush's P.R. guys must feel - always trying to put a positive spin on a miserable failure.

Proper
Prior
Planning
Prevents
Poor
Performance
Prior to
Peak
Panic
Periods

by bminter606

Hello!

I sincerely take offense to several statements in this post by Mr. Erin Avery, especially the idea that Technical Writers are techies first and writers second, that they take more pride in figuring out the system/process than in documenting it accurately for end user use (I am boiling his theory down to an incorrect statement).

Maybe I am the exception to Mr. Avery's statement, but I am an highly experienced, accomplished Tech Writer who not only figures out the system/process I'm hired to document with little or no assistance from my clients, but I seriously analyze it, taking it apart into all the different components. I try to think like the end user in my analysis process. Then I create a user-friendly and tested document to enable an inexperienced (or experienced) end user to use the system/process to perform their job.

Maybe I am the exception to the rule, but you are indeed incorrect in your assumptions about a Tech Writer's capabilities as far as I'm concerned.

Broad statements like...

The real problem here is that technical people, developers and technical writers, are not usually concerned with the "destination," but the inner workings of the "machine" being developed.

... really bother me and are indeed WRONG dealing with me and a lot of other Tech Writers in the field!!!!!

If someone needs a good Technical Writer who actually knows how to produce user-friendly instructional documentation, and even teach the users, feel free to contact me. I'll be finished my current contract project February 2005.

This is the 2nd time I've worked for this particular client and part of this job is wearing my "Tech Writer" hat to convert the client's "home-made" end user documentation into standardized, clean, clear and concise documentation they will use for the upgrade of their software (J.D. Edwards OneWorld Xe to PeopleSoft EnterpriseOne - both windows and web interfaces). The documentation will be available for the printed User Manuals and also in the PSEO documentation window as HTML files, either in whole or as each separate part of the particular task the end user is running.

I'm also conducting training classes on the new interfaces to ALL end users right before the client goes "live" with the upgrade. I've already conducted classes demonstrating the upgraded product to the Functional Owners and Technical Reps and it went over very well.

In general, one should be VERY careful making incorrect broad statements!

Beverly Minter, BMP Enterprises

by dwightc

I must disagree with the idea that Tech Writers, or at least good ones, tend toward the technical while ignoring the creative. While it certainly depends on the environment, most writers would likely find themselves unemployed if they couldn't come up with decent material, regardless of how good (or bad) a technical person they might be. Yes, the typical technical document from staff is just that - technical - but I am tasked with making it understandable as well (not to mention correcting spelling, grammatical and, yes, even technical errors). Technical documents need to be understood by more than the person that originally composed them.

I've known "technical" writers that have no technical backgrounds whatsoever, and some even seem to lack the creative juices Mr. Avery refers to. Some muddle through and make passable documents and some amaze me in that they still have jobs... Be that as it may, those that originally had more technically oriented jobs might become writers for a variety of reasons. Two that come to mind are that they found out in some way that they had best do something other than developing (I think you know what I mean), or perhaps they, or a colleague, discovered they have a knack for writing. Those in the former category may or may not make it, while those in the latter might just become skilled writers and editors.

My personal feeling is that a true Tech Writer must be skilled in both arenas. A person with little grasp of the technical side of things must rely on others to supply documents, which they then merely edit. If they do not understand what it is they are working with, the resultant material is likely to be lacking in many respects. On the other hand, a person that is very technical but can't write well is liable to create material that nobody will want to read, let alone documentation that is understandable.

It takes balance - if you don't have the requisite skills and abilities for both the technical and the creative, you are not going to be a good Tech Writer. Unfortunately, at least from my perspective, salary levels don't tend to match the skill levels needed of good tech writers, not to mention the need to have knowledge of a wide range of tools needed for publishing in all matter of media.

Whether writing a document aimed at technical staff or one for a neophyte user that has trouble understanding what "any key" means, a Tech Writer needs to have the technical skills to understand what they are writing about and the creative skills needed to put those ideas into documentation that will be used and understood.

A really good writer might even make that documentation something people will want to read.

By the way, Mr. Avery, I have been a developer, an analyst, a DBA, an instructor and a manager - all of which I feel has made me a better writer. I do not feel this experience and being creative are mutually exclusive - indeed, a good developer must also be creative - but you may disagree. While I still enjoy those other tasks and am rather good at them (if I do say so myself), I enjoy writing very much and hope to continue doing so.

This discussion is closed to new replies.