Why would you want to get published? Why take time out from doing real work to share your thoughts with others? After all, didn't we gladly leave writing behind when we got out of school?
When you share your experiences you play a part in a larger picture, leaving your mark on the world, and advancing your field. Since the software engineering field is still in its infancy, it needs a great deal of advancement. But you're not convinced yet to point your keyboard toward the task of writing words rather than code or test plans or some other real work, are you?
For me, it's easy; I love to write. But most computer professionals are notorious for hating to do documentation. So let me offer some more persuasion. One of the best ways to clarify your own thoughts is to package them in a way that others can understand. How often have you called over a colleague to get his help with a problem, only to solve the problem yourself in the course of describing it to him? Apply that same principle to the techniques that you use on the job. Write out a description of how you do something, and you'll understand it better yourself. You’ll find holes that you didn’t even know needed fixing.
Assuming you find a topic that's related to your work, you'll be providing documentation for your company that perhaps no one would otherwise have had the incentive to write. I published an experience paper about our quality improvement efforts once, and I ended up giving it out to all the candidates for a quality management position so they would understand the recent history of our efforts.
When you get published, you also get a nice addition to your résumé. Make sure your publications get cited in your performance review. When interviewing for a job, you can provide independently verifiable evidence of what you've accomplished, and you make the point that your accomplishments were important enough to share with the public. Getting published can also build your company's reputation—or your own reputation if you're an independent consultant. If your company shows up in the byline, your workplace is seen as promoting exciting things that are worthy of publishing.
So are you convinced that doing a little writing could be a good thing? Have you started to think of some of the things that you've done that people would like to read about? One of the easiest approaches to take is to write an experience paper, describing some unique approach you took and how well it worked. You'll need a passing knowledge of the state of the art—so you have some basis for believing your topic is unique—and you're better off if you reference a few other papers on a similar topic. You might choose to focus on a particular bit of technology instead of a broad experience paper.
Where to Begin
Let's explore the outlets where you might publish your writing. The most accessible medium is probably the Internet. You can post your ideas on Usenet, on a mailing list, or in a Web discussion forum. You can post your works on your own Web page or contribute them to an online E-zine. Some of the most prominent authors in our field will try out their ideas on the Internet before publishing them commercially. You're not likely to make any money by informally publishing your works on the Internet, but you are likely to get much more feedback than you would get with other media. If you're planning to publish your writing elsewhere, be careful that you don't post it so broadly on the Internet that it's already considered "published."
There are several other places that are good for getting your feet wet, or, rather, getting your writing hand warmed up. You can write letters to the editor or contribute articles to newsletters. Newsletters are published by the divisions and sections of the American Society for Quality, IEEE, user groups, and other organizations. You can also get published in newsletters put out by commercial tool vendors like Software Research, Inc., which accepts contributions for Testing Techniques Newsletter Online. This is all still pro-bono-for-the-good-of-the-industry stuff, but these are fairly easy outlets for getting the gratification of seeing your name in print.
Why not propose a paper for a conference? Experience papers are eagerly sought by conference organizers (and presenting a paper at a conference can give you a discount that can make the difference between fitting the conference into a tight training budget and having to stay home). Show how some approach to doing your job worked, or—often just as useful—didn't work (real stuff down in the trenches of doing business). Then tie that to the current literature, either enforcing that a recent trend is the right way to go (at least in your situation), or perhaps showing how some techniques don't work in all situations. You generally just have to submit a proposal a few pages long in order to see if your paper is accepted for a conference, though you have to be ready to hit the ground running when you get that acceptance letter! Don't be disappointed by a rejection. My first conference proposal was rejected. Probably only 25% or fewer proposals are accepted at the most popular conferences. Talk to the people who organize the conference, or people who have presented at conferences, and find out what kind of topics are getting accepted and how best you can market your writing. Maybe people want more detail than you initially were going to give, or maybe they want broader coverage of a topic and for improvement when conferences consider your proposal; either they accept it as-is, or they must reject it. So do some legwork to market your ideas as effectively as you can.
Making Money Now le's talk about earning
Now let's talk about earning some cash. Magazines usually use freelance writers for some or maybe even all of their content. Here also, it pays to do some legwork. Get in touch with someone who works for the magazine and let them know what topics you're interested in. Ask what their needs are. Read the magazine to see what the style is and what topics it covers. It's far better to mutually agree on an article than to do your writing "on spec" and then try to shop it around to several different magazines with varying needs and styles. If you stay current with what topics are coming up in the industry and really think about your experiences, you’re very likely to come up with a good topic for an article. And it’s exciting to know that it will be delivered to thousands of people! You won’t get rich, but you can earn a little pocket change.
I can't speak about book publishing from personal experience, although it seems that everyone I know is publishing one. I used to be unable to envision writing an entire book. But after getting published several times and having a few years of experience under my belt, I'm pretty confident that I can do it—when the opportunity and the right topic comes along. It's certainly a labor of love to publish a book about a topic as narrow as software testing; a broader topic might actually net enough money to pay you for all your efforts. But for the niche markets, you’re doing it to help your field, and perhaps to make a name for yourself as a consultant. Dealing with a book publisher can be monumentally frustrating, so study up on how to negotiate with publishers before you sign anything.
Why publish your work in only one place?If you negotiate carefully so that you keep your copyright, you can recycle your words. Granted, there are many situations where an editor isn’t interested in a work that has been previously published. But the best of the conference papers have been known to show up at more than one conference, or to get reprinted in a magazine. And in some cases you can republish your works yourself on your Web page, so when you say "I discussed that point in my 'Testing Habits of the Yellow-Bellied Warbler' article," you can also point people to your Web page for the text.
By the way, there's also the academic side of publishing, which can be a horse of an entirely different color. You should be aware that some journals, conferences, etc., follow the exacting rules of academia. Papers may be scrutinized much more carefully, and reviewers may ask you to make changes before your work is published. Trade journals may have published early reports on a topic long before it is formally covered in the academic press. If you're comfortable playing in this arena, go for it. It will be a much bigger feather in your cap than publishing in a trade journal or industry-oriented conference. But if you get frustrated in your attempts to get published, consider that you might be able to find other outlets with different priorities for getting new ideas out.
I've hinted at a few legal issues; if you go to your library, you'll find a shelf full of books about freelance writing. Read a few of them. Publishers typically will give you a boilerplate contract, which strongly favors the publisher's interests; don't be afraid to negotiate the contract. A reasonable publisher will be flexible. If you're dealing with a more informal outlet that doesn't use a contract, you may want to draft one yourself, or at least clear up a few legal points before you proceed. This isn't just legal mumbo-jumbo; it's a matter of defending your rights as an author before you unknowingly give them all away.
The common thread in all of the publishing outlets I mentioned is that you need to do some networking. Talk to people who have been successful in the area you're interested in—most likely they'd love to talk about their success! And talk to the insiders to find out what makes their publication tick. Keep the lines of communication open and take a longterm approach if necessary. I sent email to an editor once making some suggestions about topics I wanted to see in the magazine. Somewhat to my surprise, I ended up writing about those topics myself and contributing a regular column for the magazine. So do your networking and opportunities will find you.