It Just Works

As a technical writer, I often say that no one notices when the documentation is good, but everyone notices when it’s bad. The same can be said of data security. As you chug on day after day, uploading files, downloading files, copying files … everything “just works.” You don’t think about all of the things going on behind the scenes: firewalls, virus scanning, virus blocking, alerts about suspect files and suspect connections, servers going down, maintenance updates, security patches, and so on. At least, you hope you don’t have to think about those things. You expect your IT team to be on top of that. Yep, no one notices when all of that “just works,” but when it stops “just working,” EVERYONE notices.

At home, you don’t have an IT team. You need to be smarter to protect your own security. Even if you don’t do banking on your computer and all you do is Facebook and email, you still have to think about security. Most commonly, you’re going to have “harmless” malware that tracks your browsing habits, what you type into forms, and so on for the purpose of marketing. Other bad guys can use this information for identity theft. The worst-case scenario of course is that a sneaky virus will be installed on your computer that turns it into a “brick” that requires your neighbors’ son who lives in their basement to fix it for you. These sorts of viruses probably benefit computer manufacturers the most, because many people will just shove the old, bad computer in a closet and use that as an excuse to buy a new one.

So what can you do? The most important thing you can do is to install the regular Microsoft and Adobe updates/patches, which are often released for the sole purpose of fixing a security problem. And pay attention to manufacturer’s “End of Life” policies, which means after a certain point, they are no longer upgrading or patching that software, making it more attractive to hackers. Install a brand-name antivirus app on your computer and keep it updated. Make all of these updates (Microsoft, antivirus, etc.) automatic and occur during times that you don’t expect to be using your computer, such as while you’re asleep or at work.

If you are really uninformed regarding regular computer maintenance, then there are two things you can do: pay the money to have someone regularly clean up your computer for you, or buy an Apple computer, which is made for people who don’t know and don’t want to know how to maintain a computer properly. Actually, there are even more options these days for those whose only use for the computer is Facebook, email, picture sharing: some tablets, mobile phones, Chromebook, and so on are “locked down” so they are updated automatically.

You’ll still need a mobile antimalware app, though (such as Lookout). And you still need to cleanup temp files. Your computer needs a part of memory (RAM) and maybe hard drive space just to display all the interfaces and to run services in the background. If the hard drive and RAM are clogged with remnants of files that aren’t being used, it’s harder for the computer to run active apps. You can clean it up yourself if you know what to delete (cookies, web history) and what not to (system files). An app the IT guy I know showed me is called CCleaner. They have a free and a paid version that you can use to clean up temp files, cookies, web history, and so on.

Maintaining your computer is like maintaining your house or car. You can keep your computer running well for a long, long time if you regularly clean up your computer, install updates, and install protective apps. If you ignore it until there is a problem, it can be much more expensive.

Advertisements

End-User Collaboration and Feedback

For the products that I document, the help documentation is installed and/or available as WebHelp for every product and every customer. They don’t have to go online to find it; they just click in the product to open the Help. This makes the help topic the perfect place for a feedback form—on the same page where they were looking for or found the help they needed to use the product to its full potential. Why do I want a feedback form on every help topic? Enabling collaboration in Help allows users to contribute and share information. Their feedback would allow me to refine and improve the Help and product usability, and assist with sales/marketing efforts. Users’ shared comments improve the Help experience, and gives the user a sense of “ownership” of the Help content (which means they’ll use it more).

Getting Management Buy-In for Feedback

Managers are often loathe to spend money for a technical writer, let alone for user feedback. Explain to your manager the many benefits to user feedback. Not only can it improve the help itself, but also can serve as a marketing tool. (i.e., who is using our product help, and therefore, who is using our product?) Comments can be used in marketing materials (minus any identifiers like full name or company name).

This is from http://www.uxmatters.com/mt/archives/2010/04/user-generated-content-embracing-social-networking-to-deliver-more-engaging-technical-documentation.php:

Business Benefits and Risks of UGC for Technical Documentation

User-generated content can help businesses reap additional benefits. Reader commentary can be instrumental in identifying the concerns of users. Based on user feedback, we can modify content to suit the needs of our audience. Creating more effective technical documentation also reduces the cost of helpdesk support. At the same time, UGC can serve as a strong marketing tool. A product’s audience can best reflect its proper market position. Good testimonials that a product’s customers or users have provided can work wonders in increasing its user base—delivering on the promise of greater adoption.

Feedback Management

Certain websites exist for the sole purpose of feedback form management and tracking, with varying levels of complexity.

Adobe Forms Central allows you to design your own feedback form, and the responses are stored on their website. However, it’s not free if you want more than one form or more than 50 responses. Their “Plus” plan is $143.88 per year, which allows unlimited forms, with a max of 5,000 responses per form. You can view the form that I made (from their templates) here. Adobe provides a link to the survey that you can email, embed in a webpage, or even send via Twitter. In the administration pages, one page shows the comment and the respondent’s email address in a spreadsheet format. You can also export the responses to Excel. A Summary Report has charts and graphs of data gathered.

Survey Monkey is widely used and has free and paid levels starting at $204 per year. As with Adobe Forms, it involves linking to an external website.

I think Survey Monkey and Adobe Forms are more than what I need regarding Help usage, plus the jumping out to an external website with no tracking of which topic they were on when they decided to submit a comment is a problem.

MadCap Feedback integrates with MadCap Flare (competitor to RoboHelp) and works with their Feedback Server or MadCap Hosted Service. In addition to comments, it allows you see which search keywords were entered by users. From their user guide:

“Let’s say that many users are entering the search term “sofa.” Unfortunately, you have not used that word in your project, so users are unable to find the topics that they need. However, you have used a similar word, “couch.” Therefore, in the Synonyms Editor, you enter “couch” as a synonym for “sofa.” The next time a reader enters “sofa” as a search keyword, topics containing the word “couch” will be returned in the results.”

Of course, I can do something like this in RoboHelp, too—IF I know which words they are using and not finding what they need. MadCap Feedback can work with any WebHelp (not just Flare projects). This app would provide a more detailed view of how our customers use our software and the Help files. The advantage to MadCap Feedback is that it was developed for exactly this purpose. They have group and one-on-one training ($$) for installation and setup. But Feedback is not cheap: $2,499. (Their Hosted Service is a monthly charge.) I imagine this would be something to try after trying a free or low-cost method to determine if I really want to do this.

Self-created and self-managed form

The alternative to online forms/survey managers is to create my own form, manage the inflow of emails, generate reports, and create/manage the database myself. If we have a tool that we’re currently using that could be expanded for this purpose (and includes reporting) that would be even better.

The design of the form would depend on the information that we want to gather, such as:

  • Was the information easy to find?
  • Was the information clearly represented?
  • Did this information solve your problem?
  • What can we do to improve this information?
  • What were you searching for?
  • What search words did you use?
  • Overall, how would you rate this Help documentation?

Of course, that’s too many questions. At the very minimum, I want to a display a comment box and ask them to leave a comment. When they click Submit, it would send an email to a dedicated mailbox, not to my mailbox. I would add something like this, at the bottom of every help topic:

Feedback Form

I already have the text above at the bottom of every help topic, plus “Leave compliments or complaints regarding the help in the User Forum.” But I’ve never found anything in the User Forum specifically for the Help. I think allowing users to comment directly in the topic, versus linking to yet another web page, would encourage more users to provide feedback.

Do you ask for user feedback? If so, how do you do it? If not, why not?

Working with Programmers to Create Context-Sensitive Help

My main job, which I consider “real” technical writing, is creating the help that is installed with an application. Context-sensitive help (CSH) provides a better user experience than always opening an intro topic. That is, a user is trying to modify a site and isn’t sure what to type in a particular field, so he clicks Help. A help topic appears that describes exactly how to modify a site. That’s CSH; the topic appears based on the context in which the user clicked Help.

The developer/programmer can add “help hooks” and “help IDs” (code) into the code for the Help button. (He also has to add code to call the help—tell it which file to use for the help, what to display, blah, blah, blah, but I’m not a programmer.) So if the developer is creating a dialog box named New Site and adding a Help button, he might add a help hook named HIDD_NEW_SITE with an ID of 0x204FF*. When the developer is done coding, ready for QA to test the application, or the technical writer nags him that she needs the help hooks, he can export a file from his coding application with a .H, .HH, or .HM extension**. And with that, the developer’s contribution to the Help is complete–unless he made mistakes or forgot to add some help hooks. (Alternatively, the technical writer can define help hooks for each topic, create the .H, .HH, or .HM file, and send it to the developer to add to the code.)

When I’m writing new help topics or editing existing help topics, I install the latest build (in development) of the application on a virtual machine (VM) so I can write more intelligently about what it actually does when I click, right-click, and so on. In some ways, I’m doing “QA” on it and writing up bugs that I find, but I don’t do a formal QA. (We have smarter people than I to do that.) One of the things I do test for, however, is whether the help appears at all and, if so, if the topic is relevant (context-sensitive). I can tweak the CSH files to link a specific help hook to a different topic, if needed.

Often the name used for the help hook is not very intuitive (HIDD_AFTER_INSTALL7) , so I need to ask the developer which ID is assigned to which dialog box. First, I create a spreadsheet that lists the dialog box, the help hook, and the topic that I think should appear for that dialog box. (Remember, that the developer may not have ever seen the interface, just code and COM API interactions.) I then email the spreadsheet to the developer and ask him to fill in the blanks. Seems simple, right?

Sometimes a developer has no clue what I’m talking about, either because he’s never worked with CSH before, he didn’t read the email, or English is not his first language, and so he responds that the error is on my end. If this happens to you, use your “detail oriented” technical writing skills to verify that the following is true:

  • You have the correct help hooks file (.H, .HH, or .HM). On one project, we had 5 different HM files and I had no idea which one I was supposed to use, and neither did anyone else. (The most recent one? Not necessarily.) The fix for that is ask them to export a new one. If you already reference it in the help authoring tool, ask if they can name it the same, to make your life easier.
  • Each hook in the .H, .HH, or .HM file has “#define” and a space in front of it. Sometimes they don’t.
  • Your map file or alias file (the .ALI file) is formatted correctly and ALL of the correct hooks linked to relevant topics. (You don’t have to link every ID in the .H, .HH, or .HM file, just the ones that are assigned to Help buttons.)
  • The ALI and .H, .HH, or .HM file are properly referenced in the HHP file.

If you don’t edit the ALI file directly, but prefer to do it in RoboHelp, make sure RoboHelp still “sees” the hooks. When I copy and paste an updated version of the file into the project (overwriting the existing, same-named file), RoboHelp sometimes forgets it. I don’t know why. Of course, if this a new file, you have to import it–RoboHelp doesn’t know the file exists if you just paste it into the project. You must import it to add it to the project files.

After you’ve fixed your mistakes (or you’re positive you haven’t made any mistakes), generate the CHM again and paste into your VM with the latest build installed. (When you generate the help, you can view the log file to see if there are any errors that you can fix.) Test every Help button, using your spreadsheet as a reminder of which dialog boxes have Help buttons. You should test every button every time, because sometimes you break things unintentionally when you’re fixing other things! If you’ve decided everything is working on your end, ask/email the developer again, ask him to review your worksheet, and point out the exact help hook(s) that you believe are broken. (Developers are busy people and usually get paid a lot more than you do, so make it easy for him to scan the email to see what you’re asking him to do.)

Microsoft HTML Help Workshop (HHW.exe) is a utility to test that you have valid files. It’s an old app that Microsoft no longer updates, but it still does the job. In HHW, specify the CHM you want to test, then click Tools > HTMLHelp API. In the dialog box that appears, select HH_HELP_CONTEXT and then type in a map ID (decimal or hex works).  When you click OK, the topic that you want to appear for that map ID should appear. If the wrong one opens or nothing opens, you need to fix the .ALI file. If a message appears that says something like “HH_HELP_CONTEXT called without a [MAP] section” that means something is broken. (Duh.) You can decompile the CHM (in HTML Help Workshop) and see that there is, indeed, a [MAP] section, yet it doesn’t “see” it. Why not??

If you get that message, ensure that the .ALI and .H, .HH, or .HM are properly referenced in the .HHP file. Computers aren’t very smart—you make one mistake and they get confused! (One time I had to generate WebHelp, before the HHP file would update. I wasn’t about to manually add a bunch of files! I do merged helpsets, so I need a valid HHP for that.)

This is important to understand: if your CHM works in HTML Help Workshop, that does NOT mean that it works in the application! All it means is that the .ALI file and CHM are properly formatted and a topic opens when you provide the hook. Period. For example, you could have two of the help hooks reversed or wrong topics referenced, but the CHM will still “work” in HHW. The only way to be sure your CHM works in the application is to paste it into the installation folder (or wherever the existing CHM is stored), and then try it in the application. Your application will have to be closed to do this; otherwise, you’re trying to overwrite a file that is in use.  In my last experience with “broken” CSH, the developer had forgotten to add hooks to the dialog boxes that didn’t open the correct help. He kept insisting that the CHM worked for him. After three emails asking him to please test it in the application, not in HHW, he finally accepted that it was broken in his code.

Usually the application is coded such that if a user clicks a Help button and there is no help ID assigned to it, the default help topic (e.g., Intro) will appear. So when that happens in my testing, that’s a pretty good clue that either there is no help hook or I didn’t add it to the ALI file. Don’t let the developer intimidate you. You might be doing something wrong, but if all he tells you is that the problem isn’t in his code (rather then telling you specifically what is wrong with yours), ask for more information. He should be able to tell you, “When I click the Help button on the New Site dialog box, this ID is triggered, but the CHM is opening the Intro topic.” You can then verify that the ID is in your ALI file and linked to the topic that you want to open. (If he had looked at your spreadsheet, he would have seen which IDs you were using for each Help button.) Of course, if release is happening soon, opening the Intro topic is better than having no help at all!

*Help hooks in the app are in hexadecimal (0x204FF). Help authoring apps like RoboHelp list them in decimal. If you want to convert the hex number to decimal, open Windows Calculator (click Start, then type calc.exe), click View >Programmer, type the hex number, then click Decimal. The number is converted to decimal.

**In this article, I’m talking about Microsoft HTML Help (CHM). The basic process is similar, but in JavaHelp (JH), the map file is simply called a “map file”–imagine that!–and it’s formatted slightly differently. This is how I learned how to write JH: http://shop.oreilly.com/product/9781565927193.do. I highly recommend buying the book (because knowing how JH works will help you fix it when it doesn’t work!), but this page  gives you the general idea if you just need a refresher: http://oreilly.com/catalog/creatingjavahelp/chapter/ch05.html

My Standing Desk Project

I keep seeing blog articles for standing desks, so I’ve decided to throw mine out there.

I have made two attempts (so far) at making a standing desk. My first effort involved a wooden bench, which I made out of 1″x10″ pine shelving, and a laptop desk like you would use while sitting in bed. The laptop desk was not wide enough for my keyboard and mouse pad, and offered no space at all for resting my hand or documents.

Standing Desk v1.0

So I got rid of the laptop desk, and made the bench short enough to comfortably type and mouse on it. I found two mismatched monitor stands and put my monitors on them. The monitors are extended as high as they go and still aren’t tall enough.

Standing Desk v2.0

I put felt on the bottom of the legs to prevent scratching the cubicle desk, and I put contact paper, like you put in your cupboards, on top to prevent the keyboard from sliding off. I have my mouse pad on there also.

My biggest constraint is that I can’t alter the existing desk, which is built in to my cubicle. This was my process:

  1. The first step in designing my desk was to measure the distance from my elbow to the desk. That told me how high my desk had to be for good ergonomics. (Your forearm should be parallel to the floor when you’re typing.) My first effort was too high, because I didn’t take into account the thickness of the keyboard. So in my case, the height of the standing desk had to be the distance from my elbow to my cubicle desk, minus the thickness of the keyboard.
  2. Next, I had to decide how wide to make the desk. At first I was thinking it only needed to be as wide as my keyboard and mouse. But the laptop desk showed me that I needed room to the right of the mouse if I wanted to rest my hand, and I needed to room to the left of the keyboard for the same reason, and for documents. I also had originally planned to put both of my monitors on it (as shown in Standing Desk v1.0), so I measured the total width of them when they are side by side, which turned out to be plenty of room for the keyboard, mouse, both arms, and documents.
  3. And finally, I needed to decide how deep (from the front of the desk to the back) to make it. As I said, I wanted to put my monitors on it, too, but I have a couple of monitor stands I scrounged in the office, so they are working OK for now. The current depth is only slightly more than the depth of the keyboard.

The current setup works OK as is, but isn’t ideal. When I’m sitting (and the monitors are adjusted as low as they go), I’m looking up at the monitors, and when I’m standing (and the monitors are adjusted as high as they go), I’m looking down at the monitors. That’s not good ergonomics and definitely puts a strain on my neck and shoulders. When you’ve spent most of your career sitting at a desk, you have to work up to standing all day, so I have to set up and break down the desk often, which is a bit of an annoyance.

For the setup to be perfect, I need:

  • a drafting chair that can I can sit on at the same height as when I’m standing, so I can continue to work without setting up/breaking down the desk or adjusting the monitors
  • a taller stand for the monitors so that the top of the monitor is at eye level when I’m standing

My plan is to search Goodwill and other such stores to find a 30″ x 30″ end table. Then I can cut off the legs to the desired height.

If/when I build Standing Desk v3.0, I’ll let you know how it goes.

“This product is awful” usually means you can’t figure out how to use it

Documentation not only needs to educate your customers and provide on-the-spot troubleshooting assistance, but also can be used as a sales tool and a revenue generator. I’ve never been a fan of putting marketing-speak in technical documentation—that’s not what I mean by “sales tool.” What I’m saying is that providing good documentation allows prospective customers to more accurately ascertain whether your product meets their needs. With up-to-date online documentation, a prospective customer can quickly find the information he needs on his own. If your documentation doesn’t provide enough information, potential customers will find a vendor who does. A thoroughly documented product also gives the impression that the product is easier to use than your competitor’s, whose product documentation was written one Sunday morning by a developer needing to meet a release date. Good documentation before the sale gives the customer faith that the documentation after the sale will be as good. Companies that are consistently the winners in their industry care about educating their customers and prospective customers. Failure to properly document your product creates an opening for your competitor to capture that customer.

When someone says “this product is awful,” what they usually mean is that they can’t figure out how to use it. If they attempt to use poorly written documentation to figure it out, they are even more convinced that the product is bad. Good documentation results in happier, loyal customers and reduced customer support costs; customer support can spend more time providing higher value service and less time “hand holding” capable customers. Sure, good documentation can be expensive; but according to Forrester, the average call center call can cost a business as much as $50 per call. For technical issues, costs per support call can be as much as $150 per call. If customers can use the documentation or an online forum to solve their problems, the average cost is usually less than a dollar. In fact, Forrester’s research indicates that the average is about 10 cents per customer.

Most companies gather statistics on how many support calls are generated in a day. Based on the high volume of calls, they assume that the documentation is not being used. They fail to note how much customer support uses the documentation to help the customer. A large percentage of customers would rather call support, ask a specific question, and be told exactly what to do to fix their problem. This type of customer will never use the documentation unless they have to pay for phone support. Online help that allows the customer to provide feedback can provide statistics regarding not only how many people actually read that particular help topic, but also can tell you whether customers think the information is useful or a waste of their time. (Microsoft Support is a good example of this.) Product managers can use that feedback to improve the product and the documentation.

Some help documentation tools and formats allow for user feedback forms (“Web 2.0”), but having the ability to type comments into a form on a help topic is not enough. You also need a connection to a server that can store the feedback. With the right software, you can also view and print reports of which topics are used most often and what the comments are, which can tell product managers which areas of their application might need improvement to make it easier for users to understand.

Even though the products that I document use in-application help, I also provide online, web-based help. In that help, I could easily create a web form in which anyone who visits the topic could rate the topic and add comments that could improve the topic. Their comments would be visible to other users of the topic and, most importantly, to me. I could use their comments to improve the topic and the product manager could use their comments to improve the product. However, I don’t have the application that I need to manage the comments, store the comments, or report on the comments. Many companies won’t allow you to use a product that has a user feedback system or want to spend time creating their own automated user feedback system. So the best you can hope for is a user forum or a knowledgebase tool that allows user feedback, but that’s a manual system, doesn’t provide for reporting, and doesn’t tell you whether your help documentation is helpful or confusing.

One day, “Web 2.0” help with be the norm. For now, just keep plugging away at your help and hope that the feedback you do receive helps you improve your documentation.

 


Can’t Download Windows Updates

Keeping your computer’s operating system up to date is important to keep it secure and healthy. Microsoft frequently releases software patches that “patch” holes found in their software. Without these updates, you are leaving your computer open to hackers and viruses. However, if your Internet Security settings are set for highest security, Internet Explorer could be blocking your computer from being able to download those important Windows updates!

I work at a company that makes software. As new versions of the software are created—but before it’s released to the public—I have to install our applications on a “virtual image” and use them so that I can write about what has changed since the last time I used it. A version can have numerous builds before it completely passes quality testing and is good for release. Often there are minor changes that only a regular user—in this case, me—would have noticed. But before I install our software, I have to make sure the OS that I’m installing it on has all of the latest patches—and Microsoft releases new patches pretty much every week.

The virtual image that I use shares an IP address with my desktop, but the image cannot usually connect to the Internet, for security reasons. However, when I download patches, I have to connect the virtual image to the Internet. Not long ago, after an OS update, I was unable to download any more updates using Windows Update. Search after search turned up no help for why my Microsoft Windows image using Microsoft’s browser could not connect to microsoft.com and download its updates! One of the previous updates did something to Internet Explorer’s Internet security options. As usual, making it more secure added more inconvenience. But I eventually figured it out:

To enable Internet Explorer to download updates from Microsoft.com*

  1. Open Internet Explorer, then click Tools > Internet Options.
  2. Click the Security tab.
  3. In the Select a zone pane, click Trusted sites.
  4. In the Trusted sites dialog box, clear the Require server verification check box.
  5. In the Add this website to the zone box, type http://download.microsoft.com, then click Add.
  6. Click Close to close the Trusted sites dialog box.
  7. Click OK to close the Internet Options dialog box.
  8. Click Tools > Windows Update to restart Windows Update.

If that was your only issue, you should now be able to connect to Microsoft and download the necessary updates. (But it’s never just one issue, is it?)

*The steps may be different on your computer, depending on your operating system and Internet Explorer version, but the idea is the same: add download.microsoft.com to the Trusted sites list.

How a Technical Writer is Different than a “Normal” Writer

How is a technical writer different from a “regular” writer or an administrative assistant? I’m rarely asked this question, but I know people think it by how they act toward what I do and how they treat non-technical writers and assistants, whom they assume can also do what I do. So I thought an explanation might be necessary. “Technical Writer” is not in the career path of an administrative assistant. They are two completely different careers. (However, I did work briefly as a “Technical Assistant” while in college. I taught a professor how to upload and maintain her online journal. She paid me with her grant money.)

There are numerous resources on the web that explain what a technical writer does. This one will give you a general idea of what I do: http://en.wikipedia.org/wiki/Technical_writer. The Bureau of Labor Statistics Occupational Outlook Handbook also has a detailed description of what technical writers do, but doesn’t really explain the “technical” part of the job title very well. The general description is “technical writers must be able to understand complex information and communicate the information to people with diverse professional backgrounds.” If that was all you read or knew about technical writing, you might think that anyone who can write can be a technical writer. You would be wrong. If you are talking about “secretaries” documenting complex software and hardware equipment, you would be very wrong.

I’ve worked in many different technical industries as both a technical writer and as an electronic technician. Therefore, I take offense when a company hires someone as a technical writer who, while perfectly capable of writing well, has no skill whatsoever that could be considered technical. I’ve worked with many a “technical writer” who was not at all technical—and some who could barely write. Fortunately, most people who actually want to be writers have a desire to learn the rules of writing formal documentation. However, many of them learned to write academic papers, and that is often a very different audience than those who read technical papers.

People who have resorted to reading the “help” available with the software or hardware product that they’re using are already frustrated with the product, have a specific task or question in mind, and want to “get in and get out” of the help and move on. They don’t want to read your flowery prose full of descriptive adjectives and they don’t want to parse your 20-word sentences full of multisyllabic words to figure out what the heck you’re trying to say. (Your professor isn’t reading your essays anymore, so there is no need to impress her.) All the user wants to know is “click here to do that,” and sometimes, “why should I click there?”

When I document a software product, in addition to reading the requirements and the functional description (written by a product manager or engineer), I have to actually use the product the way a user would. That means I have to install it. I also have to install, update, and maintain virtual images—sort of an operating system within an operating system. For example, before I install my company’s software that is being developed, I need to install an “image” of Windows 2008 on my desktop, and it has to be updated, patched, configured, and so on. That way, if the software product I’m installing messes something up, I can reset the image rather than rebuild my whole computer. If I had to ask an engineer to install the software for me every time they released a new build, I wouldn’t have the job for long. If I were documenting how to install a piece of hardware, how to align a circuit board, how to cable up a bunch of cabinets, and so on, it’s much easier to write about it—and more accurate—if I’ve actually done it.

The software that I document at my current job is used to transfer files all around the world, so I also need to know about networking, LANs, WANs, TCP/IP, SFTP, which ports are the defaults, what is “localhost,” etc. I’ve taken classes in Windows administration and network administration, and I have an A+ Certification for both hardware and software. I didn’t “need” that to do my job, but it certainly makes it easier and lowers the learning curve when new features come out. Technical aptitude, if not the specific knowledge, is one of the important traits a technical writer must have.

One thing I love about my job is that I’m always learning new things. As new features are added to the product (e.g., support of IPv6, CAC cards, AS2), I have to read what the product manager has documented, and do my own research so that I can understand it. You *can* try to edit what the subject matter experts (SME) give you by identifying the nouns, verbs, and so on, but unless you really understand the subject, you could make it more confusing to the user. You can always send it back to the SME for review after your edits, but you can save yourself and the SME time if you make an effort to research and understand the subject matter.

When I worked at a bank, my job was to provide procedures to the telephone bankers for how to use their software—software to which the writers were not provided access! So based on the reckoning of my fellow technical writers who used to be telephone bankers (not writers, technical or otherwise) or current telephone bankers, or managers (who may or may not have used the product at some time in the past), I was supposed to write procedures for the telephone bankers to use when on the phone with customers. Does that make sense? The telephone bankers for whom we were writing the procedures were supposed to be my SMEs! It would have been super easy for the IT folks to install a virtual image on our computers or in a networked location, install Siebel and other banker tools on it with dummy data, and let us click and double-click our brains out so we could understand what we were writing about. But that was considered 1) a security risk (even with dummy data) and 2) over our heads. So they considered us too stupid to understand the software that we were supposed to document!

Why would they think that? Not only because they didn’t understand how technical writing works, but also because most of the people they hired as technical writers were neither technical nor writers—they got a job at the bank in high school, had worked there ever since, and got the technical writing job because they had banking experience and seniority. A few of them could write, but none were tested in any way to determine if they could write before they got the job. One of the managers told me that these former bankers had “tribal knowledge” that was important to understanding the procedures. I can teach you proper banking procedures, which are pretty black and white. I can teach you rules of grammar, sentence structure, and how to write a proper procedure. I can’t teach you all of the little nuances of applying those rules that become instinctive after writing in your job for a long time. I can’t teach you how to think critically, how to troubleshoot software issues, and all of the little nuances of technical work that I’ve learned by doing it over and over again in my career.

Some people have a technical mindset and some just don’t, just as some people are good at customer service, which I’m not. Before hiring a technical writer, give them a basic writing/grammar test AND a test of their technical skills. There are many, many writing and grammar tests available online for free. If you already have a technical writer in house, I’m sure she’d love to write a test for you! The technical skills test doesn’t have to be complex. There are many resources online, both free and not so free. I’ve taken tests that are directly related to what I would need to know on the job for which I was applying. Any of your engineers can come up with one—but please let your technical writer edit it!