The fossWorkflow Guides

Guides to the use of Free & Open Source Software

Catalogue of Workflow Guides

©Simon Christopher Cropper 29 October 2012.

Index to Workflow Guides

Guide Software OS Language
The fosGIS Workflow Guide - A guide to the use of FOSS to view, edit, create, analyse and map geospatial data - gvSIG - Ubuntu
- Microsoft Windows™
au flag en
The Scripting Workflow Guide - A guide to the use of scripting languages like bash and python to automate workflow tasks - bash
- Python™
- Ubuntu
- Microsoft Windows™
au flag en

Project Overview and Objectives

There are a large number of free software packages available to help people conduct daily business activities like document presentation, image manipulation, map creation and many other tasks. This software is free as in you don't have to pay money to get them and free as in you are able to do what you want with them (e.g. change the software to your needs). The open source component, in the free & open source prefix to this series, relates to the availability of the source code to the user. Essentially you are able to view how the developers have made things happen and change this if you desire.

One of the bad things about free & open source software is the lack of quality documentation. When manuals do exist they only tell you what a tool or menu option does, not necessarily how or when they should be used. This makes it easy for workers experienced in certain types of programs but difficult for newcomers. What is missing are tutorials on how to use these tools to complete particular complex tasks. Tasks that themselves consist of multiple subtasks requiring the use of particular tools and menu options or even different software to complete. This sequence of tasks represent a workflow. Workflows represent the building blocks of business and allow workers to do their job.

These guides represent collections of tutorials that illustrate the use of various programs to complete sequences of tasks or workflows. Some may be bundled into a group of activities that may represent a broader outcome so as to 'illustrate a point' (e.g. make a vegetation map) but most are aimed at illustrating and describing a shorter sequence of tasks that can be used as part of multiple workflows. The aim is to give enough information to the reader to understand what they are doing and how this information can contribute to multiple workflows, thus building on the reader's skill, knowledge and understanding.

Although the tutorials will illustrate and describe how certain software and languages can be used to solve common business tasks, sufficient detail will be made available to the reader so as to demonstrate how and why particular tools, menu options or commands are used on actual data in a variety of real-life-situations. For example, detailed scripts are provided illustrating the use of bash and python to conduct various common business tasks (e.g. backing up files or automatically scanning for viruses when downloading data). All these scripts provide feedback to the user via their desktop either through popups, dialog boxes or the creation of reports. Consequently the reader has a variety of common techniques illustrated, which can also be used in other projects of their own.


This guide has been written in HTML for use on web browsers. Great length was taken in evaluating alternative document-management-systems like structured document editors, Wiki Pages and word processors. The only real contender was Open Office / LibreOffice Writer. This package made creation of new documents very easy. The problem though, is that tutorials need to be created, maintained and possibly modified to create new derivatives or be translated into different languages. Writer files are stored in binary format -- the text and images intrinsically bound with their formatting -- and although it is possible to export the data to other formats, it is not possible to reconstruct these binary files with all their formatting intact.

Structured Document Editors like Lyx, XML Mind Editor, Serna Editor and others are too complicated and too rigid in their schema. Software should allow the author, translator or editor to quickly review and manipulate the text. Their strength however is separating writing content from styling or formatting the document.

HTML is the middle ground. A simple text editor can be used and text blocks representing sections of text can be readily imported, cut-and-paste or dropped into the editor. I personally use gEdit with the snippet plug-in installed. This plug-in allows an author to quickly insert blocks of preformatted HTML code where text and links to image files can be readily inserted. As with the Structured Document Editors, the styling of the document is handled separately by using a Cascading Style Sheet. Using HTML also allows the images to be kept separately, which allows translators to quickly and easily replace the images in a document, and then translate the text while viewing the updated images.

That said, online access is not always possible or desirable, or it is preferable to only have one file (e.g. to store a file in an eLibrary on an Intranet). To support this need the tutorials have been converted from HTML to PDF using xHTML2PDF. A link to the PDF version of a tutorial can be found in the external links section at the end of each guide and tutorial.

All HTML code and CSS styles used on this website have been validated and conform to the 'HTML 4.01 Strict' and 'CSS 2' industry standards.

Valid HTML 4.01 Strict Valid CSS!

These guides and tutorials and the style, formats and fonts used have been tested on a wide variety of browsers. That said, it is the opinion of the site administrator that the guides are best viewed using Firefox.

Firefox Logo

Operating Systems

Most of the software presented in these guides are able to run on machines using Microsoft Windows, Apple Mac or Linux operating systems. That is they are cross-platform or platform independent. C-based programs like Grass and QGIS provide distinct binaries that can be downloaded from their websites, while Java-based programs like gvSIG and OpenJUMP run themselves within the Java Virtual Machine that most people have, whether they know it or not, on their computers.

Once the programs demonstrated in these guides have been set-up, they should have the same look and functionality, so skills learnt should be able to be applied regardless of the operating system your machine uses. The only real differences will be in the underlying directory structure, the location of configuration files, etcetera. When relevant to the tutorial at hand, these differences will be explained.

Prior to demonstrating the use of a software package a tutorial will be provided showing how it can be installed on Ubuntu and Microsoft Windows XP, the main operating systems being used by the site administrator. Tutorials demonstrating installation on Apple Mac or Microsoft Windows 7 would be greatly appreciated and readily incorporated into this website. People interested in collaborating should read the section on Contributing to these guides on how to create tutorials in the correct format and to familiarise yourself with the Licensing and Copyright Issues for Editors & Translators.


botanicus logo These guides are produced by Simon Christopher Cropper, Principal Consultant and owner of Botanicus Australia Pty Ltd. This domain and the various subdomains (gis, scripting, etcetera) have been funded and are managed by Botanicus Australia Pty Ltd on behalf of Simon Christopher Cropper.

The copyright of the text and images displayed on every webpage or derivative is specified in the "Metadata related to this document" section at the end of every page. Where possible, individual guides and tutorials have been released under the Creative Commons Attribution-ShareAlike 3.0 Australia license. If you are unfamiliar with this licence please at least refer to the human-readable summary available on the Internet.

In essence, you are permitted to copy, distribute and transmit the incorporated guides and/or the individual tutorials and, if you feel so inclined, adapt them to your needs. If you do adapt the tutorials to your needs you are encouraged to provide copies of your derivatives to the website administrator so they can be incorporated back into the appropriate guide. If you are interested in collaborating, refer to the section on Contributing to these guides on how to create tutorials in the correct format and familiarise yourself with the Licensing and Copyright Issues for Editors & Translators.

Contributing to these guides

Preliminary Discussion

Some issues relevant to the public release of technical documents are access, attribution, control, use for commercial purposes and creation of derivatives. I have briefly outlined my thoughts on each of these issues below.

Any information released to the public needs to have a clear statement outlining what the author is happy for others to do with their work. This is normally achieved by assigning work to a particular licence that outlines what others can do with that work. After considering a variety of licence types available I have personally decided to release my work under a Creative Commons Attribution-ShareAlike 3.0 Australia license. Below are a range of comments related to this license and why I use the particular combination of conditions that I did.

Creative Commons License

In addition to the standard conditions relevant to the Creative Commons Attribution-ShareAlike 3.0 Australia license, the following conditions also apply to the creation of any derivatives.

In addition to copyright relevant to any material you create, it is also necessary to confirm that permission is granted for the portrayal or use of other works in your document. This includes portraying Graphical User Interfaces of software being reviewed, data presented within the software windows and data distributed with a tutorial to allow readers to practice what the tutorial demonstrates. I have listed the copyright owners and the licenses relevant to all data used in the preparation of this and all the tutorials forming part of this guide.

Creating derivatives

The source documents for this guide are the HTML documents you are viewing. The PDF files are derived from these pages and are secondary documents. All derivatives should attempt to be based on the source HTML documents available from website. Although ultimately content of documents are to be static, following the initial release of a tutorial and as people use the documents, it is expected that minor errors or the need for clarification will result in some changes. Please ensure you have the latest version of a document prior to creating a derivative.

HTML is a mature mark-up language and many editors exist that allow you view the source code. Personally I edit the HTML code directly using the simple text editors gEdit on Ubuntu or Programmers Notepad 2 on Windows. The primary reason for this is they allow me to insert blocks of elements into the text quickly (i.e. insert snippets of code) and call python routines, capture the results and insert them directly into the open document.

Translators and editors will benefit from using comparative software where two versions of the file are compared side by side. Diffuse is a very good tool for this although it allows for accidental changes in the formatting tags. Google Translator Toolkit does the same thing but allows you to hide the html tags and focus directly on translating the text. There are no constraints on what package you use. If your intent into submit a derivative for incorporation into this guide, all I ask is that you avoid stripping out formatting tags or inserting complicated elements unlikely to be supported in a variety of browsers or readily converted to PDF.


To meet the requirements of the Creative Commons Attribution-ShareAlike 3.0 Australia license I need to provide a copy of the source documents. You are currently viewing the latest version of the file and it can be readily saved to a directory for editing.

To promote use of the tutorials, even when the Internet is unavailable, PDF files are created automatically on uploading files to the website. There is no need for translators and editors to create and supply a PDF.

When derivatives use or create different data or imagery than the source document this needs to be supplied or a link provided to a place where a legal copy can be downloaded. If possible I can help create language-specific GUI images but translators should not expect that this is guaranteed.

Contributions by anyone are welcome. I will however be ruthless in ensuring the documents available on the website are of the highest standard, consistent in nature and meet all legal requirements. Submissions therefore may be returned to you with some suggested changes. If however, you use the data provided and ensure all text and images are original, there should not be a problem. If you use different datasets or third-party images evidence needs to be provided that you have obtained permission to use them from the copyright owner. To keep with the theme of this website, this information should be made available so it can be downloaded from this website or a link to a publicly available repository provided.

Contact Website Administrator

Please feel free to provide feedback regarding this website or its content. If you are reporting an error on a page please provide the FWG Document ID listed in the metadata section of each page.

Thank you for taking the time to complete this form. Click on Submit when all the fields have been completed. After the email has been sent, it's content will be displayed in the browser so you can print or save a copy of it for your records.

Your Name
Your Email

Robot Email

External links and resources

Metadata related to this document

Series Metadata

foss Workflow Guides - Guides to the use of Free & Open Source Software
Simon Christopher Cropper

Document Metadata

Catalogue of Workflow Guides
Simon Christopher Cropper
29 October 2012
A catalogue of workflow guides for free & open source software
©Simon Christopher Cropper (All Rights Reserved)
Botanicus Australia Pty Ltd 2011 (All Rights Reserved)
Creative Commons Corporation 2011 (CC-BY)
World Wide Web Consortium 2011 (Terms and Conditions of Use)
Mozilla 2011 (Terms and Conditions of Use)
FamFamFam 2011 (Terms and Conditions of Use)