Alastair’s Place

Software development, Cocoa, Objective-C, life. Stuff like that.

Whaling Resumes in Icelandic Waters

According to the BBC, Iceland has broken the 21-year-old whaling ban by killing a fin whale.

Lots of people will, of course, object on conservation grounds, or on the basis that Iceland shouldn’t be breaking bans imposed by the international community. My objection is different and has to do with intelligence and sentience, two properties that are easily demonstrated in cetaceans. These creatures are clearly self-aware, are possessed of complex communication capabilities that are at least akin to human language, and clearly demonstrate emotional relationships amongst their own kind. It is also apparent that they find us at least as fascinating as we find them.

There have been various arguments about the relative intelligence of creatures with large brain masses. Often we assume that we are the most intelligent species on the planet, though it is important to realise that it is not much more than an assumption. It is very easy to conflate intelligence with (for instance) tool use, something that we are well adapted for but that whales by and large are not. There is also an element of vanity involved; it is pretty obvious why people might choose to claim that their own species were the most intelligent even in the face of really quite substantial evidence to the contrary.

It does not help that the evidence is far from clear. On the one hand, whales’ brain masses are several times ours (a sperm whale brain, for instance, according to Wikipedia, masses about 7.8kg, vs our 1.5kg), and it is certainly true that creatures with larger brains are generally more intelligent, but it is equally true that there are many exceptions to this rule and that intelligence can be quite focussed on the specific tasks that a creature undertakes in its natural surroundings. There have been experiments, for instance, where parrots have outperformed chimpanzees at tasks that most would regard as intelligence related (counting blocks, for instance). There are also justifiable arguments against simply looking at smaller cetaceans such as killer whales and dolphins and assuming that the larger animals are at least as or even more intelligent; it doesn’t necessarily follow.

What I’m getting to is that I think there is enough evidence already available that they are intelligent self-aware creatures that makes killing them unnecessarily (and I would specifically include killing for commercial purposes in this, as there are plenty of ways to make a living without killing whales) morally repugnant. At the very least, it is quite clear that we are dealing with entities whose sentience is on a different scale to that of other “food animals” such as cattle or sheep.

So I’m dismayed and saddened, though not surprised, at Iceland’s actions.

Aaargh! My Keyboard Just Broke

A while back, I bought myself a Matias Tactile Pro keyboard, which, I must say, is very pleasant to type on. I’ve been very pleased with it, though the general finish could be better, the USB ports are a bit stiff, and it has a very annoying shadow key combination that regularly turns Caps lock on for me when I don’t want it (and no, I’m not hitting the Caps key by mistake).

Anyhow, today, the ‘C’ key stopped working properly. Sometimes I’d type ten ‘C’s in a row and still nothing. As a software developer, that’s just impossible to live with. I’ve just connected the new keyboard that came with my Mac Pro, but in the time I’ve been typing this, I’ve come to the conclusion that it’s a horrible spongy thing, so I will be reverting to the much nicer keyboard that came with my older 1.42GHz PowerMac.

And on that note, a plea to Apple: please make better keyboards. The ones you’re making now look quite nice, but they don’t feel nice to type on.

Antibacterial Input Devices

An antibacterial mouse. What a great idea!

Unfortunately, the remarks about how grubby a typical desk is prompted me to try to shake some of the muck out of my keyboard… eugh.

Seriously though, I’d like to see this feature a standard part of mouse (and keyboard) design. It’d also be good if the manufacturers designed input devices to facilitate cleaning. Most modern (i.e. optical) mice are OK, but keyboards, quite frankly, are pretty hard to clean; most of the time you find that you have to actually take them to pieces to get them properly clean, and it isn’t always as easy as it looks getting them back together.

Two Screens? You Need Colour Matching.

I recently acquired another 23” display. Whilst this new screen looks superficially the same as one of the existing units, it clearly has a different LCD panel. Rather irritatingly, the new panel reproduces colours quite differently to the older one, and the Apple supplied ICC profiles really don’t do much to fix this.

Calibrating the two using the software calibration feature in Mac OS X didn’t help that much. It’s just too hard to get accurate—or even reproducible—results by judging colours with your eyes. If you only have one display, and don’t otherwise care about colour, you might not have noticed this, but believe me, with two it’s a real nuisance.

Anyway, I invested in a gretagmacbeth Eye-One Display 2. It’s made a big difference. Both displays now appear basically the same; you can still detect a subtle difference in between the two (due, I think to the native whitepoint difference), but it’s a whole world better than the default settings.

One other benefit of having a proper calibration tool is that it’s possible to get the two panels set to the same brightness, which is very helpful (again, it’s quite hard to judge if you’re trying to set it manually, although you will spot the difference during use, which can be annoying).

StuffIt Lock-in and E-mail Appropriation

As a Mac user (and with a shiny new Mac Pro at my desk, to boot), I’m becoming increasingly frustrated with StuffIt. The fact is that it’s a product that I just don’t need, and would rather not have installed on my system, but the sad fact is that a lot of Mac files are compressed with StuffIt rather than being zipped, tarred and bzip2’d or gzip’d, or even just stuffed in a compressed .dmg.

Originally I wasn’t so bothered, but what made me blog about this today was the fact that I wanted to expand a .sit on my new machine, and I discovered that you cannot now download StuffIt Expander without giving your e-mail address to Allume, and worse than that, without “agreeing” to receive unwanted marketing from them.

But I’m locked into doing this by the fact that other people are using StuffIt. (And why, by the way, is StuffIt Mac twice the price of the PC version? For that matter, how can a compression tool possibly be worth the amount they’re charging for it?!)

The e-mail has just arrived, and I’ve confirmed my e-mail address to them; however, to save others from having to do so, here are some direct links to the downloadable versions:

StuffIt Expander 10.0.2 (OS X 10.3 and later)
StuffIt Expander 8.0.2 (OS X 10.0 to 10.2)
StuffIt Expander 7.0.3 (Classic/OS 9.2.x)

These came from the actual download page, rather than the e-mail based thing.

Hopefully they will work without you having to go through the e-mail sign-up form and then wait for them to spam you later before you can unsubscribe.

Make the Internet an Independent State

Apparently, we’re going to have legislation to ban violent pornography. I think that’s probably a good thing, but I have my reservations about enacting laws that, according to the BBC News article “would apply to websites wherever they were based in the world”, because I happen to think that an unenforceable law is worse than no law at all. (That is, it matters little to some of the people operating illegal or questionable websites whether there is or isn’t a law prohibiting it in the United Kingdom, and having such a law just provides them with a kind of perverse amusement in demonstrating how easy it is for them to break it without consequence.)

I think what we really need is to declare cyberspace independent territory and give it its own legal code. Then we can have an Internet Police Force, that will actually be able to enforce the law, rather than the current situation (of little or no effective law enforcement) because the Internet spans international boundaries and is presently covered (or sometimes, not covered) by a variety of conflicting national legislation. Of course, that would require the existing nation states to cede some of their current authority to the Internet’s new government, including allowing things like IPF officers the power of arrest anywhere on the globe. Still, I think it’s the best way forward.

N.Y. Times Irresponsible? Who'd Have Thought?

I’m upset with the New York Times. Why? Because the information they published today might prejudice the trials of the terror suspects involved with the recent plot to blow-up airliners heading to the United States.

I couldn’t care less about the fact that they’ve used a pseudo-geographic test to stop people in the U.K. from straightforwardly accessing their article. The fact is that such tests are not 100% reliable; for instance, go into any Starbucks coffee shop and you can get connected via T-Mobile, via Germany. Thus anyone in the U.K. who visits Starbucks with a WiFi-equipped device cannot now be a jurer in any of the trials, or worse, if they are picked and don’t rule themselves out, some of these people could walk free.

Nor is that the only way to end up using an IP address allocated to a location outside of the U.K.. There are plenty of others—for instance, if you surf the ‘Net using an anonymous browsing service, or if the database that the New York Times are using is out of date or incorrect. There are also a few idiots who have posted copies of it in places that aren’t geographically censored.

So congratulations, New York Times.

Process Priorities

A pet hate of mine is end users (journalists especially) or—even worse—developers who don’t understand how process priorities are supposed to work. Often, both in the press and elsewhere, people write that increasing the process priority makes the program in question run faster. This is a fallacy.

What process priority controls is which higher priority tasks can interrupt any given task to use the processor. If you give a process a low priority, and then do nothing else with the machine, it will still take the same amount of time to complete. Process priority only has an effect when you are doing something else with the machine at the same time.

The right way to use process priorities is shown in the following table:

Type of taskExampleAppropriate Priority
Safety-critical real-time Controlling chemical plant Highest
Fly-by-wire/drive-by-wire control
Monitoring Nuclear reactor temperature
Real-time Playing audio or video files High
User interaction
Video game rendering
Normal Text editing Normal
Web browser page rendering
Checking for email
CPU intensive Raytracing/rendering Low
Scientific simulation
Manipulating large data sets

Whilst the table above is very general, the point is that it makes it clear that user interaction (for instance) should take precedence over processing. If I, as an end-user, wish to wordprocess on my machine whilst I wait for a 3D rendering to complete, I should be able to do so. If, on the other hand, I want the rendering to finish as quickly as possible, I can leave my machine alone. Inappropriate priority settings (such as 3D rendering at high priority) make the machine unusable because the interactive response time becomes unacceptable. They don’t make the rendering run any faster!