It’s good to be on break

Wow, a busy morning. I’ve been hatching Manila Envelope 1.0.3 for almost two months. In the words of Eliot’s young woman after the final patronising kiss, “Well now that’s done: and I’m glad it’s over.”

I should have learned the lesson in the first place: limit your scope and move ahead quickly. During the last two months, I messed about with trying to incorporate the Blogger API, add Keychain support, and support uploading images as well as downloading news item departments. I need to get stricter about setting release scope and sticking to it.

Enough of that. Currently consuming some lovely porcini risotto and relaxing a bit. Then I have to pack. We fly tomorrow to Lisa’s parents; we leave New Jersey for Italy on Sunday.

Apple and price hikes: classic dilemma

I sympathize with everybody involved in this CNet story about Apple hiking pricing on the new iMacs by $100. It’s certainly easy to feel sympathy for the customers and the retailers. It’s harder to feel sympathy for Apple, but they’re really caught in a classic bind.

In my system dynamics class, we were talking about the rise and fall of the low-price airline People Express. My professor suggested that they made a product that was so attractive and cheap that their growth spiral grew out of control. They didn’t have a large enough supply of qualified staff, so their product kept getting worse and worse until they started racking up massive losses since they lost all their customers. A conclusion was that a price hike might have made the product less attractive and given the company more breathing room to fulfill expectations.

The iMac price hike shows the other side of that story. Sometimes hiking prices just pisses everyone off.

Apple and Bluetooth: The next USB?

The announcement from MacWorld Tokyo that Apple will support Bluetooth is interesting. Bluetooth, the little “standard that isn’t,” has been having some problems getting traction. Will Apple’s move to support Bluetooth do the same thing for this standard that earlier decisions did for USB and 802.11b wireless networking?

Probably not. At this stage, Apple is committing to support Bluetooth only via a plug-in USB adapter. That’s very different from bundling the technology with all your new computers.

Akamai on the move

Since the Boston real estate market hasn’t really caught up with the slump, it’s not surprising that Akamai will be breaking its lease to move out of the Cambridge block that it shares with Forrester and the MIT Laboratory for Computer Sciences. No word yet on the new location, but the $15 million termination fee to MIT has to be good news to the school… at least until it’s time to find someone else to move in.

Two down…

The crash I was experiencing before when updating department names multiple times has gone. I think the lesson is that you need to either update an array in a plist with an array of the same length, or to change it to zero length and write the new array.

One problem down – search and replace

Shortly after I posted my last cry of despair over random crashing, I downloaded a new example AppleScript Studio project that contained a Cocoa string replacement method, rather than the one I had been using before which toggled AppleScript’s text delimiters back and forth. Making the switch cost me nothing in execution time and appears to have eliminated the crashing bug. I had to alter the Cocoa method so that it wasn’t doing case insensitive searching, but otherwise easy as pie. Next one… crashing when updating the department list.

Well, darn.

On a tip from a mailing list, I tried a change to Manila Envelope this morning to see whether I could stop an intermittent crashing bug. The change may have stopped the crashes, but unfortunately it also screwed up the text being posted quite badly. Apologies to all who were confused by posts on the page (or in the RSS) that said something like: “tMcWrldTky,pplennuncedBluetthsupprtfrtheMc”.

For the record, if your script is designed to convert accented characters to HTML entities, it’s a bad idea to convert them to Unicode first. It apparently converts them down to regular unaccented characters rather than their proper Unicode entities. When you search and replace on a regular vowel, this is what you get…