I could leave my laptop at home for my vacation, and rewrite the wiki in Scheme completely on paper.
Long ago, before I had access to a computer, I wrote programs out completely on paper. For a long time, even working as a software engineer, I used to write out difficult parts of programs on paper and then type them in. It was a good way to code. Also, exactly the opposite of the way I coded the wiki in 2003, when I was pushing “code interactively at the keyboard” as far as I could.
Writing everything out on paper, with no access to a computer for weeks, sounds like a particularly good way to give Scheme a try. 21 months ago
2 cheers . 1 comment . Comment
In 2003, I wrote a wiki engine in Python, mostly to try out test-driven design working solo (without pair programming). I’ve been running a couplewikis on it ever since then. They occasionally go down, though, because the shelve module has a bug in it (or I don’t understand something crucial), and my attempt to make the thing thread-safe has failed. I mean, the database gets corrupted every so often.
More recently, a spammer has been putting lots of links onto the site. Lately, more people have taken an interest in reading and editing the site, so the spammer is particularly annoying.
In, er, seven years, I’ve never made time to fix this properly. This is something I can do this summer.
The Python code is really not very good. It’s not up to my usual standard of extreme simplicity. I’d say that test-driven design worked only so-so.
So, I’m tempted to rewrite from scratch. To make it fun, I could recode the wiki as another experiment: writing it in Scheme is not recommended as a quick, efficient way to get the job done. But, I’d like to try using Scheme for once on something practical rather than on a comp-sci problem of purely theoretical interest.
A disadvantage of Scheme: no support for Sqlite (a database that shouldn’t have the aforementioned bug). 21 months ago
Comment