Punctuation

June 4th, 2006

I’ve been greatly enjoying reading “Eats, Shoots & Leaves”, by Lynne Truss. I realize that I’m a bit late in coming to this, since its wave of popularity was a while ago, but I greatly recommend it to anyone who cares about writing.

Although the book has been in the house for a long time, I didn’t read it, because I was determined that no-one should lecture me on punctuation. That is, however, a misunderstanding of what the book is. What it is, is harder to pin down. Moral support for people who care about punctuation? A manifesto for the militant wing of the Apostrophe Protection Society? An extended rant, with which the reader will happily join in?

Incidentally, I’ve already committed at least two punctuation errors according to Ms Truss, and I’m not repentant.

What I’ve discovered, is that I’m a strong advocate of “the yob’s comma”. Not only that, but I think that some of the other frowned-upon uses of the comma, such as “the Oxford comma” are instances of the yob’s comma in disguise.

The yob’s comma is the use of the comma to indicate a pause in breath. It has been a long time since I read aloud, and I don’t suggest for the slightest moment, that my readers do either, but I am convinced that pauses in the text greatly modulate the meaning. Take one of Lynne’s examples:

Belinda opened the trap door, and after listening for a minute she closed it again.

Lynne argues that this is a splice comma (joining two sentences), and I wouldn’t disagree, but I also think that, to paraphrase Harold Ross from earlier in the chapter, it gives Belinda time to open the trap door.

The proposed amendments, with commas on both sides of the ‘and’, and without commas at all, both propel the reader into the second half of the sentence, shutting the trap door hastily.

Rather than allowing the reader to catch their breath literally, I think this is about letting the reader catch their mental breath; allowing them to grasp each idea before taking them on to the next. In a drama, we would like the reader to be picturing the scenes in their head, so it’s important to allow their mental actors time to cross their mental stage. In academic texts, where ideas are being built one upon the other, it’s important to allow the foundations time to set before starting on the superstructure.

Clock Demo

May 28th, 2006

Just posted a page with a clock demo (see right) that I’ve created. It’s actually on-the-way to a desklets system in gst, but not really worthy of that name yet.

It’s mostly a demo of linking to various C libraries (XLib, Imlib and Cairo). Check the page for more.

Fair trade and business

May 21st, 2006

Last weekend, we went up to Brick Lane / Spitalfields, to see a sample sale of fair trade clothing. There was some nice stuff on show, but the fundamental problem for me is that I don’t need any more t-shirts.

Fair trade clothing for men is basically all about t-shirts. If you’re lucky, you can get some shorts, or a pair of jeans, even a shirt, but it’s all unmistakably casual wear. That’s a problem for me, because, working in an office, I want office wear. What I really need is a new suit (we have a smart casual dress code, but business attire for client facing), but it doesn’t look like we’ll see that any time soon. It seems to me that this is a problem for fair trade as a movement.

The strength of fair trade is that it doesn’t seek to undermine business. Politicians can buy into fair trade, because they don’t have to worry about people complaining that it’s Bad for Business. It is business, so it cannot be bad for it.

Unfortunately, having got your politician enthusiastic about fair trade, the next thing he will notice, if he is a man, is that he’s not actually allowed into the club. He can drink fair trade coffee, but he can’t wear fair trade clothes. Fair trade clothes are sending the message that, for men at least, fair trade is only for the cool and the alternative.

There goes our unique strength. Fair trade is business, but business men, IT’S NOT FOR YOU.

Well, that passed the time

May 21st, 2006

Giving up on proper handling of signals. Everything seems to work; it just doesn’t… work. Presumably, I’ve got some error with the actual C function invocation (which would exactly surprise me), but I’m so tired of adding debug statements and the compile-install-test cycle, I’m just going to poll instead, since that works. Incidentally, there’s an install in there because otherwise I can never be sure what libraries are being loaded (I know which ones should be loaded, but the uncertainty kills you).

Polling is a bit of a dirty word for me, because of the Catch 22. If you poll frequently, you use all of the processor doing nothing, and if you poll infrequently, the application is slow to respond to new events. I hate seeing applications which lock up the UI when they start some long-running process, although co-operative multi-tasking is more the culprit there, of course. Hmm. must re-enable pre-emptive multitasking when I next re-install gst.

Signals

May 19th, 2006

This week’s Smalltalk effort is to try to unblock blocking calls.

Basically, I want to be able to call XNextEvent without blocking the entire image. That means (I think) forking a C process, and waiting on a (ST) Semaphore, which will be signalled when the child process terminates.

It’s an experiment, really, because I’m sure there are cleaner ways of doing this. I’d be happy if it even works, though.

I really need to start posting more often - I seem to post once a month.

Upgrades

April 28th, 2006

The HD on my lovely vaio R600 started to make slightly clunky noises, and I started to worry that it was on its way out (it’s a couple of years old, and has been carried about the country a fair amount). So, here’s what I did to replace it (it’s not that interesting, but it passes the time).
Read the rest of this entry »

Language

March 30th, 2006

Herodotus frequently makes mention of the religions of the peoples he is describing, but, as far as I can remember, he never makes mention of their language.

Now there’s no doubt that the Greeks, Egyptians, Persians, Scythians et al. spoke different languages (unrelated languages at that), and I’m sure that Herodotus’ audience would have known that, so it’s perhaps unsurprising that he doesn’t think it’s worth mentioning, but it’s made me think.

In a world without motorized transport (which is only as far back as the invention of the railway, after all), languages would have been so different between places that it wouldn’t have been worth mentioning. What is surprising is that somebody in Kent should think that they speak the same language as somebody in Yorkshire*.

* Well, I suppose a lot of Yorkshiremen would say that they don’t.

The Bronze Age

March 30th, 2006

I’m not the only person who has come to the conclusion that the reason for the Roman Conquest (of Britain) was to gain control of Cornish tin. It’s notable that, once they had beaten the Cornish in a pitched battle, the Romans didn’t bother to advance further, but made a truce which, of course, involved tribute.

Tin doesn’t seem too exciting to us nowadays, but it’s one of the two ingredients of bronze, and, even in the Iron Age, that would have been a pretty big deal (bronze jewellery looks prettier than iron, anyway).

Now here’s the thing: in the Bronze Age, there were two major sources of tin. One was in Afghanistan somewhere (we don’t actually know where); the other was somewhere on the far side of Gaul (ie. in Cornwall). Neither of these places were inside their known world. In other words, bronze was important enough that we have named the age after it, but they didn’t actually know where it came from.

Another release of the Packages code

March 5th, 2006

I’ve comprehensively reworked the package installing code, and I’m now quite satisfied with it. I’ve also made some changes to NaiveXML that I’m quite pleased with.

Looking over my to-do list, I’ve moved over to GST 2.2, and my next step is to port my Gtk+ changes (or do without them - whichever is more convenient). That will get Mumble working again, which will make life much easier. I also need to make sure DBI works in the new scheme of things.

Then, I think, I’ll actually hook up a Cairo package (like the Postgres and MySQL packages, a wrapper around the library). I’ve been wanting to play with vector graphics for a while.

Then, I might look at using Postgres for code versioning within the image. I’ve been using Arch much more heavily to get the packaging sorted out, though, which makes it seem less attractive.

Flow and balance

February 25th, 2006

Everything is a question of flow,
and balance.

A river has flow - it moves from one place to another by the path of least resistance, and if there is an obstacle in its path, it swirls around and past it. The swirling of the river is as much the essence of its movement as its flow downstream; its nature is clear and unchanging.

If you place your hand in the stream, you can feel the force of the current against you, and it is satisfying to experience it. If you turn your hand sideways, you no longer resist the flow, but become part of it, guiding the stream onwards without turbulence.