Archive for september, 2006

Bulk HTML validation

In addition to the Dutch webrichtlijnentoets you can now do a bulk validation on a complete website with the marvelous Nikita the Spider. Nikita does HTML validation and searches for broken links and more. However, it’s still in alpha and the job has to be started by hand, so be patient! (via EGS)

Tags: , , ,


Comments (2)

RSS date formatting with MSXML4

Damn, I’ve been looking for this for a long time, but I couldn’t find a proper solution. So, what was the problem? Well, I wanted to create a page that gives an overview of several RSS-feeds I follow. The page should replicate some information of these feeds: just the title and the date of the last 5 posts. I wanted to give the date in the feed (i.e. ‘pubDate’) a nice Dutch look and feel, so the rather unreadable “Fri, 15 Sep 2006 13:57:48 +0000” would become “15 september 2006”. These RSS-feeds I parse with an XSLT-stylesheet using (Classic) ASP.

A date in a RSS-feed must be defined as RFC-822. However, I could not use the handy date-time functions for XSLT 2.0 to format this date, because these are not supported by MSXML4, the XML-parser my provider supplies. MSXML supports the ms:format-date function, but this function can handle only standard XSD date formats, which RFC-822 is not. (Bloody hell, I wanted to get back to client-side coding!)

The solution I took is the following: using VBScript in my stylesheet I parse the RFC-822 date as a string and build my Dutch date format with my own hands:

<?xml version='1.0' encoding="UTF-8"?>
<xsl:stylesheet version="1.0"

<msxsl:script language="VBScript" implements-prefix="vbs">

   function formateDate(datum)
     dim arr, mnd, x, y, dag, jaar
     arr = Split("Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec", ",")
     mnd = Split("januari,februari,maart,april,mei,juni,juli,augustus,september,oktober,november,december", ",")
     For x = 0 To UBound(arr)
       If InStr(datum, arr(x)) Then
         y = InStr(datum, arr(x))
         dag = Left(datum, y)
         jaar = Mid(datum, y, 8)
         formateDate = stripNr(dag) & " " & mnd(x) & " " & stripNr(jaar)
         exit function
       End If
    formateDate = ""
   end function

   function stripNr(nr)
     dim arr, str, x
     arr = Split(nr)
     for x = 0 to UBound(arr)
       if isNumeric(arr(x)) then str = str & arr(x)
     stripNr = str
   end function


[... some more code ...]

I’m not sure if this is a good approach, but luckily it works, and it’s good enough for me, because the page I wanted to create is just a start page for my mother with references to several baby blogs:

Nonetheless I’m very pleased to get feedback on the code, if you have a better solution, please share it with me!

Tags: , , , , ,

Comments (1)

d.Construct 2006: a second feedback

The programme at d.Construct left hardly any spare time, so filling in a feedback form far before the end of the conference did not make much sense. But we had to, otherwise we didn’t take part in the contest. So here’s a quick wrap-up, which can be considered to be my final feedback for d.Construct. Let’s start with the top issues and end with the horrors:


  • Jeffrey Veen’s talk on Designing the complete user experience was again a splendid performance. He alone was worth the entry fee for this conference.
  • Derek Featherstone’s examples of real life accessiblity problems with simple user interfaces compensated a lot the interesting (but accessibility neglecting) speeches on AJAX and Flash.
  • Yahoo! idea of ‘hack day’ (presented by Simon Willison and Paul Hammond) is an absolutely interesting concept for other internet companies too.
  • The backnetwork (only accessible by attendees) was excellent. Well done!
  • Brighton is a perfect location for web conferences. Not that far from airports and meanwhile sunny, beachy, interesting and alternative.
  • Serving tea with milk! This is one of the greatest shortcomings of the Netherlands.


  • The talks on AJAX and mash-ups definitely triggered me. Being an accessibility advocate myself, I’m normally not that interested in trendy technics that break the usebility or accessibility experience. Now, I’m sure to try out some things. As Jeremy stated “just because the joy of it”.
  • Meeting other attendees is always interesting. I talked to PPK on his new book and we came to the idea that in the Netherlands we are in need of a mash-up that compares book prices of different Amazon shops (USA, UK, Germany), including their shipping fee.

  • Jeff Barr’s talk on Amazon’s web services was totally useless, being nothing more than an ordinary sales talk on Amazon’s activities. Clear:left apparently needed the money?
  • It would have been very convenient if the organisation had handed out some paper to make notes on. As blogging was nearly impossible, ordinary hand written notes came to the rescue.

– –

  • The conference centre Brighton Corn Exchange, ouch, is not a conference centre! There was so little space between the chairs that my legs still hurt and I didn’t know where to put my arms. Working on a laptop of course was impossible, even if there had been more light. I suppose there hasn’t been a lot of blogging during the day. Tip: choose something like a university auditorium for the conference?
  • There were no power supplies available in the conference room, so unless you brought in three spare batteries, your laptop would have run out of service during the first or second session. As mentioned above, blogging was hardly possible, so this is just a tip for next year. I definitely will not come back next year if these last two points won’t be solved properly.

Tags: ,

Comments (2)