Back to Main                              Review of HelpStudio 2                 Back to Newsletter

                                                         by Matthew Ellison

Background

Introducing HelpStudio

Developing Content

Developing Navigation

Single Sourcing

Support for Programmers

HelpStudio 2's own User Assitance

Conclusion

 

 

 

Background

The Help Authoring Tool market is currently in a state of flux.  Earlier this year, it became apparent that it is unlikely that there will be any further new versions of RoboHelp (see the page here). Since RoboHelp has been the dominant market leader for as long as most of us can remember, this means that there will be a lot of Help authors eying up potential alternatives over the coming months.

RoboHelp's leading competitors currently include AuthorIT, ComponentOne's Doc-To-Help, and Quadralay's WebWorks Publisher.  Although these are excellent tools, all of them place more emphasis on single-sourcing to both paper and print formats, and are consequently based on quite different paradigms and workflows to those used by RoboHelp.  For example, AuthorIT uses an object-oriented database to provide powerful content management and information re-use—while both Doc-To-Help and WebWorks Publisher require you to create a print document within a Word processor first, and then use the tool to transform the document into an online Help system.  Dyed-in-the-wool RoboHelp users who are used to creating HTML-based content directly within a straightforward WYSIWYG editor (and perhaps generating somewhat rough-and-ready print documents on the side) may find the approach taken by these alternative tools somewhat alien.

HelpStudio 2 from Innovasys, although a relative newcomer to the market, is worth including (with those heavyweights mentioned above) on your list of tools to test-drive as a potential future RoboHelp replacement.  Of interest first of all is the fact that it is one of those rare specimens, a home-grown UK product.  But that's not all it has going for it: of all the tools that I have used and reviewed in recent years, it probably comes closest to taking the same approach to Help development as RoboHelp.  Which is to say, you create individual Help topics within a proprietary WYSIWYG HTML-based editing environment, and then generate to one of a range of HTML-based Help formats.

TOP


Introducing HelpStudio

The origins of HelpStudio

 

HelpStudio is based on Document! X, a tool also developed by Innovasys.  Document! X is aimed at software developers and is used for documenting application code, APIs, and databases.  HelpStudio takes the same template-driven approach pioneered by Document! X, and makes it available to technical authors for creating user assistance.  HelpStudio was first released almost three years ago, but the more complete and robust version 2 has only been available since September 2004.

Its origins as a developer tool are evident in the look-and-feel of its UI, which is modelled very closely on the design used by Microsoft for Visual Studio .NET (the integrated development environment for programmers).

HelpStudio's toolbars contain very Microsoft-like icons and button designs, and the interface overall has a very well organised and professional appearance.  In common with Visual Studio.NET, the HelpStudio UI also makes heavy use of tabbed and dockable windows.  These provide great flexibility and allow you to customize the development environment to your own needs and preferences – however, I did find them a little difficult to control, and I occasionally found it almost impossible to arrange the windows in the configuration I was aiming for.

++++++++++++++++++++++++

Comparing HelpStudio and RoboHelp

The main similarity between HelpStudio and RoboHelp is that both provide an environment for editing content using HTML mark-up.  Whereas RoboHelp saves each topic as a separate HTML file, HelpStudio includes all topic content within a single project database.  Although this database is based on XML, the topic content still retains its HTML mark-up, and is stored as "unparsed" data within the database.  One of the advantages of having all the content within a single database is that there is more scope for "project-wide" operations.  For example, HelpStudio provides a useful Project Find and Replace option that enables you to replace text throughout not only all the topics, but also the Glossary, TOC, and all topic metadata.  This is something you have never been able to do in RoboHelp (without resorting to its bundled Multi-File Find and Replace utility).

Since all the content is stored in a database, none of the changes that you make to topics are actually saved until you save the database (or HelpStudio automatically saves it for you).  When you do save, HelpStudio keeps a backup of the previous version of the database, so it is easy to revert your changes if you realise you have made a mistake.

In some aspects (notably indexing, dynamic "See Also" links, and importing Word documents) HelpStudio2 may not meet the high expectations of authors who have become accustomed to the top-class functionality provided by RoboHelp in these areas.  Despite its database, one of HelpStudio's limitations compared with RoboHelp is that there is no way to select multiple topics and change their properties simultaneously.  It would be nice, for example, to be able to limit the style sheets used by all topics in a single operation.

On the other hand, HelpStudio2 provides a number of features, functions, and built-in tools that far surpass their RoboHelp counterparts.  In this list, I would include its print  output, template and style sheet support, and not least the simplicity and leanness of its underlying HTML code.  Furthermore, its underlying architecture and extensibility puts it in a very good position to evolve and develop, enabling it to keep pace with the future needs of Help developers.

Like the support for source control built into the most recent version of RoboHelp, HelpStudio can be integrated with an external source control system.  Authors collaborating on the same HelpStudio project can simultaneously check out individual items such as topics, the Table of Contents, the Glossary and Booklets all separately from each other. This makes source control a team-working feature rather than just pure version control.  However, since HelpStudio does not come bundled with its own equivalent of RoboSourceControl, you will need to provide your own source control software.

What most distinguishes HelpStudio from RoboHelp is its template-driven approach, which I'll talk more about in the next section.

TOP


Developing Content

A template-driven Approach

HelpStudio claims to use a template-driven approach.  This certainly sounds impressive, but what does it actually mean?  In a nutshell, it enables you to control the appearance, layout, and even to a certain extent the content of multiple topics within, potentially, multiple projects.  You do this by creating a special template that includes (among other things) defined page layouts, properties (effectively variables that can be set to any value within a project), and style sheets.  When you change any of these things, you affect not only future projects that you create from this template, but also any existing project that retains its link to the template.  As an example, suppose you decide it would be useful to provide an email feedback link at the top of all your Help topics: you can achieve this by adding the link to the standard page layout within your template, and, lo and behold—the link appears in all the topics that use the standard page layout within all the projects that use that template.

Templates offer you great power and flexibility, and they can be quite tricky to customise to your own requirements.  For example, although HelpStudio supplies a friendly-looking editor for changing your page layouts, I have found that in practice you have more control if you edit the underlying code of these page layouts in a text editor.  This requires a good understanding of HTML, CSS, and HelpStudio's own syntax for template properties.  Having said that, anyone who is happy with the standard template supplied with HelpStudio (which emulates the layout and formatting used by MSDN) will not need to get involved with editing templates at all.

++++++++++++++++++++++++

HTML-based editing

HelpStudio has its own built-in HTML editor, similar in some ways to RoboHelp's WYSIWYG Editor.  It also enables you to switch to HTML view (similar to RoboHelp's TrueCode view) and Preview (a read-only view of the topic that looks and behaves as it will to the user).

What distinguishes HelpStudio's editor from that of RoboHelp is the cleanness of the HTML code that it generates.  For example, here is the underlying code generated by HelpStudio for a simple bullet list:

<ul>

    <li>Item one</li>

    <li>Item two</li>

    <li>Item three</li>

</ul>

For comparison, here is the code generated by RoboHelp for the same list:

<ul style="list-style: disc;"

      type=disc>

     

      <li class=kadov-p><p>Item one</p></li>

     

      <li class=kadov-p><p>Item two</p></li>

     

      <li class=kadov-p><p>Item three</p></li>

</ul>

++++++++++++++++++++++++

Importing Content from other sources

HelpStudio provides a facility for importing RoboHelp projects.  When I tested it with a RoboHelp project of just over 100 topics that included a range of styles and formatting effects, the RoboHelp import process worked very smoothly.  After generating the Help output from HelpStudio, I found that it had faithfully retained almost all the features and properties of the original RoboHelp project, and all the topics had kept the same formatting and layout.  The only glitch I noticed was in topics that contained DHTML effects such as drop-downs and expanding text – because of they way these were coded in RoboHelp these became almost impossible to edit within HelpStudio's WYSIWYG editing pane (although they still operated correctly within the Preview pane and the Help output).

HelpStudio also imports Word documents – however, I found this feature to be not quite as powerful and useful as RoboHelp's own Word Import feature.  For example, it is only possible to specify a single style (such as Heading 2) for splitting the Word document into separate topics.  This means that, if you have a document that uses Heading 1, Heading 2, and Heading 3 styles, you cannot easily split the document at each of these three headings (as you can with RoboHelp).  A possible solution is to use Word's Find and Replace to change all instances of Heading 1 and Heading 3 to Heading 2 before importing into HelpStudio.

++++++++++++++++++++++++

Formatting and layout

Topic formatting in HelpStudio is implemented using standard Cascading Style Sheet (CSS) technology.  You can create your own new custom styles by adding class selectors to the style sheet associated with the topic.  Unlike RoboHelp, HelpStudio does not provide a GUI to support this process—instead you must open the style sheet (.css) file in a text editor or in your own favourite style sheet editor.  The Help for HelpStudio recommends that you download and use TopStyle by Bradbury Software.  Having defined your styles, you can easily apply them to either paragraphs selected characters by using the following drop-down control:

HelpStudio provides considerable flexibility in the way it enables you to link style sheets with topics.  There are two distinct types of types of style sheet that you can work: template style sheets (used by all projects that used the template) and project-specific style sheets.  The advantage of using template style sheets is that a single style sheet can control the formatting of topics across multiple projects – since HelpStudio enables you to apply more than one style sheets to each topic, you can use project style sheets to override certain formatting properties for specific projects.

Before leaving the subject of topic formatting, it is worth mentioning that HelpStudio enables you easily to place your topic heading information (title, feedback link, etc.) within a non-scrolling coloured banner, identical to the non-scrolling regions whose loss many of us bemoaned in migrating from WinHelp to HTML Help a few years ago.

++++++++++++++++++++++++

Content Helpers

HelpStudio contains a very useful and labour-saving feature called Content Helpers.  These provide shortcuts for inserting complex but frequently used sections of HTML coding – they help you to achieve specific presentation layouts and effects quickly and easily.  For example, if you need to insert a caution with an icon preceding the text, you can use a Content Helper to insert the required table layout and image file in a single operation.

There are also Content Helpers for creating DHTML effects such as drop-downs and expanding text – the icing on the cake here is that HelpStudio provides a Content Helper for inserting a "Show All / Hide All Link" similar to that used by Microsoft in the Help for Office 2003.

Finally, you can define your own content helpers for content snippets that you use frequently, and you can assign a hotkey to each of your content helpers.

++++++++++++++++++++++++

Creating and editing images

HelpStudio has an integrated screen capture facility, and the ability to re-capture a previously captured image. Re-capture displays a semi-transparent overlay of the old screenshot allowing you to position the capture area accurately so that it is consistent with the old image—a great time saver for updating screen shots as an application changes.

There is a built-in image editor that enables you to manipulate and annotate your images.  It supports quite a wide range of features, including the ability to add drop-shadows.  An especially nice touch is the feature that enables you to create thumbnail versions of your images automatically.  When you insert a thumbnail into a topic, HelpStudio offers to link it automatically to the full-size image, which results in the following content in the Help output:

In addition to its editor for working with ordinary images, HelpStudio contains a sophisticated tool it calls the User Interface Mapper.  This enables you to generate graphics containing screenshots or other images overlaid with a variety of effects such as colour washes (to highlight areas) bullets or text labels.  The unique feature of this tool is that the effects are stored separately from the background screenshot, which makes it easy to rebuild the full marked up image if the screenshot needs to be updated.

++++++++++++++++++++++++

Glossary

HelpStudio provides a Glossary Editor that enables you easily to create an alphabetic list of terms with their corresponding definitions.  The definitions are not restricted to plain text as they are with RoboHelp, and may contain any HTML-based content, including images.  These definitions are presented within a special Glossary topic in the Help output.  You can also link any occurrence of a glossary term within topic text to its definition by simply enclosing the term within two pairs of dollar symbols.  When the user clicks on a linked term within the Help output, the corresponding definition appears in a pop-up window.  Using the Project Find and Replace option, it is quick and easy to link all occurrences of a glossary term to its definition in this way.

TOP


Developing Navigation

TOC

 

Creating a table of contents is as easy in HelpStudio as it is in RoboHelp – the most intuitive method is to drag topics from the Project Explorer window into the appropriate location with the Table of Contents Editor.  However, you also have the flexibility to add TOC entries (or "nodes" as HelpStudio calls them) that link to the special Glossary topic or to Web-based URLs.

 

++++++++++++++++++++++++

Index

 

Having been so impressed with HelpStudio's overall power and range of features, I was rather disappointed with its support for indexing.  The indexing process is entirely "topic-centric" – in other words, you assign keywords by opening a topic, and then typing the required keywords into a list for that specific topic.  Although it is possible to add entries to this list by highlighting words within the topic content itself and selecting the "Add as Keywords" option from the context menu, it is not possible easily to copy existing keywords from other topics (as it is in RoboHelp).  Furthermore, there is no way to edit the merged alphabetical list of index keywords, which would be useful during the final stages of fine-tuning an index.

++++++++++++++++++++++++

Hyperlinks

 

HelpStudio provides good support for creating hyperlinks, again using a similar approach to that of RoboHelp.  If you want to convert existing text to a hyperlink, you can do this by highlighting the text and selecting the Hyperlink command.  HelpStudio then displays the Insert Hyperlink dialog which enables you to select the required topic from a hierarchical tree structure of topics.  Alternatively, if you need to create a link from scratch, you can do this easily by dragging the required target topic from the Project Explorer window into an empty paragraph within the topic.  A nice touch (missing from RoboHelp) is that you can use Ctrl+Click to follow any of the links when you are using the WYSIWYG editing view – however, in the version I was using, the links did not operate at all when I clicked on them in the Preview window (whether or not I used the Ctrl key).

++++++++++++++++++++++++

"See Also" Links

 

Given HelpStudio's apparent enthusiasm for adopting Microsoft technologies, styles, and navigation techniques, it is surprising that there is no support for keyword-driven ALinks (or what RoboHelp calls “See Also” links).  HelpStudio does have a feature that is also calls "See Also" links, but these are not to be confused with RoboHelp's.  Instead of being keyword-driven, they enable you to define for each topic a static list of other (related) topics.  Links to these topics are then displayed automatically in the footer for the current topic.

TOP


Single Sourcing

Overall methodology

 

HelpStudio has a similar single-sourcing paradigm to that of RoboHelp's, and like RoboHelp it has to generate all outputs from an HTML-based source.  HelpStudio enables you to define Build Profiles, which are similar in principle to RoboHelp's “Single Source Layouts” (although they only include online Help outputs).  If you also require output in PDF format, then you need to set up a special type of output called a “Booklet”.

++++++++++++++++++++++++

Building online Help

The two compiled Help formats that you can generate from HelpStudio are HTML Help 1.x and Microsoft Help 2 (which requires you to download and install the Help 2 compiler).  In addition to those formats, HelpStudio also generates an uncompiled browser-based format – this uses simple HTML-based techniques, which means that it can be viewed using a range of different browsers.  However, it lacks some of the rich functionality (such as customisable skins) available with RoboHelp's WebHelp.

HelpStudio generates and compiles the output Help extremely quickly, and emits a discreet and rather pleasing "ping" sound on completion.  You then have the option of viewing either the compiled format specified within the Build Profile that you have selected, or the corresponding browser-based output.

++++++++++++++++++++++++

Building Booklets

The PDF output is governed by a template in the same way as is the Help output, with page layouts for the overall booklet and for each topic. You can edit this template (and create new ones) in the template manager, as you would for standard templates. You can also customise the formatting of the PDF output by defining print-specific style sheets.

HelpStudio provides excellent functionality for mapping navigation elements to a suitable format for PDF output.  For example, it will convert hyperlinks to cross references that specify the name and section number of the referenced content (instead of simply printing the link in blue and underlined as RoboHelp does).

++++++++++++++++++++++++

Conditional Build Flags

Any single-sourcing tool worth its salt should support conditional content – and HelpStudio does not disappoint in this regard. You can use Build Flags (similar to RoboHelp's Conditional Build Tags) to mark up content down to the character level.  Having done so, you can then specify within a Build Profile the Build Flags that you want to include within that particular output.  By creating multiple Build Profiles, each with a different combination of Build Flags selected, you can create a variety of different versions of your Help.  This might enable you, for example, to produce a customised Help file for each of the different user roles or types in your audience.

TOP


Support for Programmers

Since HelpStudio has its origins as a tool for software developers, it provides very comprehensive support for programmers needing to implement context-sensitive Help from an application.  For example, it provides the Popup Help Designer, an AddIn for the Visual Basic development environment.  This AddIn makes it easy to add simple context sensitive popup help to Visual Basic 5 and 6 applications.

There is also a comprehensive Extensibility SDK that enables programmers to extend and automate Help Studio a variety of ways.  For example, the Extensibility SDK could be used to create custom content management solutions, translation solutions, batch help file builders, and Import Tools.

TOP


HelpStudio 2's own User Assistance

An acid test of any Help Authoring Tool is to check out the Help provided within the tool itself – this is an opportunity to see a real-life example of the tool's own output in action.  The Help for HelpStudio looks extremely clean and professional, based as it is on the MSDN template.

The table of contents is well structured, and shows a comprehensive set of topics covering the full range of the tool's features.  The information within topics is clearly organized and consistently formatted in a way that makes it easy to scan for specific information and to follow instructions.

In terms of content, I only have one small gripe: I sometimes found that my question "how do I get to this tool or feature?" remained answered by the Help.  For example, the topic below (which contains very clear instructions on how to use the Glossary Editor) does not tell me which menu I need to select in order to access the Glossary Editor:

Although there is rich navigation support (including context-sensitive access, well-structured TOC, and rich cross-reference hyperlinks), the index has room for improvement.  For example, it does not contain some fundamental frequently-used terms such as “Style”.

TOP


Conclusion

Help Studio is an extremely well-designed tool that shows a clear understanding of the real needs of Help authors.  With future improvements (promised by Innovasys) in the areas of indexing and keyword-driven links, it will be capable of staking a strong claim as a potential natural successor to RoboHelp.

For more information about Help Studio 2, visit the Innovasys web site.

TOP