20 Oct 2005: All projects are closed down

Lawrence Lessig once declared email bankruptcy. Though I haven't done a tenth of his work in my life, I must declare a "hobby programmer bankruptcy". A writer's block. An intellectual meltdown to incapacity. I have deceived myself, for years now, that I would continue developing these projects. Unfortunately, in doing so I have also deceived many of you, and I must ask that you accept this belated, inadequate apology.

Some of you have noticed - I know, because they emailed me about it - that the support forum was becoming infested with spam. The reason I let the spam linger wasn't that I didn't have enough time to clean up the forum; I'm busy but not that busy. The reason was that I could hardly bring myself to view the forum, because every time I do, I am reminded of the expectations these programs have stimulated and the letdown every day without a new release brings. It feels like a huge debt that I owe, and every time I think about it heavier still. So I avoided the forum, but cannot avoid the thoughts of what I planned to do, but didn't.

There is never enough time to do all one wants to do in life, but the reason for closing the site down now is that I have realized this is no longer about the time. It's about a block.

All the applications here were written by a guy who had never taken a course in programming or read a single book on the subject. Since I've started reading books on programming - and I've read a lot, and learned a lot - I haven't completed a single project. Yes, it's ridiculous, and no, I have no idea why. I have started a dozen new applications, small and not-so-small in design, but never got anywhere. A few months ago I bought several commercial components for the new version of KeyNote, which solved most of the technical problems plaguing the current design, and started writing code for the 2.0 release. It was good code, I thought, and seemed like a good design. Then the complexity of the project became clear. I was asking myself questions about how the various ideas and various blocks of code should work together and couldn't decide on anything. Call it a writer's block. I would spend a day writing one simple class in several ways, then scrap it all the next day. I am writing code nearly every day; I have today. But it amounts to nothing. I have no explanation. I'd say I need time out, but I've already taken three years of that. It's not about time.

People don't follow if-then-else logic, and the reasons behind anything we do are always more numerous and complex than can easily be explained. I have written a long paragraph explaining an important other reason why I have little expectation of continuing these projects. Then I realized I had to remove that paragraph, because writing software is so ridiculously trite compared to that other thing happening now in the world as you read this, that I could not cheapen that matter by even mentioning it here. What I can say about it, I'll be saying it in Polish, because the English-speaking world can already inform itself easily, if it wishes to.

My job is sending me to the US in November. I'll be in San Jose for two or three months, doing consulting work for a software localisation project. I won't have access to programming tools there, so work on KeyNote and other programs would have to be suspended anyway. I am not calling it a suspension though, because that would mean reopening the projects eventually, and I cannot say whether this will happen. I've broken a promise already.

The site is closed. The forum and mailing lists have been deactivated. I have considered removing the website completely, since the latest releases of all the applications here are inferior to similar, newer products. They no longer satisfy today's expectations, and I don't want to be distributing false hopes and substandard software. Unmaintained software rots. I'll make a decision on that when I return. For now the site stays up, and all the files are still where they've always been, for anyone who may need them.

Again, I apologize. And please accept my warmest gratitude for all the support, all the good thoughts, good ideas, good wishes and kind gifts you have given me, beyond anything I had expected. I wish I could match your generosity with my persistence.