WordPress sandbox theme

If you are one of the handful of people not visiting this site for the first time (i.e. less than 10% of visitors), you’ll notice that for the first time since I installed wordpress, I’m not running the default theme anymore. Basically one of my reasons for installing wordpress was that despite enjoying the fiddling with html and css I got a bit tired of working around IE and mozilla incompatibilities, the many limitations of CSS and all the weird issues you run into when trying to achieve perfectly simple things like three column layouts. If you are interested in this stuff, there are several nice sites where you can read a lot of stuff about these issues.

Now, instead of getting my hands dirty, I decided to install the sandbox theme for wordpress available at plaintxt.org. This is somewhat of an experiment for me, basically my requirement is that the thing shouldn’t break down if I roll out upgrades for wordpress in the future. I simply want to keep that process as simple as possible: upload new wordpress php files and run the upgrade php script.

Basically, developing a wordpress theme means that these things become non trivial since with every update the theme needs to be tested again.

The sandbox theme has a few nice characteristics:

  • It is skinnable using ordinary CSS (i.e. like the good people at W3C have intended all web sites to be skinnable).
  • It generates particularly nice HTML. This always annoyed me in default wordpress and sort of took away my motivation to do something about making it look nicer in the browser.
  • Including nice little microformat class names for html elements where that makes a lot of sense.
  • It’s quite popular which means lots of people use it (so it is well tested) and which also means that it is likely to be updated as wordpress evolves.

Rather than develop my own CSS file for wordpress, I’ve decided to just pick one of the defaults that come with sandbox. I like the spartan skin since it is minimalistic and also tries to improve readability of the actual text. Overall it is quite nice to work with. Adding alternative sandbox css skins is particularly easy and I might actually do that since the spartan look is not quite minimalistic enough for my taste and also has a handful of issues with too small margins and paddings. On the other hand, I said the same about the wordpress theme when I migrated my blog to wordpress over a year ago (i.e. never happened). We’ll see what happens.

In search of the One True Layout

A few weeks back when I re-launched my blog in wordpress, I made a few comments about not being interested in working around the many specification and implementation bugs of CSS and make a really nice, spiffy layout for my blog. That’s why you are looking at the (pretty) default template of wordpress.

This article captures my point perfectly:
Introduction – In search of the One True Layout

It describes a solution to a very common layout problem: how to position blocks on the page next to each other. The solution outlined works around several IE bugs. Then when it works they point out to make it do what you really want (like put the whole thing in a containing block), you will need to work around even more bugs, including a few mozilla bugs that surface when you use these workarounds. Oh and the whole thing does not work in Mozilla anyway due to a recently introduced bug that (on trunk) has just been fixed (today!).

That’s why I don’t want to do CSS/HTML based web design anymore. Any reasonably complicated design requires you to either compromise on what you want to achieve or to use a whole series of bug workarounds, stretching the css implementation well beyond its specified/intended behaviour and hoping that next months browser updates won’t break things.

Unacceptable.

CSS is a hopelessly complicated and IMHO deeply flawed standard. Sadly, no alternatives are available.

FireFox 1.5

Everybody seems to be writing about the new firefox and as a loyal user, I shouldn’t stay behind. I’ve been using the alpha and beta versions and they have proven to be mostly trouble free (as much as you could expect from alphas and betas).

The alphas were a little unstable and I encountered a couple of crashes (over a period of several weeks). That hasn’t happened to me with the beta which I’ve been using since it was released. The largest problem has been the intially slow pace with which extensions are tested and ported. By now most of the more relevant (and actively maintained) ones have been ported. There are still a few extensions missing. Presumably the developers are waiting for the final release or simply not interested in immediately fixing their extensions.

Now the new features. At a first glance, not much has changed. Most changes are under the hood. The most visible change is no doubt the rearranging of the preferences dialog. IMHO it doesn’t make much difference but I agree it is slightly nicer this way. Also the rss button has relocated from the status bar to the locationdropdown. IMHO this is slightly awkward or at least unconventional. And finally FireFox now has error pages for timeouts and other server errors, just like IE has had for years. Other than that, I can’t think of any relevant, eye catching changes.

Then there are the changes under the hood. SVG and canvas are two new cool technologies. However, since internet explorer does not support these, I doubt they will be used very much. Firefox only sites are a bad idea IMHO. Sadly, this also applies to the CSS improvements (e.g. css 3 columns) and javascript improvements. Nice, but it’s not likely these technology improvements will see much adoption (except maybe in browser extensions where browser compatibility is not an issue).

The most visible change to end users will be the performance increase. When 1.0 was released last year, it was released off a branch which had been frozen quite some time by then. Meanwhile development on trunk (a.k.a. mozilla 1.8) continued and about 1.5 year of development has accumulated there, most of which will end up in FireFox 1.5. FireFox 1.5 has a new clever mechanism for back and forward which prevents it from rerendering a page and caches the results. Consequently, going back and forth between pages is now fast. Also normal rendering of pages has seen some improvements. It is hard to quantify this but it certainly feels faster.

Something that is often overlooked in reviews such as this is extensions. As I said there are some porting issues but these will go away when the final release approaches. What is worth noting is that some extensions have really evolved from nice toys to real valuable browser additions. IMHO the added value these extensions provide is often overlooked. You can’t really imagine doing web development without such powerful tools as the javascript debugger, the webdevelopment toolbar, live http headers and many more developer oriented tools. As a mere user, adblock, sage, forecastfox and context highlight make life so much easier and fun. And there are loads more of mature, well tested, valuable extensions.

So to summarize, some minor feature and gui development, lots of under the hood changes which you will notice in the form of snappier performance. Other than that it is still FireFox, a damn good browser, a solid upgrade from any browser you currently use.

migrated to wordpress

I’ve been playing around with wordpress for about an hour. Easy to use, feature rich and I managed to migrate my old pivot posts by importing the RSS.

Why migrate away from pivot? Well, I wanted to try something new. Referrer and comment spam has caused me to cripple pivot and frankly, I never really liked the plain text files, the messy templates and the lack of updates during the half year I used it.

WordPress seems to be popular amongst the ‘hard core’ bloggers and I like the look and feel. Also the default template is much nicer IMHO.

As for that, I am unlikely to change it much due to a lack of time and interest. That may sound a little unlike me but I am sort of bored with trying to make html+css+javascript do things it is clearly not very well suited for.

I simply no longer believe in this technology: it is primitive, awfully limited and hopelessly flawed by design. Most nice page layouts consist of elaborate workarounds for browser limitations, browser incompatibilities, ambiguous standards interpretations and plain parser bugs. The implementation of the more relevant CSS features are almost without exception problematic.

I have no wish to learn much more than I already know about yesterdays mistakes at Netscape and Microsoft. Every attempt at building something nice over the past few years has ended with me discovering it wouldn’t work in IE (position:fixed) or it wasn’t possible at all (vertical spacing, css columns with a row beneath) or it would sort of half work in version x and break down in version y of Firefox (never bothered to find out which version was behaving ‘incorrectly’).

NVU 0.90

NVU, pronounced n-view (http://www.glazman.org/weblog/dotclear/index.php) is an evolved version of the mozilla composer tool in the recently discontinued mozilla application suite. I’m already a thunderbird and firefox user. So I’ve followed the very rapid development of NVU over the past few months. Every month Daniel Glazman produces a new version and with version 0.90 last week it seems well on its way to become a powerful tool for anyone interested in writing html without touching code. While I like messing with HTML and CSS, I’m pragmatic enough to not do this whenever I am writing content. When I write content, I don’t want to be distracted by technology. Therefore, tools like NVU are a potentially interesting addition to my toolset.

I’ve already used the 0.70 and 0.80 versions at work for editing changelogs and other release documentation. I was not impressed that much with the versions until 0.80. There was a particularly annoying bug with newlines and a lot of rough edges. 0.90 fixes the bug and provides a new polished look and feel. Suddenly it feels like a real application. It’s amazing what a bit of finishing touch can do for an application. It still needs some more of that but feature wise it has become a very nice application:
– support for all important html tags
– css editor
– support for layers and tables
– support for templates (ala dreamweaver)
– integrated site manager
– extension support

Extension support could actually become a killer feature. Many firefox development extensions should be portable to NVU. If that happens, dreamweaver suddenly looks like a toy.

I just loaded my IE unfriendly, homepage in NVU and to my surprise it looks fine (dreamweaver can’t handle it). All of the css positioning works as intended, the fonts are as specified and you can just click and type to add text. Combine this with the template functionality and you have the perfect tool for sites with elaborate/complicated designs.