%META:TOPICINFO{author="ProjectContributor" date="1252721254" format="1.1" version="1"}%
%META:TOPICPARENT{name="UserDocumentationCategory"}%
This is a short introductory training course for Foswiki beginners.

%SLIDESHOWSTART%

---++ A Taste of Foswiki
<img src="%ATTACHURL%/hula.gif" alt="Hula girl"  width="113" height="111" align="right" />
The basic function of Foswiki is a Wiki (if that helps!)

A Wiki is like a web site, except that you can edit the content in your browser

   * "Wiki" is short for "wiki wiki", the Hawaiian for "Quick"
   * The idea originates from [[http://www.hyperdictionary.com/computing/hypercard][Macintosh Hypercard]], via [[http://www.c2.com/cgi/wiki?WardCunningham][Ward Cunningham]]
   * In Ward's words, Wiki is _"the simplest online database that could possibly work"_
   * A Wiki is basically a shared, online, persistent whiteboard

---++ Foswiki Wiki
<img src="%ATTACHURL%/whiteboard.gif" alt="Whiteboard" width="240" height="160" align="right" />
Foswiki implements the basic Wiki idea of a shared whiteboard

   * Anyone can add content<br />... or change what is written<br />... or change the organisation of the content
   * Whatever what you write is<br />... nicely presented<br />... remembered... and never forgotten

Foswiki also acts as an "application platform" to integrate a number of other functions.

Foswiki is an Open-Source development on http://foswiki.org/
   * governed by an association called Foswiki Association
   * with over 100 regular contributors in many countries

---++ Foswiki features
Foswiki builds on the original Wiki concept and adds a number of features that make it very useful in a business environment.
   * Foswiki pages are fully revision controlled, so a record of every change to every page is kept <table border="0" cellpadding="3" cellspacing="0"><tr><td bgcolor="#D0D0D0"><font color="black" size="-1">r6 &lt; r5 &lt; r4 &lt; r3 &lt; r2</font></td></tr></table>
   
   * The look-and-feel is highly configurable, through use of templates
<table width="100%"><tr><td valign="top">
   * A "plugins" interface eases
      * customisation
      * extension
      * application integration
</td><td align="right"><img src="%ATTACHURL%/lego.gif" alt="" /></td></tr></table>

---++ Applications of basic Foswiki
Basic Foswiki can be used as:
   * A whiteboard
   * A document repository
   * A collaborative authoring environment
   * A notebook / scrapbook
   * A chat room   

---++ Extended applications
Foswiki-with-extensions can be used as:
   * A Content Management System (CMS) for websites
   * A presentation development tool
   * A Blog
   * A database
   * A project management system
   * A tracking tool
   * (<i>truth is, we don't really know its limits!</i>)

---++ Structure of a Foswiki page
Foswiki pages are usually organised into three parts:
   * A header
   * A body
   * A footer

   * The header and the footer are generated by the system
   * The body contains the text of the page, as entered by you
Foswiki is very configurable, and the look can change. However the essentials will all be there on the page (somewhere!)

---++ The page header
The header of a Foswiki page is generally highlighted in colour, and will usually contain an icon that gives you an idea of where you are, such as a company logo. It will also usually contain:
   * A *Search* box that allows you to look for topics or content all over the Foswiki site 
   * A *Jump* box where you can type in the name of a page you already know.

#HeaderSample

<table border="0" cellpadding="5" cellspacing="0" style="width:100%; background-color:#AAAAFF; font-size: 18px;">
   <tr>
       <td valign="middle"> %ATTACHURL%/myco.gif </td>
       <td align="right" valign="top">
          <form name="jumpForm">
              <input id="jumpFormField" type="text" name="topic" value="Jump" size="18" style="color:#888888;" />
          </form>
          <form name="quickSearchForm" >
              <input type="text" id="quickSearchBox" name="search" value="Search" size="18" style="color:#888888;" />
          </form>
       </td>
   </tr>
</table>


---++ The menu - part 1

The menu, normally located either on the right or the left side of the content, by default includes a toolbox and a web section.

The Toolbox section contains these items

<ul style="list-style-type:none;">
<li> *Toolbox* </li>
<li> %ICON{"newtopic"}% Create New Topic - for creating new topics via a menu </li>
<li> %ICON{"index"}% Index - an alphabetical listing of all topics in the web </li> 
<li> %ICON{"searchtopic"}% Search - leads to a more advanced search page</li>
<li> %ICON{"changes"}% Changes - shows a list of recently changed topics </li>
<li> %ICON{"notify"}% Notifications - allows you to subscribe to receiving emails when topics change </li>
<li> %ICON{"feed"}% RSS Feed </li>
<li> %ICON{"statistics"}% Statistics - for the activities current web</li>
<li> %ICON{"wrench"}% Preferences - settings for the current web</li>
</ul>

It is common that the administrator simplifies the toolbox so you may not have all these items in your menu bar.

---++ The menu - part 2

The Webs section lists all the webs

<ul style="list-style-type:none;">
<li> *Webs* </li>
<li> <img src="%ICONURL{web-bg}%" border="0" alt="" width="16" height="16" style="background-color:#FFEFA6" />&nbsp;<nop>%USERSWEB% </li>
<li> <img src="%ICONURL{web-bg}%" border="0" alt="" width="16" height="16" style="background-color:#AAEFA6" />&nbsp;<nop>Myco </li>
<li> <img src="%ICONURL{web-bg}%" border="0" alt="" width="16" height="16" style="background-color:#44EFA6" />&nbsp;<nop>Project </li>
<li> <img src="%ICONURL{web-bg}%" border="0" alt="" width="16" height="16" style="background-color:#B9DAFF" />&nbsp;<nop>Sandbox </li>
<li> <img src="%ICONURL{web-bg}%" border="0" alt="" width="16" height="16" style="background-color:#FFD8AA" />&nbsp;<nop>%SYSTEMWEB% </li>
</ul>

A web is a collection of pages that are related closely together

The %USERSWEB% contains all the user home pages. The %SYSTEMWEB% contains documentation for Foswiki and all extensions. The Sandbox is a playground area.

The system administrator can add any number of webs to the system. 

---++ The menu - part 3

Besides the Tools and Webs sections it it common to add your own links to important places.

These menu points can be different from web to web.

<ul style="list-style-type:none;">
<li> *Myco* </li>
<li> Important topic</li>
<li> Company philosophy </li> 
</ul>


---++ The page footer
#PageFooter

Near the footer of the page you find an action bar which looks similar to this

<table border="0" cellpadding="5" cellspacing="0" style="width:100%; background-color:#2989BB; color:#FFFFFF; font-size: 18px;">
<tr><td>
Edit | Attach | Print version | History: r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions
</td></tr>
</table>

   * The Edit link takes you to an interactive page where you can change the page content using an advanced editor
   * The Attach link lets you attach files
   * Print version shows the page without any menus or top bars - for printing on paper
   * History allows you to see older versions and what changed from version to version
   * Raw View/Edit is for seeing and editing the raw markup
   * Backlinks shows which other pages link to this page
   * More topic actions - takes you to a menu of more advanced features 

---++ Editing Pages
   * You've read a page, and you disagree with it violently! It says:<br /> _Everyone_ *knows* that =the world= is an <font color="blue"><u>OblateSpheroid</u></font><br />But you know for a fact it is flat! ;-)
   * You've clicked the edit link, and an edit page has appeared. 
      * Depending on your site configuration and with some luck, you will see some kind of WYSIWYG-editor and can start writing right away.
      * But it might happen that it doesn't look much like what was on the page before - it's full of strange hieroglyphics!
<code>_Everyone_ <nop>*knows* that <nop>=the world= is an Oblate<nop>Spheroid</code>
   * Now what?

---++ What's in a page
   * The hieroglyphics are what's known as "Topic Markup" or "formatting"
   * They are a really simple way of telling the browser how you want the page to look
   * You don't have to use them
      * Foswiki understands pages in plain text just fine.<br /><br /> <code>Actually it is perfectly and absolutely flat</code><br /><br /> appears as <br /><br /> Actually it is perfectly and absolutely flat

---++ Formatting just makes pages prettier
... and easier to read<br /><br />
<code>_Actually_ it is <nop>*perfectly* and <nop>__absolutely__ flat</code><br /><br /> appears as <br /><br /> _Actually_ it is *perfectly* and __absolutely__ flat
   * A full description of all the formatting can be found in the %SYSTEMWEB%.TextFormattingRules and %SYSTEMWEB%.WikiSyntax
   * The best thing to do is just to type until you get stuck
      * then follow the link on the edit page to the help.

---++ Commonly used formatting
Foswiki understands pages in plain text just fine, but you can %RED% __jazz__ %ENDCOLOR%%GREEN% _them_ %ENDCOLOR%%BLUE% *up* %ENDCOLOR% using some simple formatting shortcuts. Here are some of the more commonly used ones:
   * <nop>---+ indicates a heading. Add more +'s for a deeper heading.
    | *You type* | *You see* |
    | %BLACK%<code>---+ This is a heading</code>%ENDCOLOR% | <h1>%BLACK%This is a heading%ENDCOLOR%</h1> |
    | %BLACK%<code>---++ And so is this</code>%ENDCOLOR% | <h2>%BLACK%And so is this%ENDCOLOR%</h2> |
   * %<nop>TOC% will insert a table of contents<br />

---++ More common formatting
   * A blank line gives a paragraph break<br />
   * <nop>--- on a line of its own gives a horizontal bar
   * Text in stars <nop>*like this* looks *like this* <br />
   * Text in underscores <nop>_like this_ looks _like this_ <br />
   * Text in equals signs <nop>=like this= looks =like this= <br />
   * Bulleted lists use three spaces followed by an asterisk (<tt>*</tt>) at the start of the line
      * The depth of the bullet is given by the number of spaces, in multiples of three
| *You type* | *You see* |
| <font color="black"><code>&nbsp;&nbsp;&nbsp;* Bullet</code><br /><code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;* Sub-bullet</code></font> | <ul><li><font color="black">Bullet</font><ul><li><font color="black">Sub-bullet</font></li></ul></li></ul> |
   * Numbered lists use a number in place of the <tt>*</tt>.  The list is numbered automatically, so you can just use a =1=

---++ Even more.....
   * You can create a table using vertical bars:
<verbatim>
     | Cat | Feline |
     | Bear | Ursine |
     | Wolf | Lupine |
</verbatim>
   * appears as
     | <font color="black">Cat</font> | <font color="black">Feline</font> |
     | <font color="black">Bear</font> | <font color="black">Ursine</font> |
     | <font color="black">Wolf</font> | <font color="black">Lupine</font> |
   * %<nop>RED% .... %<nop>ENDCOLOR% will change the colour of the enclosed text. Lots of colours are available (%RED%%<nop>RED%%ENDCOLOR%, %GREEN%%<nop>GREEN%%ENDCOLOR%, %BLUE%%<nop>BLUE%%ENDCOLOR% etc)

---++ Wiki<nop>Words
   * One special hieroglyph that is *very important* is a WikiWord
      * a word that starts with uppercase, then some lowercase, then more uppercase (a.k.a <nop>CamelCase)
   * This has a special meaning to Foswiki. If it matches the name of another topic, Foswiki will automatically create a link to that page for you.
   * If there is no such page, then the word is highlighted and has a question mark put after the word, LikeThis
   * If you click on the question mark, then Foswiki will invite you to create that page.

   * This lets you enter the names of topics you _think_ should exist, but don't yet
      * You, or someone else, can always come along later and click on the question mark!

---++ Referencing other pages and URLs
   * WikiWords automatically link to the target page
      * You can make these links easier to read using square brackets:
         * <code>[<nop>[WikiWords][bumpy words]] appears as [[WikiWords][bumpy words]]</code>
   * An ordinary URL pasted into text will appear as a link - http://www.google.com
      * You can also prettify URLs using square brackets:
         * <code>[<nop>[http://www.google.com/][Google]]</code> appears as [[http://www.google.com/][Google]]
   * Use %<nop>SEARCH. This is an interface to a sophisticated search engine that embeds the results of the search in your page. See [[%SYSTEMWEB%.Macros]] for full details.

---++ More formatting
   * There's *lots* more formatting available, see %SYSTEMWEB%.TextFormattingRules and %SYSTEMWEB%.WikiSyntax
   * _If you are a real masochist, you can even enter raw HTML tags!_
   * *Important* to _disable_ unwanted formatting, use =&lt;nop&gt;=
      * <code>&lt;nop&gt;_word_</code> appears as <nop>_word_

---++ Creating new pages

   *  Alternative ways:
      * Click on the question mark after a WikiWord
      * Type in the name of the topic in the "Go:" box
      * Type in the name of the topic in the URL 
   * Any time you try to visit a page that doesn't exist, Foswiki will invite you to create it.
   * Make sure the names of topics are always WikiWords.

---++ Attachments
   * Attachments are files which have been uploaded and attached to a Foswiki topic using the ==[Attach]== link in the toolbar.

#FileAttachmentTable
<div class="foswikiAttachments">
<table style="border-width:1px;" cellspacing="0" cellpadding="0" class="foswikiTable">
   <tr class="foswikiTableEven">
   <th bgcolor="#ffffff" align="center" valign="middle" style="text-align:center;vertical-align:middle;" class="foswikiFirstCol">
      <a href="#FileAttachmentTable" style="color:#0066cc">I</a>
   </th>
   <th bgcolor="#ffffff" align="center" valign="middle" style="text-align:center;vertical-align:middle;">
      <a href="#FileAttachmentTable" style="color:#0066cc">Attachment</a> 
   </th>
   <th bgcolor="#ffffff" align="center" valign="middle" style="text-align:center;vertical-align:middle;">
      <a href="#FileAttachmentTable" style="color:#0066cc">Action</a>
   </th>
   <th bgcolor="#ffffff" align="center" valign="middle" style="text-align:center;vertical-align:middle;">
      <a href="FileAttachmentTable" style="color:#0066cc">Size</a>
   </th>
   <th bgcolor="#ffffff" align="center" valign="middle" style="text-align:center;vertical-align:middle;">
      <a rel="nofollow" href="#FileAttachmentTable" style="color:#0066cc">Date</a> 
   </th>
   <th bgcolor="#ffffff" align="center" valign="middle" style="text-align:center;vertical-align:middle;">
      <a rel="nofollow" href="#FileAttachmentTable" style="color:#0066cc">Who</a> 
   </th>
   <th bgcolor="#ffffff" align="center" valign="middle" style="text-align:center;vertical-align:middle;">
      <a href="#FileAttachmentTable" style="color:#0066cc">Comment</a>
   </th>
   </tr>
   <tr class="foswikiTableOdd">
   <td bgcolor="#ffffff" align="center" valign="top" style="text-align:center;vertical-align:top;" class="foswikiFirstCol"> %ICON{txt}% </td>
   <td bgcolor="#ffffff" align="left" valign="top" style="text-align:left;vertical-align:top;"> [[#FileAttachmentTable][Sample.txt]] </td>
   <td bgcolor="#ffffff" align="left" valign="top" style="text-align:left;vertical-align:top;"> [[#FileAttachmentTable][manage]] </td>
   <td bgcolor="#ffffff" align="left" valign="top" style="text-align:center;vertical-align:top;">0.1 K</td>
   <td bgcolor="#ffffff" align="left" valign="top" style="text-align:left;vertical-align:top;">22 Jul 2000 - 19:37</td>
   <td bgcolor="#ffffff" align="left" valign="top" style="text-align:left;vertical-align:top;"> [[#FileAttachmentTable][ProjectContributor]] </td>
   <td bgcolor="#ffffff" align="left" valign="top" style="text-align:left;vertical-align:top;"> Just a sample </td>
   </tr>
   <tr class="foswikiTableOdd">
   <td bgcolor="#ffffff" align="center" valign="top" style="text-align:center;vertical-align:top;" class="foswikiFirstCol"> %ICON{gif}% </td>
   <td bgcolor="#ffffff" align="left" valign="top" style="text-align:left;vertical-align:top;"> [[#FileAttachmentTable][Smile.gif]] </td>
   <td bgcolor="#ffffff" align="left" valign="top" style="text-align:left;vertical-align:top;"> [[#FileAttachmentTable][manage]] </td>
   <td bgcolor="#ffffff" align="left" valign="top" style="text-align:center;vertical-align:top;">0.1 K</td>
   <td bgcolor="#ffffff" align="left" valign="top" style="text-align:left;vertical-align:top;">22 Jul 2000 - 19:38</td>
   <td bgcolor="#ffffff" align="left" valign="top" style="text-align:left;vertical-align:top;"> [[#FileAttachmentTable][ProjectContributor]] </td>
   <td bgcolor="#ffffff" align="left" valign="top" style="text-align:left;vertical-align:top;"> Smiley face </td>
   </tr>
</table>
</div>

   * Attachments are simply files, in whatever format you want.
   * Foswiki recognises some file formats, notably image files (.gif)
      * Write =%<nop>ATTACHURL%/myco.gif= to see this: %ATTACHURL%/myco.gif

---++ Wiki Culture
Enough about mechanics; how is a wiki actually _used_ ? Well, that's really up to you, but there are a number of tricks that the wiki community has developed for collaborative writing that work pretty well:
   * What can I edit?
      * Anything. But it's good etiquette to sign your contributions
      * If someone doesn't want you to edit a page, it's up to them to say so, clearly, on the page
   * But what if somebody doesn't like my edits?
      * In Foswiki, they can always recover the old revision and re-instantiate it if they really want to
      * Otherwise they should regard your changes as an opportunity for discussion
   * Pages in wiki are (usually) in one of three "modes"
      * Document<nop>Mode
      * Thread<nop>Mode
      * Structured<nop>Mode
Foswiki doesn't automatically distinguish between these modes; they are purely semantic.

---++ Document<nop>Mode
   * A page in Document<nop>Mode usually comprises a contribution which is written in the third person and left unsigned.
   * The piece of text is community property
      * It may have multiple and changing authors as it is updated to reflect the community consensus.

---++ Thread<nop>Mode
   * Thread mode is a form of discussion where the community holds a conversation
   * The discussion usually starts out with a statement, at the top of the page, that is subsequently discussed
   * The page may be periodically "refactored" (edited) to remove some of the comments
      * As long as the comment is accurately reflected in what replaces it, nobody usually minds.
      * Remember to always maintain a complete list of contributors, though!
You may see a comment box on a page in Thread<nop>Mode that makes it easy to quickly add your inputs. Typing in a comment and adding it to a page this way is known as "blogging" ;-)
   * Thread<nop>Mode is rather like an e-mail thread
      * Except that new comments are usually added to the end
   * Thread<nop>Mode pages often get refactored into Document<nop>Mode

---++ Structured<nop>Mode
   * A page in Structured<nop>Mode follows some predefined structure for example
      * An agenda
      * A set of meeting minutes
      * A requirement description.
   * Pages in Structured<nop>Mode will usually have rules governing how they are edited.

---++ Other Wiki tricks - Categories
   * A Wiki trick for grouping pages together
   * Example: to group together a set of pages all relating to the weather:
      1 Create a page called 'Category<nop>Weather'
      1 Put a SEARCH that contains the word 'Category<nop>Weather' into it
         * <code>%<nop>SEARCH{"Category<nop>Weather" nosearch="on" nosummary="on"}%</code>
      1 Put the WikiWord 'Category<nop>Weather' on all the pages relating to the weather<br />(usually at the bottom, below a horizontal bar)

---++ Contributed features
Basic Foswiki is rich with features, but is enriched even further by the addition of optional plug-in modules that may (or may not!) be installed in your Foswiki. These are classified as either __skins__ (modules that change the look-and-feel) or __plugins__ (modules that enhance functionality).

Here's a brief description of some of the more common plugins, together with the tags you might expect to see in topics if they are used. You can find out more by visiting the plugin pages.
   * Action<nop>TrackerPlugin: Support *action tags* in topics, with *automatic notification* of action statuses <code>%ACTION...</code>
   * Calendar<nop>Plugin: Show a *monthly calendar* with highlighted events <code>%CALENDAR...%</code>
   * Comment<nop>Plugin: Support *rapid entry of short comments* (also known as <b>blogging</b>) <code>%COMMENT...</code>
   * Chart<nop>Plugin: Create PNG or GIF *charts to visualize data in Foswiki tables* <code>%CHART...</code>
   * Edit<nop>TablePlugin: Edit Foswiki tables using *edit fields and drop down boxes* <code>%EDITTABLE...</code>
   * Interwiki<nop>Plugin: Define *shortcuts* for links to *common external sites*

---++ More plugins
   * Render<nop>ListPlugin: Render *bullet lists in a variety of formats* <code>%RENDERLIST...</code>
   * Slide<nop>ShowPlugin: *Create web based presentations* based on topics with headings <code>%SLIDESHOWSTART...</code>
   * Spread<nop>SheetPlugin: Add *spreadsheet calculations* like "$SUM( $ABOVE() )" to tables located in Foswiki topics <code>%CALC...</code>
   * Table<nop>Plugin: Control *presentation and sorting of tables* <code>%TABLE...</code>
   * TWiki<nop>DrawPlugin: Add *quick sketches* to pages <code>%DRAWING...</code>
The following plugins are installed on this Foswiki: %ACTIVATEDPLUGINS%

There are many other plugins, see http://foswiki.org/Extensions/WebHome

---++ Credits and Acknowledgements
   * This training was developed by Foswiki:Main.CrawfordCurrie on behalf of [[http://www.oxamer.com/][Oxamer]], one of the companies in the [[http://www.ogt.co.uk/][Oxford Gene Technology]] group.
   * Valuable contributions were also received from the Foswiki Open Source community; special mentions go to:
      * Foswiki:Main.WalterMundt
      * Foswiki:Main.SvenDowideit
   * The latest version of this presentation is available at Foswiki:%WEB%.%TOPIC%, where you can also provide feedback
%SLIDESHOWEND%

__Related topics:__ WelcomeGuest, WikiCulture, TwentyMinuteTutorial, TopicsAndWebs, WorkingTopics

