Why do CMS projects fail?

By |August 22nd, 2008

A (prospect) client asked me this morning why 85% of enterprise content management implementations fail. Well, here is the long answer:

There are numerous reasons for this high rate. For one, web architectures are complex implementation projects. Requirements are often not well understood, leading to bad software purchase decisions (“putting the cart before the horse”) and architectural choices. The largest group of in-house stakeholders, the content editing community, is often ignored and set to deal with unusable user front-ends and complex publishing workflows, preventing necessary user adoption. Content is often stored in presentation-heavy formats, content re-use across channels and applications is time-consuming or even impossible, the resulting duplication of content leads to inconsistent web experiences.

The remedy for these problems on the one hand lies in the definition sound processes and establishing clear channels of communication between stakeholders. On the other hand, building a solid technology foundation is another vital aspect. Not only must this foundation be flexible, stable, and easy to use, but the defining principles must be upheld while the system is in operation and undergoing maintenance and feature release cycles. I have seen large-scale implementations that had to be replaced after only 2 years of being in operation because the software got unmaintainable, slow, and the site feature-set was locked in by technology reasons only (“maintained to hell”). On the other hand, I have built sites that serve over a billion page impressions a month, that have gone through multiple visual redesigns, all on a technology platform that has been in place for 5+ years now.

So, in summary

Heavily involve the business stakeholders throughout the project
Build the system to enable the content editors to efficiently maintain the site content and structure themselves. Any reliance […]

Why the Olympics didn’t ‘Melt’ the Internet

By |August 18th, 2008

This is a very interesting article about why the video traffic from the Olympics didn’t “melt” the internet. LimeLight (unlike Akamai) actually runs their own backbone which keeps a lot of traffic off the internet:

Read more at zdnet.

Crap, my company might be for up grabs (updated)

By |August 14th, 2008

According to the Media Bistro:
Avenue A|Razorfish could be up for sale by Microsoft, a spy tells us, possibly to WPP. From the beginning of the relationship, AA|RF has been an odd fit for Microsoft, and based on a few strong indicators, we surmise a sell off before too long.

When you’re spending $6 billion to pick up a company like Redmond, it makes sense to get as much for your money as possible. That seems to be what Microsoft was thinking when they kept AA|RF — but a year later the agency is broadening its horizons, expanding services to “a media and entertainment consulting practice with 200 staffers in New York, L.A. and San Francisco,” according to Silicon Alley Insider.

More after the jump.

Internally, many believe that Microsoft never planned to keep the agency within its roster. For starters, we’ve learned that AA|RF employees haven’t been switched to Microsoft benefits.

Also, the new SF offices are “oddly configured to fit WPP standards, a radical change from the fun, bigger spaces of the old AA/RF office.” I guess you’d have to work at WPP to know exactly what that means — but it sounds as though AA|RF has been told to keep it in its pants if it wants to marry a nice girl one day.

One final oddity, SF based employees were told not to order “new business cards printed with the new office address until future notice.”
Update: I think this is a total joke. They’re enabling the Microsoft key card access in our building next Tuesday :) And, of course, Microsoft has actually upheld their promise to keep us at “arms-length”, i.e. still use whatever technology we see fit for exceeding the client’s needs.

Interacting with Holograms

By |August 5th, 2008

We’ve had a multi-touch Surface device at work for a while now and built a few neat prototypes with it. But this multi-touch emm multi-grab hologram looks way cooler. The demonstration shows a man interacting with holographic images projected before him, moving them around and resizing them. It’s only sort of like the Minority Report display, which used hand movements to control elements on a screen.

Sex, Drugs, Strawberries, and a New Bubble

By |July 31st, 2008

You might have read about Cuil, the supposed Google killer which indexes three times as much content as Google does. Too bad it never surfaces anything relevant for me. And have you noticed that the “Search 121,617,892,992 web pages” hasn’t changed in days? Ok, you might guess, they’re not really going to kill Google. Instead I think we’re really re-living some sort of strange bubble at the moment.

First of all, check this out to get an insight into the inner workings of Cuil as a company. That sounds very 1999.

Secondly, working for the largest interactive agency in the world™, I’ve seen a lot of requests for proposals from a lot of companies that all want to build video search portals. That seems to be the next big thing. There are a few cool players out there, Truveo is one of them. Select sites are trying to index the videos by scene detection and voice recognition software in addition to standard metadata.

A lot of players want to build similar portals all of a sudden. Unfortunately there aren’t any really viable off-the-shelf search engine technologies you can buy to do this right. If I look at FAST Search, which is still one of my favorite engines and happens to be owned by Microsoft, they have a multimedia search add-on I want to evaluate soon (yet I’m told not to get my hopes up). I think sophisticated video search portals will be limited to a very few capable players that can invest in the technology themselves and have the proper funding for the R&D and necessary server farm required to parse through all video on the web.

And just to round off the argument, I am surprised at […]

Ode to M0n0wall

By |July 30th, 2008

About half a year ago I bought an Alix 2C3 embedded system board. It’s got a 500 MHz Geode CPU, 256 MB of RAM, a mini-PCI slot (for a wireless card), 3 network interfaces, and a compact flash slot (CF-card as hard drive). It’s running m0n0wall, a free FreeBSD-based firewall software and is essentially the entry point into my home network. I had looked at other alternatives such as pfsense, yet I found m0n0wall convincingly simple and to the point. And it boots up fast from a 256M flash card.

I used to rely on a Linux box to provide my basic network needs like DHCP and DNS and every time I rebooted the box my network stopped working. This little dedicated box is not running all of it. With the three network interfaces I created LAN, DMZ, and WAN zones. The LAN is hooked up to my Linux server and wireless (for the iMac and laptops), the DMZ is connected to a virtual machine on the Linux server which is basically my public-facing web server (Ubuntu!). The WAN is directly hooked up to the cable modem.

Let’s look at some of the features that have led me come to adore m0n0wall:

Web-based admin interface with user management capabilities
DNS relay
DHCP Server (much more configurable than a standard wireless router)
Firewall and NAT rules (stateful packet filtering)
Traffic Shaper (which I use to throttle the traffic on my public web server)
VPN (PPTP and IPSec) – I just love VPN-ing in to my home network from work
Logs, debugging support, and live traffic graphs
Dynamic DNS integration (e.g. with DynDNS in my case)

Here are some fun screenshots:

Related Links: M0n0wall | Alix Boards | M0n0wall traffic shapping

Jangaroo

By |July 23rd, 2008

My former colleagues at CoreMedia decided to release their Javascript cross-compiler, Jangaroo, as open source. The tool takes Javascript 2 / ActionScript 3 and translates it into browser-compatible JavaScript 1.x, allowing the developer to write the scripts in a much nicer — and more object-oriented language.

Here’s a sample JavaScript 2.0 class:

package net.jangaroo.example {

/**
* A simple example demonstrating how to receive and return typed arguments.
*/
public class HelloWorld {

/**
* Returns a personalized greeting.
* @param name name of the person to greet
* @return String a personalized greeting
*/
public function greet(name : String) : String {
return “Hello, ” + name + “!”;
}

/**
* Returns a personalized and HTML-escaped greeting.
* @param name name of the person to greet
* @return String a personalized and HTML-escaped greeting
*/
public function greetHtml(name : String) : String {
return this.greet(name).replace(/&/g, “&”).
replace(/</g, “&lt;”);
}
}
}

Once translated with the cross-compiler, you can import the classes into your HTML and use them:
 <script type=”text/javascript” src=”joo/Class.js”></script>
<script type=”text/javascript” src=”net/jangaroo/example/HelloWorld.js”></script>
<script type=”text/javascript”>
//<![CDATA[

// asserts that all required classes have been loaded
joo.Class.complete();

// instantiate the example class
var helloWorld = new […]

NextStep Timewrap

By |June 11th, 2008

The original demo from ’92. So if anyone ever tells me Hibernate is such a new technology… whack ;-)

Mac Virtualization

By |June 2nd, 2008

I recently got myself a shiny pretty 24″ iMac and was thinking about installing some sort of virtualization to run Windows. Since I don’t really need Windows for anything on a Mac, I thought I’d give open source, i.e. VirtualBox another try  (see my previous post) and look it works perfectly. Version 1.6 now officially supports Mac OS X and it’s free.

There are a few restrictions in running this on OS X, all things I can personally live with:

No support for Host Interface Networking
No support for Internal Networking
No support for audio input
No support for VT-x/AMD-V (rarely required)
No support for raw disk access
The numlock emulation isn’t implemented yet
The VirtualBox kernel extension is currently accessible from all user accounts

So far I haven’t even needed Windows. Really, the only application I can’t find for Mac is the VMWare Server Console, but I can just ssh into my Linux box and run it — the beauty of OS X being a full Un*x operating system including X11 support!

Installing WSS 3.0 on 2003 Server R2 / 64 Bit

By |May 30th, 2008

Install IIS
Add the IIS server role via the “Manage your server” panel.

If you’re running on a 64 bit OS (which is the way of the future) things are, as usual, a little more painful. First, let’s disable the quirky 32/64bit mixed mode in IIS and enable full 64 bit .NET support (basics from Dan Bartel’s site):

Click Start, click Run, type cmd, and then click OK.
Type the following command to disable the 32-bit mode:

cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0

Type the following command to install the version of ASP.NET 2.0 and to install the script maps at the IIS root and under:

%SYSTEMROOT%\Microsoft.NET\Framework64\v2.0.50727\aspnet_regiis.exe -i

Make sure that the status of ASP.NET version 2.0.40607 is set to Allowed in the Web service extension list in Internet Information Services Manager.

Note the build version of ASP.NET 2.0 may differ depending on what the currently released build version is.
Install WSS 3.0
WSS is the foundation underneath MOSS 2007. If running on 64 bit, don’t even bother installing the “Sharpoint Services” server role — it’s really a 32 bit version.

Download WSS 3.0 including SP1 for 64 bit from Microsoft.

If the setup terminates with the error that ASP.NET is not a registered web server extension in IIS, fire up the IIS command center and in “Web Service Extensions” change the status of ASP.NET from prohibited to allowed. Re-Run the installer.

When faced with the option whether to install “Advanced” or “Basic” — just opt for basic. Advanced will simply allow you to specify the location of the content index file and whether you’d like a web front-end or standalone installation.

Run through the admin wizard at the end when offered (it’ll set up the database etc).
After this is done, […]