Wiki And The Silver Bullet

So it took a couple of days to implement PikiPiki. It could have more features, but I'm trying to keep it simple.

Consider a project to build such a system fifteen years ago. We want:

Almost certainly people would have imagined a much larger project running over a year; perhaps it might have become a HundredPersonProject. (Consider Xanadu, for example: much more ambitious, but far slower.) A decade or so later it's one person and a couple of days, because

So, in a way we have achieved an improvement in productivity of several orders of magnitude, mostly through reuse. I think also it's important to try to believe that there is a simple solution, and that you can get a surprising amount of functionality done in a week. (c.f. the 'UnpluggableComputer?' paper.)


If I pick my problem to match a solution that already exists then I can solve the problem very quickly. If I want to build a blue two-story house then I can probably 'build' that house in a weekend, if I already have a white two-story house.

If I can convince myself and my family we'll be happy with a new kitchen and coat of paint rather than a whole new house we'll save a lot of money -- and in software the difference is even greater.


I'm not sure whether "high level languages" make a difference. ThoughtsWeaver took "a single day using pretty standard Shell scripts and simple C++ programs." I doubt if it would have taken much longer in C, and Shell scripts have been around for decades.

So I'd put it all down to various kinds of reuse, and MooresLaw. And the reuse is mostly at the level of entire programs, not some wizzy fine-grained component architecture. -- DaveHarris

It made a difference to me: if nothing else, it skips compiling, gives proper stack traces, and gives built-in power tools like regexps. Many of these things have been around on unix for years, but it's only relatively recently that most PCs could get to the net. -- MartinPool


CategoryWiki


EditText of this page (last edited June 5, 2001) or FindPage with title or text search