The system I’m using for this piece (RubLog) is somewhat of a compromise. I write the article offline, using whatever text-editor I prefer, can commit the text to CVS (a version management system) if I desire, and let RubLog publish it directly from CVS. The advantage being, I can edit it wherever I am with my laptop and the text-file is accesible to any tools I might have on my laptop, such as a spelling checker if I’m not too lazy to use one. The other side of the coin is, if I spot an error in the text while reading the web-site, I cannot directly correct it, but have to go back to the text-editor to modify it and commit the new version to CVS.
Other systems, such as ZWiki and Itor (on which I’m programming myself) accept changes only through a web-browser. This makes it relatively straight-forward to correct typos - just open the web-page that needs to be changed, click ‘edit’ and presto… I can make my change directly, and version management (if any) is handled for me by the system. Click ‘save’ and I can see what the page now looks like. Not exactly WYSIWYG, but it provides me with fairly rapid feedback. This coin also has a flip-side: I have to be online to edit the text, and am constrained in editing possibilities by the simple text-boxes web-browsers offer.
One nagging thing RubLog, Itor and Zope have in common, is they are not fully WYSIWIG like my word-processor is. If I want to get an idea down fast, including pictures, I grab Open-Office Writer and Open-Office Draw. I can simply add titles, quickly create drawings, and include the drawings in the article. While I do that, I see what I am doing, because Open-Office is WYSIWYG, and does not need a separate rendering step after creating something. I currently like to write articles around a DiagramOfEffects (DOE). I usually start with a diagram, and describe that in the article. As the writing progresses, the diagram evolves. With a word-processor, I can add and modify diagrams rapidly. For a web-site, I’ll have to manually render the diagram to a bitmap. For every change to the diagram, rendering is required. Needless to say, I won’t start such an article with any of the text-based systems.
Another disadvantage of starting off the web, is that printing web-pages is still a nightmare, as I recently re-discovered when we tried to print registration forms for xp-day_benelux. So for readers who’d like a hardcopy, I’ll have to create a PDF from a separate document. Now I have two different articles… I’m unlikely to do this, If I ever intend to change anything to either of these articles.
Now for the flip-side.… Although writing and drawing with OpenOffice is easy, rendering for the web leaves something to be desired. The easiest thing to do, is convert the document to PDF tm (PortableDocumentFormat) and upload it to the site. Most people have a PDF reader, and many search-engines index it. The advantage of this approach is, that it’s fast and easy :just choose ‘print to PDF’ when using OpenOffice in combination with Linux, it’s easily printable (unlike web-pages) for readers and the layout as written is preserved. The disadvantage is, that it isn’t a web-page, so it doesn’t integrate with the remainder of a web-site and doesn’t lend itself well to using hyperlinks. OpenOffice does render to HTML, but creates HTML with a horrible layout and duplicated style and font tags for every paragraph. The WYSIWIG nature applies to printed documents… Carefully added whitespace to put a diagram at the top of a paper-page leaves empty spaces that look ugly on a web-page. Specifying exact fonts to be used is inconvenient, as the web-site containing the document has to specify the style…
So for now, I guess I’ll continue to compromise. Write short rants like these with a text-based system, and write longer articles with pictures with OpenOffice, which I subsequently covert to HTML if I’m not too lazy.
After writing this rant, I thought it’s time to get my act together and make my favourite way of writing articles of a few pages with pictures more comfortable for myself. This resulted in a simple program to remove extranous tags such as <FONT> from the html generated by OpenOfice . See TagCleaner for the result.