Solipsism Gradient

Rainer Brockerhoff’s blog

Browsing Posts published in December, 2003

Dave Pollard‘s put up some excellent tips for bloggers:

As much as I enjoy blogging, there are times it becomes an ordeal, especially when I am plagued by deadlines or a heavy workload. As I’ve reported before, being an empty-nester and night-owl allows me to devote 2-3 hours per day to the hobby – most of the time. When I can’t, it shows. How can you maintain a good blog in less time? Here are a few ideas…


Zingg! out…

No comments

Well, Zingg! 1.3 is out.

It took a few days longer than I expected. First there were some more bugs and suggestions; then I tested it on Jaguar and two things didn’t work at all; and finally I had a run-in with configuration problems for my local database server. If you’re wondering about the last item, it’s because Zingg! 1.3 now incorporates the latest version of my online version-checking code… which incidentally feeds me the user’s version of Mac OS X for my statistics.

As I type this, the VersionTracker page counts 387 downloads. If past stats are any indication, that means about 800 or 900 downloads total… many people go directly to my site. My site statistics run every midnight, so I have no exact figures yet. Meanwhile, 206 of those people (let’s say 25%) used the new version-checking code. 204 are on Mac OS X 10.3.2, 2 are on 10.3.1. No earlier versions at all! I’ll have to check whether this is a bug or a reliable statistic…

Then again, this is good news, as I’d like to do Panther-only software in the near future. I’ll try and hurry up the next version of XRay to get stats from those users, too.

The Jaguar incompatibilities were quite puzzling. The Zingg! Configurator relies on a main NSTableView to show a list of applications. I wanted to allow the user to sort the table by any of the 4 table columns. The standard way of doing this, by clicking on the column headers, seemed simple to implement. Since I used NSURL objects to store the application names and paths, I subclassed this to store a complete table row in each object and then used the standard NSArray sortedArrayUsingSelector: method to sort this in different ways. It worked on the first try on my Panther development machine… but then in Jaguar it threw an exception indicating that my subclassing wasn’t working at all.

This was complicated by the fact that I’ve migrated all my projects to Xcode, so I couldn’t use a debugger on the Jaguar machine… but I finally found some hints that the NSURL internal workings had changed significantly from Jaguar to Panther – apparently it used to be a class cluster, but wasn’t anymore. To save time, I changed from a is-a to a has-a pattern for my table row object, and this worked again.

Then I ran into a Jaguar bug: the delegate tableView:didClickTableColumn: method isn’t always called, unlike in Panther. The workaround is to turn on the option to allow column reordering (by drag&drop) – I thought it kind of useless but found no other way.

Then (after already uploading the disk image) I had to go back and rewrite the docs for the changes… c’est la vie. At least it’s out now and no bug report’s arrived so far…

Somehow this doesn’t come as a surprise to me… 😆

You are a Cyberculture Floozie. The theoretical
aspects of postmodernism interest you only
insofar as they can be used to make cool blinky
things. You probably take psychedelics and
know at least one programming language (HTML
counts!). Other postmodernists call you a
corporate whore. They’re probably just jealous
because you make more money than them.

What kind of postmodernist are you!?

brought to you by Quizilla

Thanks to the Dowbrigade News for the link!

Re: Off we go…

No comments

Tomorrow morning the vacation’s over. Whew. It’s been marvelous: no interruptions, good food, beach runs after sundown, lots of coconuts and peace to work on my software; and terrible: heat, unrelenting sun, mosquitoes, constant Axé music thumpa-thumping along somewhere in the background, spotty Internet access and the general discomfort of being away from home.

The good news is that, as seems to become traditional over the Christmas holidays, I found time to do a new version of Zingg!, with lots of new goodies. Expect it in a couple of days; I just need to do some more testing and of course, constant Internet access to do all the publishing, notifications and hands-on support for early adopters.

Re: Off we go…

No comments

From early morning to late afternoon temperatures currently vary between 25 and 35 degrees celsius; it’s so-called “good weather”, meaning no clouds are seen during daytime, and so I stay indoors most of the time. The best time to visit the beach, for my skin type at least, is after 5PM.

Yesterday afternoon we took a bus into the city and of course, with all that heat, coconut water is the preferred drink. Here’s where that comes from:

this bunch is almost ripe for drinking. Here’s a typical beach street scene:

notice the coconut payphone icon_smile.gif. Turning to the right, here’s a bunch of them lined up on the counter (we usually ask for a frozen coconut, though):

The proprietor demonstrates the proper technique for opening a coconut:

after which it looks like this:

notice that it’s full to the brim; in fact, the water is usually under pressure, so you have to be careful. At this stage it’s nearly transparent, and it’s drunk with a straw. After drinking one can ask to have it opened, and eat the flesh with a knife or spoon:

this one was halfway ripe. Unripe coconuts have only a thin, jelly-like layer inside, while ripe coconuts – the kind one usually sees in the US – have about double that thickness of flesh.

After my post on young coconuts some months ago I’ve always wanted to show you folks how this is done here in Brazil. Ah yes, and each coconut costs R$1,00 (about US$0.30) on the street; at a market it would cost about half of that.

Re: Off we go…

No comments

The hotel is quite large, there are over sixty “chalets”, small cottages with a single bedroom and shower. Most of these are actually split into two units. They’re distributed along two roads on the northern third of the hotel area. On the southern third there’s a dozen small buildings with 9 or 12 apartments in each. In the middle third are the public areas: reception, restaurants, swimming pools and so forth. A small creek forms a lake near the pool, and in the back there’s an exit onto the beach.

The beaches in this area are quite shallow, you can walk in for perhaps 200m until you lose footing. The water is amazingly warm, from 27 to 30 Celsius even in the evening. And you can walk for dozens of kilometers either north or south. Here’s a photo of our cottage:

And here’s one of the view from there:

In front is the lake, the water is very dark due to natural iron salts. To the right are the pools and the main restaurant. The sea is visible in the distance.

Re: Off we go…

No comments

Here we are at the Arraial Canabrava Resort Hotel, which seems to be the official name. They’re just installing Internet access, in a month or two guests should have a separate room for getting on, but for now I’m sitting in a little back room next to the reception. It was down when we arrived, but was fixed today; so I’m downloading e-mail and whatnot while I type this.

The flight from Belo Horizonte to Ilhéus took about 90 minutes. Here’s a photo of Ilhéus during the final approach:

The landing strip is the dark (nearly horizontal) band near the wingtip, and the paintbrush-shaped peninsula with beaches at the lower end (where the paint would be) is a local landmark.

Off we go…

No comments

We’re packed to leave very early in the morning for the Cana Brava Resort, near Ilhéus (Bahia). It’s located at a beach where a small river flows into the sea, and it has a swimming pool – three types of water to choose from, but I’ll probably try to stay out of the sun as much as possible.

The hotel is supposed to have a modern convention center, so there’s a small chance that I may be able to get on the Internet. I’m taking my PowerBook anyway, and hope to get some serious work done, away from distractions. 😆

So, expect very light to zero blogging here until Dec. 28th… happy holidays for everybody!

Photos licensed by Creative Commons license. Unless otherwise noted, content © 2002-2024 by Rainer Brockerhoff. Iravan child theme by Rainer Brockerhoff, based on Arjuna-X, a WordPress Theme by SRS Solutions. jQuery UI based on Aristo.