Folksonomy in the Enterprise: Will it pay off?

Although semantics in content management are being discussed and marketed for a long time already and always make up for a cool topic at conferences, they are rarely being used in real life. It is already hard enough for CMS users to get the content right and it is even harder to put it in the right context of a metadata set (especially if it is a large controlled vocabulary). This is where corporate “librarians” come into place, who control the use of controlled metadata – but they cost money…

Theresa Regli, principal with CMS Watch, published the article Human Touch, discussing today’s problems and solutions to motivate users of content management systems to annotate/tag/classify/etc. information with metadata. The currently preferred solution for the taxonomy dilemma is group-dynamic annotation (folksonomy), as the article states:

â??The best motivation for tagging is almost instantaneous feedback,â? adds Busch. â??Things like Flickr, del.icio.us, and Technoratiâ??the key to those is the instantaneous feedbackâ??the alerts, the feeds, the group tagging. Thatâ??s why people get into it and get excited about it.â?

It will be interesting to see, how large businesses and SMEs will adopt that strategy. They are not likely to communicate with the outside world to establish a swarm-intelligent taxonomy. Large enterprises might set up their own tagging infrastructure, while SMEs fall back to existing vocabularies, but don’t share the tagged information externally.

Additionally, there are different levels of confidentiality concerning corporate information: Some of it is for all employees, other only for the top management, certain teams, etc. This fragments the group-dynamics due to confidentiality gaps especially in large enterprises, who could actually profit from a broad collective intelligence when it comes to a high quality folksonomy.

The big hope concerning Social Tagging For The Enterprise is of course to optimize knowledge flows and to save money. Yet, it needs to be testified whether collaborative annotation can really live up to its expectations in firms. The larger and more complex the corporate environment, the more likely you will need dedicated and professional metadata reviewers. It would be an illusion for large enterprises that folksonomy translates into knowledge-management-for-free. SMEs on the other side could suffer from limited resources to ever have a useful folksonomy at hand. They might be blinded by a massive tag cloud.

On the other side, as with all data that becomes part of the public domain: in the end, all sorts of enterprises and organizations could profit from social annotation, simply because experiences are already being made by many people. Related Open Source software and publicly showcased approaches are being constantly refined, existing tag collections are readily available to be directly included or used for inspiration. That will in sum lift up all enterprises when it comes to how effectively they make use of their organizational knowledge with the help of a tagging staff.

The question is not, how much enterprises will profit from folksonomies, the question is how effectively they will make use of it by combining social software with a corporate culture where most of the employees are happy to share what they know by providing hints what their knowledge means to colleagues.

Syntax Highlighting in WordPress

After some research, I decided to use the iG:Syntax Hiliter v3.5 plugin in my WordPress 2.0.5.

Installation and use are fairly easy. I only adjusted syntax_hilite_css.css which ships with the plugin to get an output compatible with my site’s style.

Here’s the CSS code and itself a demo of the plugin:

[css]

.syntax_hilite, li .syntax_hilite {
padding:3px 3px 10px 8px; border:1px solid #aaaaaa; background-color:#FEFEFE;
font-family:’Courier New’,Courier,monospace;
/* comment the line below to remove scrolling in code boxes */
overflow:auto; white-space:nowrap;
}

/* change this line to set the width of code box */
.syntax_hilite {
width:100%;
}

/* change this line to set the width of code box in a list */
li .syntax_hilite {
width:100%;
}

/* text bar above code box */
.igBar {
width: 100%;
text-align:right;
text-decoration:none;
font-size:10px;
padding-top:1px;
margin:0px;
}

.igBar a {
text-decoration:none;
text-transform: lowercase;
border-left: 1px solid #aaaaaa;
border-top: 1px solid #aaaaaa;
border-right: 1px solid #aaaaaa;
padding:2px;
}

.syntax_hilite .langName {
color:#000000;
font-weight:bold;
}

.syntax_hilite textarea {
margin:0px -5px -2px 0px;
border:none;
}

[/css]

Read here about which other useful WordPress plugins I use.

Migrating Old Permalinks to WordPress

Now that I migrated to WordPress for blogging, the permalinks of my previous blog entries have changed.

For example:

/article_php_5_enterprise_edition_available_online

changed to:

/2006/11/26/article-php-5-enterprise-edition-available-online/

My initial idea was to use mod_rewrite by adding a RewriteRule for each old link redirecting to the new location, but that looked like a lot of copy&paste to me and would not teach me anything new.

Instead, I chose to redirect requests for old links to the WordPress search page. Try it out yourself: Click on this old permalink /article_php_5_enterprise_edition_available_online and you will be redirected to the search page, which displays the blog entry to you as a search result. This looks like a more flexible solution to me, just in case that my permalinks might change again one day.

The implementation was simple. I added a few lines of PHP code to the 404.php page of my WordPress theme as described in the support topic 404 Search Function for WordPress. I also added a header redirect directive.

This is the full code:

[php]

// Adjust if WordPress is located in subdirectory,
// e.g. http://www.example.com/weblog. Otherwise leave empty.
$blog_uri = ‘weblog’;

// Don’t change from here.
$search_url = $blog_uri.’/?s=’;
$search_term = urldecode( substr($_SERVER[‘REQUEST_URI’],1) );
$find = array(“‘”.$blog_uri.”‘”, “‘/'”, “‘[-/_]'”) ;
$replace = ” ” ;
$new_search = preg_replace($find, $replace, $search_term);
$new_search = urlencode($new_search);

// Redirect to search page.
header(“Location: /”.$search_url.$new_search.”&http_status=404″);
exit;
[/php]

Notice that for security reasons, I use urlencode() for the search page URL to avoid HTTP Response Splitting.

Useful Extensions for WordPress and MediaWiki

These are the WordPress and MediaWiki extension I use on my site:

WordPress Plugins

  • Ultimate Tag Warrior: Very nice and powerful plugin which lets me add tags to my blog entries and display the tag cloud in the sidebar. It also allows me to retrieve tag suggestions from Yahoo! for a post – easy to install and configure and very helpful!
  • WP-Leftycats: A mini patch which makes the feed icons display to the left side of a category name. I was just too lazy to hack it myself 🙂

MediaWiki Extensions

  • GoogleMaps: This extension allows me to show where I am located on the page with my contact details.
  • XFeed: Aggregates RSS feeds and displays them from within MediaWiki. Look at the startpage of my site to see it in action. There I show the 5 latest blog entries. I had to tweak the code a bit though, from $feedItems = array(); to $feed->items = array();. The author had it the right way initially, don’t know why he changed it.

My site with new design and software

I have made myself a little christmas present and redesigned my homepage on sandro.groganz.com. Furthermore, I have changed the software to WordPress and MediaWiki. Some long evenings and short nights have come to an end.

I am particularly happy about using MediaWiki now. Hey, weeee, I use the same software as Wikipedia does :). While transfering the contents from the old homepage to my new one into MediaWiki, I was quite suprised how well the default CSS formatting works and how we all got used to it by using Wikipedia. Hence, I did not change the formatting of contents. Actually, the same is true about the default CSS of WordPress, which is also widely used on the Web.

Big thanks go to Gassi of Netzwirt, who helped me very quickly by moving my domain to a PHP 5-enabled server. I am very happy with his hosting service for my site – no problems since 2,5 years.

Merry christmas to all of you!

Goodbye eZ systems

… and thanks so much!

I have had a great time at eZ systems, both from a professional and a personal perspective: Having started as a System Developer in Nov 2004, I learned more about the technical details of eZ publish. My following roles included consulting, training, conference and customer presentations, pre-sales, etc. After 1 year at eZ and having gained a good overview of most business areas, I became part of headquarters management and ended up being the VP Communication, doing strategic governance of all global marketing and knowledge management at eZ systems.

Now it is time for me to start something new, with a different focus, where I can apply and further extend the broad skill set I was able to develop at eZ.

Article "PHP 5 Enterprise Edition" available online

I just found that my article entitled PHP 5 Enterprise Edition is now available online. It has initally been published in the
International PHP Magazine.

From the introduction:

Today, J2EE could be named the de facto industry standard for the development of distributed multi-tier architecture applications. It is backed up by industry leaders like Sun, Oracle, BEA, and IBM. This article will compare PHP’s software stack with what’s available in (and for) J2EE, to overcome the typical Java versus PHP discussions that usually focus on language features, but do not take into account the overall picture. Basically, this article assembles a PHP5 Enterprise Edition (PHP5EE).

Although this article is almost 3 years old, it is still very interesting to read. Especially when reading the following sentence or projection in the article’s summary:

In no way should this article be a dispraise of all the good volunteer work that happens in the PHP community, but it definitely needs more successful companies in the PHP market who continuously climb up the ladder and extend the PHP software stack.

Considering that since the article has been published, two companies (eZ systems and Zend) have started to create their own libraries aka frameworks to extend the PHP software stack (eZ components and Zend Framework), I would say that PHP is on the right way and that my article was quite influential 🙂

eZ systems' new strategy and the PHP market

Today eZ systems published an article entitled Platform and Solutions Strategy by Aleksander Farstad, CEO eZ systems.

This article sheds a light on the big picture why eZ systems develops the eZ platform and how this relates to the eZ publish CMS. It also talks about eZ systems planning to offer various other software solutions on top of the eZ platform.

In this blog entry, I won’t talk about the article itself because it speaks for itself. Instead, I will have a look at how does eZ systems’ strategy relate to the PHP market?

Mature market

First of all, eZ systems is the first company in the PHP application development domain that I know of, which actually announces such a long-term strategy. I am not talking about purely technical sofware roadmaps, I am talking about the combination of business and software development. This is a novelty in the PHP market.

This shows that the PHP market has matured substantially, that companies like eZ systems have grown big enough in terms of resources and experience so that they can envisage a long-term strategy of that scope. It also means that there is demand in the market for long-term planning, mature enterprise-grade software and related services.

The PHP-way

When looking at the eZ platform, the PHP platform by eZ systems, one could argue that PHP simply follows Java and that this is what J2EE offers. Nevertheless, there is a good reason why eZ systems does not simply port J2EE to PHP or any other software platform: there is something like the PHP-way of doing things. eZ systems has a market track-record of 6 years in PHP development, they know about the best practices that have emerged by using PHP.

PHP developers think in a different way compared to Java developers. There’s a subtle difference in approaching problems, that can make a big difference when you look at the actual solution. What the new eZ systems strategy tells us is: PHP has reached a level where it has proven that it can serve as a serious alternative for solving highly complex software problems.

Market-driven approach

About 2 years ago, International PHP Magazine published an article of mine about “PHP5EE” where I wrote, that it needs more companies who further develop the market for generic PHP platforms. We are at this point today.

Note that PHPLIB and PEAR are both community projects. Yes, they also had a commercial background, because in most cases they evolved from customer projects, but there was no business model behind those projects, rather a community model. With eZ components, the PHP components library by eZ systems, the first serious project in that area driven by one company has been introduced.

This evolution is in sync with the typical evolution of an Open Source market that starts off with community-driven projects being accompanied by more and more similar company-driven projects.

For example, PEAR provides object-oriented PHP libraries and has established a community. It has actually proven that there is a need for something like that in the PHP world and that it can be done with PHP. A growing market for OO PHP libraries evolved and there came up the need for a party doing constant maintenance, guaranteed support and related services. This is where eZ components backed up by eZ systems came in.

Raising the standard

eZ platform will be more then just eZ components, it will also include the eZ application server and various
functionality plugins. With eZ platform, eZ systems will raise the standard for what a PHP platform is supposed to be. Companies that still neglect PHP might then consider its usage. Due to the fact that eZ platform will be Open Source, there is a big chance that the whole PHP market will profit from that.

Winners of eZ awards 2006

Just a few days ago, at the eZ publish conference 2006, we had the very first eZ awards night.

The eZ awards is a prize awarded by eZ systems during its annual conference to give special recognition to key people within the eZ ecosystem.
It was a great show, the winners were overwhelmed and the audience had a lot of fun celebrating.

Check out the eZ awards pages and you can tell from the pictures how great an event this was.