Wednesday, June 30, 2010

The Smart Disorganized reboot is still in progress ....

Today, a sad story about GeekWeaver.

A couple of weeks ago I needed to revamp Gbloink!'s web presence. Quickly. And, I was in no position to do it in GW. So I fired up a copy of WordPress and made : Gbloink!

I also needed a new OPTIMAES site. And one for Gisel.

You spot the trend? The answer to "how do I knock up a decent-looking site? fast?" is to use WordPress. I'm seriously thinking of doing it for my own homepage too.

Obviously, these are the kinds of scenarios for which I envisaged GeekWeaver. So what's gone wrong?

Several things :

- I got over-ambitious. The basic GeekWeaver as templating language, worked great. But I wanted to make it into a full sophisticated Lispish sort of a functional programming language. That side-tracked me into several attempted rewrites before I shelved it with other unfinished projects.

- The OPML Editor worked great in Windows XP. But was horrible in Vista. And now I'm using Linux most of the time. I can run it under Wine, but it feels clunky to do so. So I don't have a decent OPML editor. There are still, surprisingly few outliners in Linux, and still no convenient outline editing widget for the browser.

- Great templates are the real win. An earlier version of GeekWeaver shipped with decent free template I got from somewhere or other. But I'm not a good HTML / CSS designer and I could neither adapt it to my changing requirements nor really design another. I guess the answer is to work with a designer. But as one of the proposals for GW was to make web-design more "programmer-friendly" (by introducing the programmer's favourite tool, abstraction, to HTML) that's rather a contradictory point. Chalk one up to web-designers and one against GeekWeaver.[1]

- Moreover, it's hard to compete against a rich ecosystem like WordPress. Among thousands of templates and plug-ins from dozens of contributors, are some pretty damned good ones.

- Also, while GW had a couple of sprinkles of syntactic sugar to make authoring XHTML / XML in the outliner a rather pleasant experience, the outliner is merely OK for CSS and not really all that good for javascript. (For a real programming language, it's useful to have the standard syntax checking, bracket counting, line numbering etc.) As web-pages are increasingly made of CSS and javascript over and above the HTML, GW is decreasingly useful. To do GW properly, the editor needs to be both a good code-editor AND a good outliner.

So is GeekWeaver a failure? Am I abandoning it?

Well, it's not yet a success, I'll agree. :-)

I still *believe* that there's a niche for a GeekWeaver-like language : something with the quick and dirty characteristics of early Perl or PHP; that let's you get a lot done quickly; and who's philosophy is "templating" at a granularity above the individual page or file. There's no reason that, if I had time and another burst of interest, I might not make further progress taking GeekWeaver in that direction.

But I now have a (more than) full-time day-job writing social software in Python[2] which leaves little time (or inclination) for a lot more experiments in python for web-site making. So GW is definitely on hiatus while I pursue other projects.

Nevertheless, I'm always coming back and thinking what I should do with it. You never know when inspiration might strike again.

[1] This raises another sceptical doubt. Allowing you to define abstractions is meant to make things easier. If it doesn't make "web-design" easier, am I barking up the wrong tree?

[2] In fact, I'm working with Django. Which brings a lot of other concerns and ideas. It was easy to see how GW could compile down to PHP. But would it make sense to try to compile it down to Django?

Thursday, June 17, 2010