Jul 03 09

"Fight: Wiki vs CMS" @ USI 2009

I've had the pleasure of presenting at talk with Tugduall Grall from eXo Platform on "Wiki vs CMS" at this great USI 2009 conference.

It was great to see such a turn up (the room was packed with people standing up) thus proving that lots of people are wondering what are really the differences between those 2 technologies and whether they are going to converge or not.

The main message of the talk was:

  • For collaboration on content the wiki is king
  • For publication of content the CMS is king

Here are some details that were given verbally.

Slide 4 ("Edition de contenu")

  • CMS
    • Strong focus on content publication
    • Strong Navigation / Categorisation
    • Publication processed based on user roles and permissions
    • Strongly structured content, existing content, known initially
    • Document models (article, calendar, product sheet, ...)
  • Wiki
    • Strong focus on collaboration and content creation
    • The content self organize as time progresses
    • Content not known initially
    • Navigation using content (linking)
    • Validation process based on collaboration ("collective intelligence")
    • Innovation zone

Slide 7 ("Les wiki dans l'Entreprise")

  • Wikis are on the verge of becoming mainstream in the Enterprise according to Gartner
  • When this happens we'll see RFP for Enterprises looking for a Wiki (compared to the situation right now where it's users/projects installing Wikis) and it'll be IT departments who will provide on demand wiki farms for projects.

Slide 9 ("Quiz")

  • We asked attendants whether they thought that the site done with a Wiki was the left one or the right one. The majority said it was the left one. Bad luck since it's the right one (France 2025) that was done with XWiki.
  • This show that a web site and nice looking one at that can be realized with both tools. Wikis are no longer reserved for "ugly" sites ;)
  • However the main reason that the France2025 was done with a wiki (XWiki) is that most of the site is about collaboration. It's about allowing French citizens to make proposals of what they think France should do at the 2025 horizon. They can also comments and rates proposals.
  • On the opposite the left site is the belgium Tax payer site which requires strong validation before publication and hence was done with a CMS (eXo Platofrm) using a strong workflow.
  • Thus even though both tools can be implemented for web sites the usages still mandate using a wiki or a CMS.

Slide 20 ("Outsider: Google")

  • The conclusion was that Google was not really seen as a competitior but more someone you integrate with rather than compete with.
  • Both XWiki and eXo had done integrations in the past with Google Docs/Spreadsheet and both are very eagerly waiting for integrating with Google Wave when it's out

Jun 25 09

XWiki @Jazoon 2009

I had the pleasure of presenting a talk on "Next generation Wikis: Mixing Content-Oriented Applications with Wikis" at Jazoon 2009.

Abstract:

The talk will present and demo characteristics of next generation wikis based on the XWiki open source project:
  • Ability to develop content-oriented applications directly inside wiki pages
  • Polyglot wiki: support of multiple wiki syntaxes
  • Polymorphism: ability to use the wiki as a web site, an intranet or as a lightweight CMS
  • Semi-structured: Mixing of structured information with free form content
Today, Web 2.0 applications are all the rage. A key feature of Web 2.0 applications is the ability to offer collaboration features to its users. Next Generation wikis offer a generic development platform that offers high level services for writing collaborative applications on top of them, such as Document editing and versioning services, multiple syntaxes services, rendering services, PDF/RTF/HTML export services, WYSIWYG editing, REST/GWT/XMLRPC service support, Storage services, Search services, multi instance services and a lot more.

The talk will demonstrate real-world realizations using next generation wikis showing what can be done and will assert that next generation wikis are one more tool in the developer's bag of tools to consider when developing collaborative and content-oriented web applications.

The demo I did was about creating a Holiday Request application from scratch inside XWiki.

Apr 29 09

New XWiki 2.0 wiki syntax

Starting with XWiki Enterprise 1.7 we've released a new wiki syntax for XWiki (Since XWiki is now Polyglot you can continue to use the old XWiki syntax or use other wiki syntaxes). We're calling this new syntax by the delicious and original name of "XWiki 2.0 Syntax".

Here are some salient points of this new syntax:

  • More consistent syntax and less error prone. All special syntax characters such as bold symbols, italics symbols, link symbols, etc all use 2 characters to prevent ambiguity in case you wish to use that character in your text. For example for bold you can write:
    **bold** but this is a star *
  • Very close to Creole 1.0 (see the Creole 1.0 syntax). The goal of Creole is "a common wiki markup language to be used across different wikis. It's not replacing existing markup but instead enabling wiki users to transfer content seamlessly across wikis, and for novice users to contribute more easily".
  • Meaningful new lines and spaces. This mean new lines are honored unlike traditional wiki-style new lines which are ignored. This was the number one feature asked by our users.
  • Ability to enter wiki syntax in link labels. For example to add an image link you'd write:
    [[image:Space.Page@my.png>>reference]]
  • Ability to pass parameters to any syntax elements including the ability to easily style them. For example to style a portion of text or a section header you can use:
    Some (% class="myclass" style="background-color:#E4E4E5" %)styled text
    (% style="color:blue" %)
    == header
  • HTML must now be entered using the HTML macro. This allows to enter non-interpreted HTML in the main text. It also provides security control to wiki admins if they want to prevent users from entering HTML (and thus potentially harmful javascript). In addition the HTML macro automatically converts invalid HTML into valid XHTML.
  • Easy linking to attachments using the link syntax. For example:
    [[label>>attach:Space.Page@img.png]]
  • Strong table syntax including ability to have table headers as columns or as rows.
  • Added scripting macros to enter XWiki scripts (We support JSR 223). For now we have official support for Velocity, Groovy and Jython, meaning that the full XWiki API is available directly to you using any of these scripting languages.
  • Email-style quotations. For example:
    > john said this
    >> marie answered that
  • Ability to group syntax elements together and thus support very complex use cases such as a table inside a list item inside a table. For example:
    | (((
    * item1
    * item2
    )))
  • The syntax is powerful enough to represent most HTML elements thus allowing us to have a 100% bidirectional WYSIWYG editor with no information loss.
  • Syntax for monospace, verbatim, definition lists, and more.
See the XWiki 2.0 Syntax Guide for more details. Note that we have an automatic converter that converts XWiki 1.0 syntax into 2.0 syntax.

We hope you'll enjoy this new syntax which we've tried to make the most powerful wiki syntax out there. Feedbacks welcome! :)

Apr 05 09

How to improve XWiki comments experience

XWiki Enterprise allows users to leave comments on pages. However in order to prevent spam on your public wiki instance you usually only want to allow registered users the right to add comments. Thus we need a solution that still allows guest users to leave comments while preventing spam.

I'm proposing 2 solutions that I've both tried on this blog and that have worked well: Solution 1: create a special guest account that can be used transparently to leave comments. This can be achieved by creating a custom skin and tweaking the comments form Solution 2: integrate with an external comment web service such as IntenseDebate. This also requires a custom skin in order to override some templates.

Solution 1: Special Guest account

  • Create a "Guest" user by going to the Administration page.
  • Modify the Skins class so that the comments property points to the commentsinline.vm file (instead of the comments.vm one). Go to the XWiki.XWikiSkins page and change the Name field for the Comments property to "commentsinline.vm". Save.
  • In the Administration page, click on the Presentation icon and then click on the "Customize" button in the Skin section. Click "Edit this Skin" to edit the skin.
  • Modify the "Style" property field for better avatar display with the following content.
  • Modify the "Comments" property field with the following content. This change adds several fields to the comments form that guest users can fill and provide a direct link to log in guest users.
When done you should get the following comment feature:

solution1.png

Solution 2: Integration with IntenseDebate

  • Register on IntenseDebate to get a key to interact with their system.
  • Modify the Skins class to add 2 new fields so that we can override them. Go to the XWiki.XWikiSkins page and use the right panel to add 2 text area fields named "htmlfooter.vm" and "docextra.vm". Save.
  • In the Administration page, click on the Presentation icon and then click on the "Customize" button in the Skin section. Click "Edit this Skin" to edit the skin.
  • Modify the newly added "htmlfooter.vm" property field by adding the following content.
  • Modify the newly added "docextra.vm" property field by adding the following content. Make sure you modify the replace-with-your-intense-debateid-here value in the pasted content with your IntenseDebate id.
Here's what you'd get:

solution2.png

IntenseDebate is really nice and it offers the following features:

  • Comment threading
  • Reply by email
  • Importing / exporting comments
  • Commenter profiles
  • Reputation points and comment voting
  • Moderation / blacklisting, Profanity filter and Akismet spam filtering
  • Widgets
  • RSS feeds and reader tracking
  • Twitter / friendfeed integration
  • OpenID authentication
  • Commenter gravatar
  • HTML formatting

Feb 17 09

XWiki is a wiki right? Wrong!

Most people probably think that XWiki is a wiki. This is the same as saying that Eclipse is a Java IDE.

In the same manner that Eclipse is a generic platform for developing applications, XWiki is a platform for developing any type of collaborative web applications. You can view it as an Application Server offering high level services relevant to developing collaborative applications. Example of such services are: Versioning service, Document service, Storage service, Attachment service, Authentication/Authorization service, WYSIWYG editing service, Wiki Service, and more as shown on the diagram below

xwikiservices.png

Note that the list of services listed on the diagram is far from exhaustive and there are more since the image was created (like the GWT API, Scheduling service, REST API, etc).

So what type of collaborative applications can you develop with XWiki? Here are some examples:

Feb 06 09

XWiki: What's new in 2009

I was invited to present the XWiki project at the GlassFish TV yesterday.

That was fun: I was at home with a headset on a conf call (I was using skype), presenting a presentation I had sent earlier on to my host (Jacob Kessler from Sun). Jacob was recording live the audio and the presentation slides. I'm now eager to see the result and I hope the voice quality isn't too bad.

I presented quickly what XWiki is and moved to show XWiki's growth in 2008 and then moved on to the meat of the talk which were the new features the XWiki project is releasing with XWiki Enterprise 1.8.

Here are the slides (note that Slideshare didn't do such a good job of converting my ODP presentation so you might want to download the slides):

Jan 29 09

XWiki Roadmap for 2009 and 2008 project stats

I had the pleasure of presenting the XWiki 2009 Roadmap at a breakfast event organized by XWiki SAS.

I started the presentation by showing XWiki project stats for 2008, showing how active XWiki development is (see slides 3 and 4):

  • Downloads in 2008: > 130K (double the downloads of 2007)
  • Number of releases in 2008: 65 (13 final releases and 52 milestone releases)
  • Active committers: 14 (double the active committers in 2007)
  • Mailing list activity is exploding since 2008
Live stats can be also be found on SVNSearch (See this blog post for details on SVNSearch).

Here are the slides I presented (sorry they are in French and I did several demos you cannot see obviously):

Jan 15 09

OSSGTP at the Sun Open Source evening

Yesterday I have presented the OSSGTP Group at a Sun Open Source evening event.

Here are the slides:

If you're in Paris, France and you're an open source addict and developer come and join us. It's fun! Our mantra is Open Source from the source. The group is only composed of open source actors/developers. We meet every month (or we try to) and we have a diner together afterwards in pure French tradition… ;)

Jan 08 09

XWiki development in overdrive for 2009

As of January 2009 there are now 14 active open source committers who work daily on the XWiki code. The number of active committers have grown tremendously in the past year (we were roughly half of that a year ago). As a consequence the upcoming XWiki Enterprise release will be feature rich (some of the features are already in XWiki Enterprise 1.7) and the following features are all nearing completion:

  • New Wiki Syntax 2.0
  • New Rendering engine
    • Much faster
    • Way more powerful. We're now parsing document content and generating an internal object structure for it. Amongst other things it allows scripts to act on page content (semantic transformations are now possible and easy).
    • Polyglot. We now support several wiki syntaxes at once (you can choose the syntax on a page by page basis).
  • New WYSIWYG editor (based on GWT). We've rewritten from scratch our WYSIWYG editor to provide an editor that is performant, robust and that just works (none of the WYSIWYG editors we've tried out there were working! More on that in a future post)
  • Full WebDAV support
  • Office Import. All types of documents are going to be supported (old Microsoft Office formats, Open Office, etc).
  • Microsoft Office Plugin for editing and publishing wiki content directly from Microsoft Word.
  • New Query Manager (called XWQL, it's a JPQL superset) to easily create queries to query anything in the wiki. For example:
    "where doc.author = 'XWiki.JohnDoe' and doc.object(XWiki.XWikiUsers).email like '%xwiki.org'"
  • XWiki IDE (a.k.a XEclipse) with Syntax Coloring and auto completion on APIs:
    xeclipse.png
… and more (subject for another post)

All these are planned for March 2009. 2009 is looking to be a great year for the XWiki project.

Jan 02 09

XWiki is the first Polyglot Wiki

We're just finishing rewriting from scratch the XWiki rendering engine (it's already usable in XWiki Enterprise 1.7 and will be completely finished in 1.8). We were using Radeox but it's been dead for several years and it was just too limitating and slow (based on regex) for our need. As a consequence we now have a state of the art rendering engine that supports multiple wiki syntaxes, hence making XWiki the first Polyglot Wiki.

Supported syntaxes other than the XWiki syntax are: Confluence, JSPWiki, MediaWiki, TWiki, Creole and HTML/XHTML (for the intrepid ones). In addition we'll be adding new syntaxes as we progress since it's now very easy to do so.

syntax.png

What this means is that if you like XWiki and you want to switch to it but you don't want to learn another wiki syntax, you will be able to switch and keep using your favorite syntax. XWiki is even able to convert on the fly between one syntax and another (currently implemented only for some syntaxes).

Technically we have parsers for each syntax which transforms text into an internal representation using Java Objects (called XDOM) which we then traverse and render using one the available Renderers (XHTML Renderer, XWiki Syntax 2.0 Renderer to convert to XWiki Syntax 2.0, PDF/RTF Renderer, etc), as shown in the diagram below.

rendering-architecture.png

Note: Not all syntax elements are fully implemented for all syntaxes and we still have lots of fine tuning to work on so don't expect something perfect yet for syntaxes other than XWiki 1.0, XWiki 2.0 or HTML/XHTML syntaxes. In term of Renderers we currently have the XHTML and XWiki 2.0 Syntax ones implemented. The others are planned for later.

last modified by Vincent Massol on 2009/01/04 12:35

Creator: Admin on 2005/01/28 16:50
This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 2.0-milestone-1.21570 - Documentation