Author

I am Joannes Vermorel, founder at Lokad. I am also an engineer from the Corps des Mines who initially graduated from the ENS.

I have been passionate about computer science, software matters and data mining for almost two decades. (RSS - ATOM)

Meta
« Selling your mISV (the PeopleWords.com case) | Main | Few traps for former C++ developers coding in C# »
Saturday
Jun162007

Screwturn powered front-end for your mISV

I have just finished to migrate all the web content of Lokad.com into a brand new skinned Screwturn wiki instance. Thanks to the design skills of Sergey Pozhilov, the result does not look bad :-) .

I have been writing about wiki misuses in the past. One of my recommendation of at the time was do not use wikis for public diffusion. I still believe that this recommendation is a good one (even highly popular forums have hard time to get anybody contributing to a wiki). In fact, even if Lokad.com is now hosted in a wiki instance, the accesses have been restricted to the Lokad team. Thus, we are using Screwturn as a CMS and not as a wiki.

This migration was the 3rd step:

  1. At first, the Lokad web application and website were mixed. As a result, it was taking as much effort to update the web application or the website. The situation was just painful by design.

  2. Web application and website have been separated. The website was now regular static HTML. The update overhead was still significant, FTP being just a pain when it comes to fix typos.

  3. We have hired a professional designer to get a decent XHTML skin and then we have migrated the web content into a skinned Screwturn instance. The update overhead is now super-low.

Do not break URLs: When migrating your web pages, it's important to include the proper redirections. I have been using UrlRewritingNet, a nice open-source URL rewriting tool. UrlRewritingNet is very convenient to migrate ASP.NET pages because ISS does not intercept the requests even before they hit the ASP.NET machine.

Benefits of the Screwturn CMS for your mISV


I have been relying on a CMS for 48h to manage Lokad.com, I do not think I am ever going to move backward toward a static HTML again.

  • wiki markup is more compact and more readable than HTML. Page editing becomes easier and faster. Ok, most wikipedians have been knowing that for ages, but I would expect the percentage of websites relying on compact markup to be still quite low.

  • snippets are really convenient for website templating. The concept is both simple and powerful. After going through 70 web pages, I find snippets way more practical than ASP.NET master pages.

  • spell checking is native because Firefox becomes your IDE. Visual Studio should have been supporting spell checking for ages, meantime you can still use CodeSpell.

  • native user accesses management simplifies the task of integrating external contributors, typically professional translators, writers or proofreaders...

Scripting tricks for Screwturn


When it comes to skinning an ASP.NET application, the goal is to change the minimal amount of lines of ASP.NET code (optimally zero) during the skinning process. This process ensures that upgrading toward the next version of the ASP.NET application will be painless. Thus, I have been resorting to a couple of client scripts to avoid touching the ASP.NET code.

The search box is using

<a href="javascript:document.location = 
'Search.aspx?FullText=1&Categories=&Query='
+ encodeURI(document.getElementById('TxtSearchBox').value);">search</a>

The Edit and History links are using

<a href="javascript:document.location = 'Edit.aspx?Page=' + encodeURI(
document.location.pathname.substring(1,document.location.pathname.length - 5));">Edit</a>

<a href="javascript:document.location = 'History.aspx?Page=' + encodeURI(
document.location.pathname.substring(1,document.location.pathname.length - 5));">History</a>

Finally, the navigation tabs rely on a small script dynamically adjusting the CSS classes.

<script type="text/javascript">
var navItem = document.getElementById('HomeTab');
navItem.className = 'active';
</script>

Reader Comments

There are no comments for this journal entry. To create a new comment, use the form below.

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Post:
 
All HTML will be escaped. Hyperlinks will be created for URLs automatically.