Review of XMLmind XML Editor 3.5
Click a link below to jump to a particular section; click any "
Talk to writers about structured authoring and you'll get a variety of responses ranging from "Where do I sign up?" to "You're out of your mind!" For those adventurous souls who thrive on the bleeding edge, the work associated with getting started in structured authoring is all part of the fun. For the rest of us, it's easy find ourselves adrift in a befuddling alphabet soup of acronyms - XML, CSS, XSLT, XPath, XPointer, etc. Even with standards such as the venerable DocBook and newcomer DITA to guide the way, many writers unfamiliar with the practice of structured authoring are reluctant to approach this methodology because of its daunting learning curve.
Until recently, there were few inexpensive and easy-to-use tools to help you make the move to structure. Most XML editors were oriented toward programmers working with data, rather than toward authors working with narrative, and the few editors that focused on producing high-quality text output came with an equally high-price. After settling on editor, you faced the daunting prospect of installing and configuring a seemingly endless series of applications, including XML parsers, XSLT engines, XSL-FO processors, and others; all before actually writing one sentence. If, after much trial-and-error, you actually succeeded in building this complex "toolchain," you were still left to figure out how to link them together to generate useful output. With so many of these tools of the dreaded command-line variety, many writers gave up before ever really starting.
Figure 1: XML Publishing Toolchain
This scenario certainly reflects my earliest experiences with structured authoring and XML, as there were several occasions where I was tempted to give up, open up my copy of Microsoft Word, and leave the work to the "markup geeks." Fortunately, I kept at it, but given the low degree of acceptance for XML authoring among user assistance professionals, I remain in the minority. A look at the past several WritersUA Skills and Technologies Surveys support this assertion, as structured authoring, or any of its specific standards or technologies, is nowhere to be found among the skills listed among the survey responses. Undoubtedly, many smart and curious writers would have otherwise embraced structured authoring if not for the pain associated with configuring and using the tools.
Lately, things are getting easier, and many of the newest structured authoring tools take much of the complexity out of setting up the authoring environment. Some even provide a word processor-like interface that deemphasizes markup, and enables writers to concentrate on content. XMLmind XML Editor (or XXE, as it is also known) is one stellar example of this new breed of authoring tool. Developed by Pixware, a small France-based software company, XMLmind is an affordable and easy-to-use solution that eases the pain of moving to structured authoring. After a few hours of working with XXE, "easy," "high-quality," and "affordable" are only a few of the positive adjectives you'll use to describe this excellent application. Using the free XXE Standard Edition or the comparatively low-cost Professional Edition, you can immediately get to work creating structured documents with a number of standard documentation schemas, including DocBook, DITA, and XHTML.
To help explain how XXE simplifies the work of creating structured content, this evaluation considers the following factors:
I've rated the application's performance on each of these elements on a continuum ranging from "outstanding" to "poor." Of course, these ratings are influenced by my preferences and biases. They are highly subjective and are based entirely on my personal impressions working with the software. With that disclaimer out of the way, let's look at what XXE has to offer.
In stark contrast to the tedious installation and configuration process setting up structured authoring environments in the past, installing XXE is a breeze. The free XXE Standard Edition is available from the XMLmind web site and you can download a distribution for your specific operating system. Should you wish to take the plunge and purchase XXE Professional Edition, Pixware will send you an email with download instructions upon completion of your order.
Installation is a snap. Just double-click the installer file and it guides you through the process. Accepting the default options is by far the easiest approach, and the application is installed in the C:\Program Files\XMLmind_XML_Editor folder. Of course, you can pick the drive and folder options that work best for you, either through the installer or manually, by following the procedures detailed in the User's Guide, available on the XMLmind web site.
In addition to the editor, XXE provides a self-contained XML authoring, validation and publishing environment. The application seamlessly integrates an XML parser, XSLT engine and other critical XML components, freeing you from the burden of installing and configuring separate applications. Moreover, integrating these tools with the editor increases your overall productivity. Take rendering a document as an example. Using command line tools like the Saxon, Xalan and xsltproc, you are forced to type arcane commands like:
xsltproc --output myfile.xhtml xhtml/docbook.xsl myfile.xml
With XXE's integrated publishing environment, you simply choose the desired output option from a menu, and in seconds, you have a document.
XXE integrates the schema and style sheet files for its supported document types in convenient add-on packages. You can install these add-ons from within the XXE application. Simply choose the package you want from a list of options and XXE automatically downloads and installs it. Thankfully, you can uninstall add-ons with similar ease.
In addition to the application and publishing frameworks, the basic XXE installation also includes the application's documentation in both HTML and PDF formats. Also helpful, but not included with the base installation, is the DocBook source for the XXE User Guide. You can download this from the XMLmind web site, and structured content neophytes can benefit from analyzing its contents.
Installing XXE is a quick and painless process that will delight anyone who has ever attempted to install and configure a traditional XML production environment. With XXE, you can banish the word "toolchain" from your vocabulary, and work in an integrated and full-featured XML authoring environment.
In the final judgment, XXE installation is nothing short of outstanding in its ease and efficiency.
XXE is a Java-based application and for some of you that might be enough to reject it outright. If so, you'd be missing out on a great XML authoring tool with acceptable performance.
My personal experience with XXE's performance is more than satisfactory. As with all Java applications, there's an initial delay of about 3 to 5 seconds when you open an application, depending on your workstation's specifications. Once XXE loads, it's smooth sailing. I'm an extreme multi-tasker and generally run a single instance of XXE (often with multiple open documents), along with a multi-tabbed Firefox window, and at least one or two other apps. Through it all, XXE kept up with my demands.
Performance in generating output varies, depending on content and output format. You'll find that HTML renders fastest, while PDF renders more slowly. Size matters, too. The longer and more complex your document (graphics, tables, inclusions, etc.), the slower the rendering performance you should expect. On average, I've experienced rendering times of 3 to 5 seconds for an HTML document, and up to 30 seconds and more for a rather lengthy PDF document. That's consistent with other XML editors I've used, and is something I've come to expect when working in this environment.
XXE is on the higher-end for Java application performance. I've used faster apps and slower ones, too. In most cases, application performance is largely dependent on the hardware it’s running on, and XXE is no exception. While XXE's minimum installation requirements allow users of lower-end hardware to run the application, Java applications benefit from more robust hardware specifications. Much of your perception of XXE's apparent speed will depend on your computer's specifications.
In the final judgment, XXE provides good overall performance.
While XXE is said to be a general purpose XML editor, it excels as a tool for developing narrative and topical content. This is largely due to its excellent compromise between the text-based paradigm of editors such as Altova XMLSpy or SyncRO Soft oXygen, and WYSIWYG editors like Microsoft Word or Adobe FrameMaker. As a DocBook or DITA editor, XXE is among the very best tools I've encountered. At last, writers have an affordable and flexible tool that provides them an easy and intuitive way of creating structured content.
"Markup geeks" with extensive XML authoring experience might not share my appreciation for XXE's WYSIWYG approach, but for the rest of us, XXE opens the door to structured authoring with XML. Of course, as with any application, there's a learning curve to climb. While authoring documents with XXE is dead easy, especially when compared to using traditional tag-based editors, you'll still need to put in some time and effort to learn XXE and become productive.
Creating a new document in XXE is a snap. Once running XXE, pressing the CTRL+N keys brings up a window displaying the available document templates. From here, you simply choose the desired template.
Figure 2: Templates
Your available options depend on which edition of XXE you are using, and which add-on configurations you have loaded. Out of the box, XXE Standard Edition provides support for DocBook and XHTML documents employing schemas, rather than DTDs. This means you can use the free Standard Edition to create DocBook, Simplified DocBook, DocBook Slides, as well as XHTML documents. As you would expect, the Professional Edition of XXE gives you more options. It comes with ready-to-use templates for the following document types:
You can also use the Professional Edition to work with custom schemas and even XML files unconstrained by a grammar, but you'll have to spend time developing your own XXE configurations. While, this process is documented in the XMLmind XML Editor - Configuration and Deployment guide included in the XXE documentation, it's really beyond the scope of this presentation.
Once you choose the document template, you're ready to begin writing. In Figure 2, I've created a new document based on the DocBook Article template.
Figure 3: New document
The DocBook article element is a general-purpose container for documents such as journal articles, white papers, or technical notes, and is a good starting point for authors new to the standard. The "DITAheads" among us might begin with the generic Topic template, or choose from among the Concept, Task or Reference templates.
The DITA options do not display unless you install the DITA add-in.
The XXE Interface displays the affordances you use to work with your documents.
Figure 4: Interface
You do most of your interaction within XXE's Main window. Depending on the options you select, XXE displays a word-processor like view of your content adjacent to a structured view of your document. XXE uses CSS to style the content, so keep in mind that what you see is not exactly what you'll get in every presentational format. While your content will render differently, depending on the output format and the details of the XSL transformation, XXE's styled view provides you all the functionality you need to write and structure your document without once setting eyes on an angle bracket.
Figure 5: WYSI(not exactly)WYG
The Edit and Attributes panes reside on the far right of the screen. The Edit pane enables you to insert and manipulate the various schema elements in your document, while the Attributes pane provides information on the attributes of the selected element.
Figure 6: Attributes pane
The Attributes pane also holds additional tabs displaying information on search, spelling, symbols, and validation.
Depending on the document template you choose, XXE provides you a few basic elements as a starting point. Continuing with the DocBook article example, XXE inserts empty tags for the article and section title element, as well as a para tag as a placeholder for the document's first paragraph. From here, it is a simple matter of filling-in-blanks and entering the information you want. To enter text, move the cursor to the element you want and type.
One of the handiest editing features of XXE is hidden in plain sight beneath the Main toolbar. The Node Path bar displays the path of the element in focus and provides you continuous feedback on the active element (that is, the element in focus). As you move through the document, the Node Path bar provides you continuous feedback on the context of the currently active element. It displays the name of the active element (followed by #text, #comment or #processing-instruction, depending on the element's contents) and is preceded by each of its parent elements. In this example, the cursor is embedded in text contained by a para element, which is further contained in a section element under the document's root article element.
Figure 7: Useful features
In typical XXE fashion, this useful feature also includes a wealth of additional functionality hidden just beneath the surface. Far more than merely providing information about an element's context, the Node Path bar also gives you a handy means of selecting elements. Clicking on an element name in the Node Path bar selects that element in the document.
Figure 8: Selecting elements
XXE confirms your selection by placing a red box around the selected element. From here, you can delete the element, copy it, move it to another location in the document, or replace it. Pressing the Shift or Ctrl keys while clicking an element name creates a new element of same type (if the document schema allows it) before and after the element, respectively. Right-clicking an element name displays a popup menu providing the same functionality as pressing the Shift or Ctrl keys.
As I mentioned, the Tree view provides a hierarchical view of the document's structure.
Figure 9: Tree view
At a glance, you can see the content "wrapped" within its respective elements. Moreover, you can expand and collapse elements much as you would folders in a file browser (like Windows Explorer). While the Tree view has a certain utility, it's not without its shortcomings. Since XXE is intended to shield authors from XML code, it may leave those of you with more XML experience reaching for a plain-vanilla code editor to see the tags in all their angle bracketed splendor. As such, the Tree view is a poor substitute for more traditional code editor.
In fact, the developers at Pixware specifically discourage you from using the Tree view. They assert that you can do everything with efficiency in the styled view, since the Tree view was created to support documents for which no style sheet is available. My experience working with XXE supports this claim, and after a few hours of work with the editor, I deactivated the Tree view. While I still prefer a code-oriented editor for some tasks, I can quickly bring up the Tree view by selecting the no style sheet option from the View menu. It's also a simple matter to bind a keystroke to XXE that loads your favorite code editor (you might consider the free Microsoft XML Notepad for light code editing) in the event the code junkies among us can't bear the Tree view.
While you're busy turning off the Tree view, you might also take a minute to activate the interactive margin feature in the Options window. By doing so, you'll add a gray margin at the left and at the right of the document window. Moving the mouse pointer to these margins changes the mouse icon to a pointing hand. You can click the margin next to the node or element you want, and XXE highlights your selection in the text with a red border. Continue clicking to select the element's parent, all the way up the hierarchy to the root element.
As you type, you'll soon need to insert new elements. Inserting paragraphs in XXE is as intuitive as any word processor. Simply press the Enter key and XXE inserts the para element ready to receive your text. If your document schema supports it, you can add new elements at the site of your text entry. The Edit pane provides buttons enabling you to insert and modify elements. You can replace, insert before and after, as well as convert and wrap existing elements.
Figure 10: Elements
To insert an element after the current element, click the Insert After button on the Edit pane, or press the Ctr+J. The Edit pane displays a list of available elements based on the schema associated with the document. For inline elements such as the DocBook emphasis tag, you can insert the element as you type, or select the text you want and apply the new element by either choosing the element name from the Edit tab, or using the Convert to emphasis button on the toolbar.
You enter element attributes by inserting or selecting an element in the Main window and entering or choosing the value on the Attributes tab. For example, in DocBook you use the ulink element to indicate a hyperlink. You can click the Insert button on the Edit tab to bring up the list of supported elements and choose ulink, or select the text you want and click the Convert to link button on the toolbar. XXE inserts and selects the new element, and highlights the URL attribute in the Attributes tab. From here, you simply type the URL you want in the text box and press the Enter key.
Figure 11: Entering element attributes
XXE also includes a robust table editor that greatly simplifies the task of generating tabular content. DITA and DocBook both support standard HTML table syntax, and DocBook also provides support for its own table markup. Whichever you use, you'll find that creating tables in XXE is as easy as it is in any word processor. Clicking the Add table button displays a menu of table options. Depending on your selection, XXE inserts the table elements ready for your data entry.
Depending on the content model of the active element, XXE limits the display of options to those that are valid for the selected context. In this way, XXE prevents you from creating invalid documents. When using the DocBook, DITA, and XHTML add in modules, it is effectively impossible for you to create invalid content, as XXE continuously validates your code.
This feature, while beneficial, can be a bit of a frustration to those writers who have yet to reach a basic familiarity with their schema. For those of us just getting started with structure, it is a good idea to keep your schema documentation handy to deal with those inevitable moments when memory fails and XXE refuses to budge. It might help you to deal with the aggravation if you understand that by keeping you on the true and valid path, XXE is actually helping you to learn your schema. It only takes you a few failed attempts before you internalize that "element Y" can only precede "element Z."
In those rare instances when errors do occur (usually when working with content created in another editor), the Validity state button in the Status bar displays a series of color-coded warnings depending on the nature and severity of the error. The green checkmark indicates all is well, while a red X indicates a severe error. As errors occur, you can click the Validity state button to display details on the nature of the issue on the Validity tab. Clicking on the hyperlinked error message moves your focus to the element at issue.
XXE also includes a more conventional type of validation; spell checking. By default, XXE Professional Edition enables automatic spell checking (unavailable on the Standard Edition), much as it is implemented in Microsoft Word. As you type, XXE checks your spelling against its dictionary and highlights offending words with red "squiggly" underlining. Right-clicking the underlined word displays a pop-up menu where you can choose the correct spelling.
Manual spell checking relies on the user to initiate the spell checker from the Spell tab.
Figure 12: Spell tab
From the cursor point, XXE searches through the document and displays unknown words in the Spell tab along with suggested words. Like most spell checkers, you can replace a single instance of the word or replace all instances. You can also ignore words, add new words to the XXE dictionary, and skip element names during the search.
The XXE spell checker supports a number of languages, including English, French, German and Spanish, as well as other languages and vocabularies through custom dictionaries. User-contributed dictionaries are also available through the XXE web site, as well as a robust Dictionary Builder tools for creating your own custom dictionaries.
While XML applications like DocBook and DITA are outstanding technologies for structuring and storing your content, you'll need to apply additional technologies to generate useful output. In the past, this meant working with the various command line tools to manipulate stylesheets and render your content in the appropriate format. XXE simplifies the task of generating output, making what was once a painful and confusing exercise nothing more than a bad memory.
XXE transforms your content using its integrated Saxon XSLT engine and several XSL-FO processor plug-ins, including Apache FOP, RenderX XEP, and XMLmind's FO Converter. Depending on the XXE configuration, you can generate a variety of output formats. For fans of DocBook, XXE provides you a wealth of output options including:
Those of you on the DITA bandwagon have fewer options. XXE can generate HTML and PDF output from DITA-oriented content, but little else. Pixware acknowledges that DITA users will likely be disappointed by the available transformation options. Rather than develop a full bore DITA solution, Pixware considers the DITA add in for XXE something of a proof-of-concept. "Our intent," according to the XXE DITA documentation, "was mainly to show integrators and consultants how XMLmind XML Editor integrates with the DITA Open Toolkit." That said, there is much to support XXE as a robust DITA editor. With the pace of upgrades and the growing popularity of DITA (at least on the vendor side), I expect more DITA functionality in XXE in the future.
To generate output, you simply choose the Convert option from the XML menu. This displays the available transformation options. From here, it is a simple matter to select the transformation you want, and indicate the folder and filename to save the output in. Output quality is excellent, if a bit plain.
Figure 13: Output
Fortunately, you have a variety of options for customizing output. Since HTML output is styled via CSS, it’s easy to modify the stylesheet and achieve the look you desire. As always with XML, modifying print output is more complex. While an extensive discussion of XSL-FO is certainly beyond the scope of this article, you may be able to achieve specific customization by working with stylesheet parameters. For example, the DocBook Stylesheets provide hundreds of parameters you can modify to customize the look of your output. This is true of all supported formats, from HTML to PDF. The XXE User Guide provides you basic procedures for customizing the XSL stylesheets.
In the final judgment, XXE provides outstanding usability unparalleled by higher-priced applications. XXE is intuitive enough to enable new users to quickly get to work writing content. Advanced users will appreciate the depth of XXE’s functionality, and will benefit from the productivity gains derived from their deeper understanding to the application's nuances. In all aspects of structured document development and production, XXE is a winner.
XXE is extensively documented and includes an online help system for just-in-time assistance. The developers have taken time to create a set of documentation to support a wide variety of users, from first time end-users to experienced Java developers. The sets include documentation for
End user documentation includes the XMLmind XML Editor - User's Guide. This guide contains information about the installing XXE, the content of its distribution, and a brief tutorial. XXE also provides the XML source for this guide; a useful bonus to those of us new to DocBook and eager to see how a document is structured. Additional end user documentation includes a guide to the XXE spreadsheet engine, a quick reference guide, as well as guides targeted specifically to DocBook, DITA and XHTML users.
XXE also provides an online help system based on JavaHelp Viewer.
Figure 14: Online Help
The Help content is adequate, albeit modest in scope. It’s really just a screen version of the XXE reference manual and is limited to providing terse, high-level descriptions of the application's menus, tool bars and dialog boxes. For what it is, the Help does a reasonably good job of providing users just-in-time information. This immediate support is enhanced by a point-and-click contextual help function similar to the Windows Help Pointer. When you click a command, dialog box, tool, or icon with the pointer, XXE launches the help system and displays information about the selected item.
By far, the biggest shortcoming of the XXE online help is its reliance on the JavaHelp Viewer. After struggling with authoring (and worse yet, using) help in the JavaHelp 1.1.3 release, I admit that this is one area where I find it hard to remain objective. I'm not much of a fan of the JavaHelp viewer, and this bias undoubtedly colors my view of the XXE help. While the XXE help provides adequate (if minimal) content, its usability issues stand in stark contrast to the rest of this fine application.
XXE provides a number of documents detailing those higher-order tasks generally associated with system installation, configuration and customization. These include a configuration and deployment guide, a guide to customizing the user interface, and other guides supporting work with CSS, RELAX NG schemas, validation tools, and a command reference.
While targeted towards a more technical audience, Pixware makes the point that the tasks documented in these guides are appropriate for anyone motivated to achieve a more detailed knowledge of the product. According to Hussein Shafie of Pixware, the best person for this task is someone possessing intimate understanding of the authoring team's requirements. "The local guru does not need to be a programmer, or even a member of the IT staff," Hussein says. Even so, this person "really needs to be motivated because she/he will have to read tons of documentation: XXE documentation, but also many W3C standards such as XML, CSS, XPath, etc." If you require extensive customization or intend to use a custom schema, Hussein suggests you seek outside assistance if no such resource is available within your staff. "If you don't have a person with the profile of a local guru, you may consider hiring an external consultant for a few days. Not surprisingly, Pixware offers just such a service.
The last class of documentation is unabashedly technical and is targeted to "experienced Java programmers only." The XMLmind XML Editor - Developer's Guide describes such tasks as embedding an XML editor based on XXE components into another application, writing custom commands, style sheet extension, plug-ins, etc. Other developer-level documentation includes Java API documentation for XXE and a Javadoc Format Plug-in document. Since the license for the Professional Edition of XXE includes access to the application's source code, such low-level documentation is critical for those shops intending to integrate XXE functionality into another application, or otherwise extend the application.
Understandably, XXE provides limited support options to users of the free Standard Edition version. An active public mailing list is available for the first-level of support. This forum is moderated by Hussein Shafie (who also authored much of the XXE documentation) and serves as a public discussion list for technical support and general questions related to application. While you can subscribe to the mailing list, Pixware is one of the few companies I've encountered that will grant you full privileges to their forum without requiring registration.
Like you, I juggle too many emails as it is and do not relish the notion having to manage yet another email stream. You don't need to be a list member to post a message and Pixware maintains an extensive archive of message threads going back to August 2001. You can even download the full archive and mine its contents offline, if it suits you. Pixware also provides you with a private email address for those queries you'd prefer to keep, well, private. A list dedicated to new product announcements is also available, but since that traffic is copied to the standard support list, there's no need to subscribe to both. A wish list and FAQ is also available for your review.
Owners of the Professional Edition have access to unlimited developer support by e-mail for 3 months from date of purchase. This type of support is intended to help customers integrate XXE into their own applications, as well as extend XXE's functionality. While developers tasked with this work will also appreciate access to full source code of the product as the ultimate form of documentation, such projects will undoubtedly require some support from the XXE developers. While Pixware publishes its telephone number, there is no provision for telephone support. With its offices located in the Paris suburbs, users in France and the rest of the European Union might consider a call to the Pixware offices. For the rest of us, email is our best option.
In the final judgment, XXE is a well documented product. The documentation, while not exhaustive, is thorough enough and does an effective job of detailing the application's functionality at a level appropriate for a wide range of users. Support options are on par with most packaged applications of this type, and Pixware should be commended for its willingness to provide some minimal support to users of the free Standard Edition. Professional Edition owners will benefit from direct access to the XXE development team and the application's source code. If that doesn't impress you, try asking Adobe or PTC for their applications' source code!
It's hard to beat XXE Standard Edition for value. With it, you get a world-class XML authoring solution, including a word-processor like interface that enables you to concentrate on writing and organizing your content. With its support for DocBook, the free XXE Standard Edition comes with everything you need to author structured content using a mature and well-established standard adopted throughout the world by organizations large and small. If you're new to the standard, you'll want to get a copy of Norm Walsh's Docbook: The Definitive Guide and Bob Stayton's DocBook XSL: The Complete Guide and you'll be ready to start producing structured content without spending a dime!
Those of you interested in developing DITA-based content will have to make more of a commitment, as the only the Professional Edition of XXE provides you the full-measure of DITA integration. Still, at $220 dollars for a single-user license, there's no other editor available that gives you the same level of functionality. Since I plugged Walsh and Stayton's books, it's only fair for me to do the same for their DITA counterparts. For a good overview of developing DITA content, you should get to know the DITA Open Toolkit User Guide and Reference document included with the DITA Open Toolkit. JoAnn Hackos' Comtech Services, Inc. has recently published a guide to DITA you might consider purchasing - Introduction to DITA: A Basic User Guide to the Darwin Information Typing Architecture by Jen Linton and Kylene Bruski. Unlike the free DocBook guides, you'll have to play the DITA for dollars game and lay down $50.00 for the DITA guide.
In the final judgment, XXE offers individuals and organizations an outstanding value.
I'm very impressed by XXE. Few software products offer a similar level of elegance and functionality, regardless of price and pedigree. Once you use it, you'll appreciate the thoughtful and elegant approach XXE's developers took in creating a product robust enough for experienced authors, yet simple enough to provide a gentle entry for those of us new to structured authoring. With XXE, you're ready to take full advantage of XML's promise for authoring narrative content.
Risking nothing but the time it takes to download the Standard Edition, you'll quickly grow to appreciate XXE's simplicity and usability. If your experience is anything like mine, you'll soon move towards the Professional Edition. I know I'm gushing, but the $220 I spent for the Professional Edition was as much a reward to Pixware for giving away such an outstanding product, as it was an investment in my productivity.
As you advance in your knowledge of XML authoring, you'll undoubtedly add more tools to your XML workbench. Even so, I expect you'll grow to rely on XXE as much as I have and find it difficult to part with. In the final judgment, XMLmind XML Editor is one of those rare software finds; an "insanely great" application singular in its ingenuity, quality, and usability. Get it now.
Antonio "Tony" DaSilva is a writer, trainer and project manager with fifteen years experience developing and delivering user assistance solutions. Tony has led the training, documentation and deployment efforts for a number of software development projects, including a national system for disease surveillance and a system for tracking and managing disease outbreaks for the US Centers for Disease Control and Prevention (CDC). Tony has developed UA materials for a variety of organizations, including ExecuTrain Corporation, McKesson, Unisys, and Computer Sciences Corporation (CSC), and Science Applications International Corporation (SAIC).