%META:TOPICPARENT{name="UsersGuide"}%
This is a short introduction to Foswiki.

%SLIDESHOWSTART%

---++ What is a Wiki?
<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" (and a perfect excuse for a picture of a cute girl in a hula skirt)
   * 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 you write is<br />... nicely presented<br />... remembered... and never forgotten
   * Write using state-of-the-art What-You-See-Is-What-You-Get (WYSIWYG) text editing <br />... or you can use a simple <em>topic markup language</em> that is quick to learn and easy to remember <br />... or you can use full HTML for complex formatting tasks

Foswiki is _also_ an "application platform" that lets you quickly build and use your own online applications.

Foswiki is an Open-Source development on http://foswiki.org/
   * governed by the Foswiki Association
   * with over 100 regular volunteer contributors in many countries
   * <u>F</u>ree <u>o</u>pen <u>s</u>ource wiki

---++ Foswiki features
Foswiki builds on the original Wiki concept, and adds features that make it very useful in a business environment.
   * *Revision control* of all pages, so a record of every change to every page is kept
     <table><tr><td valign="top"></td><td><td style="background-color:#D0D0D0">%BLACK%r6 &lt; r5 &lt; r4 &lt; r3 &lt; r2%ENDCOLOR%</td></tr></table>
   * *Powerful macros* allow _users_ to build and use their own online applications
   * *Highly configurable* look and feel, through use of templates
   * *Plugins interface* eases
      * customisation
      * extension
      * integration of existing applications
   * *Hundreds of extensions* support additional features and integrate third party applications
      * download from the [[Foswiki:Extensions][Foswiki Extensions website]] (like Android marketplace)
   * *Strong security*

---++ Applications of basic Foswiki
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:
<img style="float:right" src="%ATTACHURL%/lego.gif" alt="" />
   * for Content Management (CMS) of websites
   * for presentation development
   * as a Blog
   * as a (simple) database
   * as a project management system
   * for mashups
   * as a tracking tool
   * (<i>truth is, we don't really know its limits!</i>)

---++ Structure of a Foswiki page
Foswiki pages are called _topics_. When they are viewed in the browser, they are _usually_ organised into four parts:
   * A header
   * A menu
   * A body
   * A footer

   * The header and the footer are generated by the system
   * The menu is also generated by the system, but mainly from content provided by you
   * The body contains the text of the topic, 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, 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, or sometimes at the top, usually 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>

Often the site 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 that you can access

<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>%SANDBOXWEB% </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 %SANDBOXWEB% is a playground area.

Your wiki may contain any number of webs, and webs can contain other webs.

---++ The menu - part 3

Besides the Tools and Webs sections it is 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 usually 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 | View wiki text | Edit wiki text | More topic actions
</td></tr>
</table>

   * The Edit control 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
   * Backlinks shows which other pages link to this page
   * View Wiki Text is for viewing the raw markup
   * Edit Wiki Text is for editing the raw markup in a simple text editor
   * More topic actions - takes you to a menu of less-frequently-used features

---++ Editing Pages
   * You've read a page, and you disagree with it violently! It says:<br /> _Everyone_ *knows* that =the world= is an %BLUE%<u>OblateSpheroid</u>%ENDCOLOR%<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 a 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 Language" or "Text 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* |
        | %BLACK%<code>&nbsp;&nbsp;&nbsp;* Bullet</code><br /><code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;* Sub-bullet</code>%ENDCOLOR% | <ul><li>%BLACK%Bullet%ENDCOLOR%<ul><li>%BLACK%Sub-bullet%ENDCOLOR%</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
     | Cat | Feline |
     | Bear | Ursine |
     | Wolf | Lupine |
   * %<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_!
   * *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" id="foswikiAttachmentsTable" cellpadding="0" class="foswikiTable">
   <tr class="foswikiTableEven">
   <th align="center" valign="middle" style="text-align:center;vertical-align:middle;" class="foswikiFirstCol">
      <a rel="nofollow" href="#FileAttachmentTable">I</a>
   </th>
   <th align="center" valign="middle" style="text-align:center;vertical-align:middle;">
      <a rel="nofollow" href="#FileAttachmentTable">Attachment</a>
   </th>
   <th align="center" valign="middle" style="text-align:center;vertical-align:middle;">
      <a rel="nofollow" href="#FileAttachmentTable">Action</a>
   </th>
   <th align="center" valign="middle" style="text-align:center;vertical-align:middle;">
      <a rel="nofollow" href="#FileAttachmentTable">Size</a>
   </th>
   <th align="center" valign="middle" style="text-align:center;vertical-align:middle;">
      <a rel="nofollow" href="#FileAttachmentTable">Date</a>
   </th>
   <th align="center" valign="middle" style="text-align:center;vertical-align:middle;">
      <a rel="nofollow" href="#FileAttachmentTable">Who</a>
   </th>
   <th align="center" valign="middle" style="text-align:center;vertical-align:middle;">
      <a rel="nofollow" href="#FileAttachmentTable">Comment</a>
   </th>
   </tr>
   <tr class="foswikiTableOdd">
   <td align="center" valign="top" style="text-align:center;vertical-align:top;" class="foswikiFirstCol"> %ICON{txt}% </td>
   <td align="left" valign="top" style="text-align:left;vertical-align:top;"> [[#FileAttachmentTable][Sample.txt]] </td>
   <td align="left" valign="top" style="text-align:left;vertical-align:top;"> [[#FileAttachmentTable][manage]] </td>
   <td align="left" valign="top" style="text-align:center;vertical-align:top;">0.1 K</td>
   <td align="left" valign="top" style="text-align:left;vertical-align:top;">22 Jul 2000 - 19:37</td>
   <td align="left" valign="top" style="text-align:left;vertical-align:top;"> [[#FileAttachmentTable][ProjectContributor]] </td>
   <td align="left" valign="top" style="text-align:left;vertical-align:top;"> Just a sample </td>
   </tr>
   <tr class="foswikiTableOdd">
   <td align="center" valign="top" style="text-align:center;vertical-align:top;" class="foswikiFirstCol"> %ICON{gif}% </td>
   <td align="left" valign="top" style="text-align:left;vertical-align:top;"> [[#FileAttachmentTable][Smile.gif]] </td>
   <td align="left" valign="top" style="text-align:left;vertical-align:top;"> [[#FileAttachmentTable][manage]] </td>
   <td align="left" valign="top" style="text-align:center;vertical-align:top;">0.1 K</td>
   <td align="left" valign="top" style="text-align:left;vertical-align:top;">22 Jul 2000 - 19:38</td>
   <td align="left" valign="top" style="text-align:left;vertical-align:top;"> [[#FileAttachmentTable][ProjectContributor]] </td>
   <td align="left" valign="top" style="text-align:left;vertical-align:top;"> Smiley face </td>
   </tr>
</table>
</div>
_The links in the above table are just for show, and don't really go anywhere_

   * Attachments are simply files, in whatever format you want.
   * Foswiki recognises some file formats, notably image files (.gif, .jpeg, ...)
      * 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.

---++ That's fine for the internet, but...
People often say that wiki culture isn't appropriate in a corporate setting. Ignore them! Sharing information helps any company work more efficiently. However, there may be genuine security concerns, so:
   * Viewing/editing topics can be restricted to any indvidual, or group of individuals
   * Foswiki can be integrated with corporate single-sign-on solutions

---++ 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.

---++ Contributed features
Basic Foswiki is rich with features, but is enriched even further by optional extension modules that may (or may not!) be installed in your Foswiki. These are usually classified as __skins__ (modules that change the look-and-feel), __plugins__ (modules that enhance functionality), __wiki applications__ (sets of topics that implement an application) or __contribs__ (modules that customise foswiki at a deep level).

When Foswiki is first installed, it comes with a default set of extensions pre-installed; you can see the list by visiting the %SYSTEMWEB%.InstalledPlugins page.

There are a huge number of other extensions available from http://foswiki.org/Extensions

---++ Foswiki and TWiki
Anyone surfing the web may have come across another wiki called "TWiki" which
in many respects is similar to Foswiki. This is because Foswiki is a fork from
the TWiki project. The fork happened because most of the developers of
TWiki rejected a for-profit commercial takeover of the project by the founder,
and forked the project to start Foswiki.
   * Foswiki is *free* - totally free - and will always remain so.
   * Foswiki is governed by a non-profit foundation, which is funded
     by subscriptions.
   * Foswiki is under continuous development by a large team of volunteer
     developers.
The Foswiki development team acknowledges a huge debt of gratitude to the
founder of TWiki, and wishes him well in his commercial exploits.

---++ Getting more information
Foswiki has been developed for over ten years, and there's
a lot of it. It can be daunting at first, so don't try to learn the whole
thing in one go. The best way to start is to use it, and when you need to do
something new, browse this web or look for examples online.

If you get stuck, you can refer to the http://foswiki.org/Support web, which has a wealth of online resources, or join the friendly Foswiki IRC channel at irc://irc.freenode.net/foswiki

---++ 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%
%SLIDESHOWEND%

__Related topics:__ WelcomeGuest, WikiCulture, TwentyMinuteTutorial, TopicsAndWebs
