Don’t forget to buy Design, Code, Test, Repeat. It’s a fun, funny, and helpful read.
Recently, I’ve gotten to the point in my release cycle where I’m almost ready for Beta(!) on my IDE for uCLinux uboot, kernel, and application development, Fusion MMX. Building it has been a lot of fun and very educational as well. I’ve been able to find so many useful open-source utilities to make development easier.
Of course, that means that some documentation is in order. I’ve written plenty of documentation in the past, most recently for GTO, a Java application. For that product, I chose to use JavaHelp, which wasn’t difficult to learn or use, but it was a rather manual process of taking screen shots, trimming them, labeling them, etc. I couldn’t find a free (we’re a small company, so we like free) environment for creating this and I didn’t want to have to go through the manual process with all of the menus, dialogs, toolbars, and context menus for Fusion. I also didn’t want to have to learn the ins and outs of Microsoft’s help compiler environment if I didn’t have to. I just wanted to write the documentation, if possible, and let someone else take care of the busywork.
While I couldn’t find something free, I did find the next best thing: something that was so good and so inexpensive that it paid for itself – Dr. Explain. What I found there was an application that was simple to use, handled the details of the help environment, and made documentation incredibly easy. The one feature that literally paid for itself was the UI capture tool. Start the tool, then focus on a UI element (window, menu, toolbar, dialog) and click. Dr. Explain takes a screen shot of the element, then labels the individual items to be documented. Holy cow, what an easy way to do documentation. The creation of internal and external hyperlinks made cross-referencing a breeze.
Finally, I can export it to html, chm, or rtf for maximum flexibility. For my next revision of GTO (the java-based application), I’ll be trying to use Dr. Explain for that documentation, too. I don’t usually write product reviews, but when I run across something that I like this much, I want to share it with my fellow developers.