MondoMouse 1.4.4b1

I've just uploaded beta 1 of MondoMouse 1.4.4. This update is intended for people using Mac OS X 10.6 "Snow Leopard". It fixes a couple of annoying issues:

  • System Preferences will no longer have to restart when opening the MondoMouse preference pane.
  • MondoMouse won't suddenly stop running the way it does sometimes

Most of what I changed in this update is bringing back some stuff I wrote back in 2006 before MondoMouse 1.0 came out, but that I had to abandon due to bugs in Mac OS X 10.4 (which was current at the time). These bugs have since been fixed, so MondoMouse goes back to the way I had hoped it would work and becomes more reliable to boot.

This update requires 10.5 or higher. It's only needed if you're running 10.6. I may be able to add 10.4 support by the time this gets out of beta, but that'll depend on taking a good hard look at my usage stats to see if anyone's still using MondoMouse on 10.4.

Please note that this is a beta release-- I still have some things on my to-do list for 1.4.4, but I wanted to get something out for 10.6 users as quickly as possible. I use MondoMouse constantly myself, so I know how annoying it's been of late.

You can download the beta here.

MondoMouse 1.4.3

I've just uploaded MondoMouse 1.4.3. The only significant change in this version is that it fixes an installation problem on Snow Leopard (Mac OS X 10.6).

MondoMouse requires Mac OS X 10.4 or higher, but due to a bug in Snow Leopard's system preferences, attempting to install MonodoMouse led to this rather bizarre error message:

System Version Error

Version 1.4.3 works around this problem and installs without errors. For some reason this doesn't affect all Macs, or it would have turned up in my pre-release Snow Leopard testing. If you're reading this and you're from Apple, this has been filed as bug # 7192263 with code that demonstrates the problem.

If you have already installed MondoMouse, you can sit this update out, because it only affects the install process.


Snow Leopard Compatibility

Today's release of Mac OS X 10.6, a.k.a. Snow Leopard, has brought many questions from people who want to know-- Does your software work on this new version of Mac OS X?.

The answer is, very simply, "yes". The current versions of all of my software work just fine on Snow Leopard. No updates are needed, so you can keep using the version you have.

My Stumps

Twitter has kind of sucked away my blogging energy for a while, but I had to come back tonight. I'm at WWDC 2009 and tonight was Stump the Experts, one of my personal WWDC highlights. For the past couple of years I've been unable to walk away with any prizes. This year that changed, while I had fun I'm not sure it would be fair to say that I "won". It's kind of a long story.

Two years ago I wrote up a long review of stump the experts 2007. Nearly a year after posting it someone left a cryptic, anonymous comment saying that I should go up to the mike at stump 2008 and say something. The comment's there but I edited it slightly so that nobody else would know what it was I was supposed to be saying.

So I did. Or tried to, but they ran out of time before I got the chance. After the event I went up to Fred Huxham (one of the event hosts) and asked him about it. He referred me to Mark Harlan (the other host), who laughed about it but didn't explain, and told me to try again the following year.

Mark and Fred in 2007Mark and Fred in 2007That was tonight, and this time I made sure to get up to the front of the line in time. After some minor dispute about whether I was a year late, Mark called me aside to discuss things. He remembered leaving the message but not why. It came down to a picture I had taken in 2007 and included in my writeup. After looking at it I added "Now tell me: Is Mark secretly the PC in the "I'm a Mac" ads? I'm just sayin...".

Mark took exception and ranted a little, but that was OK. Then he offered me a stump T-shirt if I'd admit that I had actually said that, and wanted to win a shirt that way. I did! But click the picture to zoom in and see what you think.

Random other highlights:

  • The first speed question. Someone had posted on Twitter that they had the perfect question for the experts, but they'd probably get it in two seconds anyway. So it was decided that the experts would have two seconds to answer. They did answer, but not in two seconds, scoring a point for the audience.
  • One question from the audience was "What was the worst Mac?" I thought they might argue the question for being too subjective or something. Instead many of the experts got into a long discussion of the question among themselves, to the point that many didn't notice new questions being asked. Mark described the question as a social denial of service attack, effectively neutralizing the experts for a while. The agreed-upon answer was the Mac IIvi for, among other things, drawing blood when attempting to upgrade RAM.
  • Someone from the audience asked "how is babby formed?", spelled just like it is here. I don't know what the deal is with this question, but Google's currently showing close to 80,000 pages containing the phrase. The answer, according to Wolfram Alpha is that a stork delivers them.

La la la la la I can't hear you

Since the iPhone SDK was first released in March, the biggest roadblock to developing good iPhone software is that iPhone developers are officially prohibited from talking to anyone about what they're doing. In order to get the iPhone developer tools, you have to accept to a non-disclosure agreement with Apple. The NDA covers not only the development tools, but itself. I'm not even really allowed to mention what the NDA says, because doing so violates the NDA. I'm hoping that detail will be seen as minor enough that I won't get sued. Saying that the NDA prohibits discussing iPhone development should be OK, since Scott Anguish of Apple has publicly said so many, many times.

One of the most useful sources of information for a software developer on any platform is... other developers working on the same platform. The ability to discuss issues with other developers, compare notes, and get questions answered is extremely valuable. But none of that is allowed for iPhone developers.

This has a direct effect on software quality. Although Apple provides documentation, that doesn't always explain things. Normally, faced with a difficult situation, I'd ask around and see what other people might do. The only permitted way to do that now is through Apple tech support incidents. If you're one of the lucky ones allowed to pay $99 to join the iPhone developer program, you get two incidents, meaning you can get two questions answered. If you have more questions you can buy more incidents for $195 each.

The NDA almost made sense when the SDK was first released. And anyway it had precedent, in that when Apple distributes pre-release software to developers, an NDA always applies. Historically the NDA on a particular release has been lifted when that version is released to the public. This has always been the case with pre-release versions of Mac OS X.

iPhone OS 2.0 was released on July 11. But the iPhone NDA still applies. The rationale for the difference with Mac OS X, as explained on Apple's Cocoa-Dev mailing list, is that Mac OS X releases always include developer tools, while the iPhone release does not. Since the public release of Mac OS X means making the tools publicly available, the prior NDA can no longer apply. With the iPhone this is not the case.

With no obvious milestones on the horizon, and with Apple reps continuing to repeat that the NDA still applies, I can't help wondering if the current situation will ever change. It's not like an iPhone OS release is ever going to include developer tools, because the tools don't run on the iPhone. At this point the iPhone NDA could apply forever, a prospect I find depressing but which I can't dismiss.

All of this might make a tiny bit of sense were it not for the fact that iPhone developer information is in fact widely available. Google turns up results for virtually any search term related to iPhone development. Of course, since I've had to accept Apple's NDA, I could not possibly comment on whether those results are accurate.

I also could not possibly comment on whether the iPhone developer discussions taking place at Apple's own web site are giving useful answers. Apple's steadfastly forbidding iPhone discussion on their Cocoa-Dev mailing list, but if you use their web site instead they don't appear to mind.

If you mention any of this on Cocoa-Dev you'll receive sanctimonious responses about following agreements you've accepted. Which, typically, ignore the bizarreness of so piously pretending to protect the privacy information which is already widely available to the public.

So why aren't I using that web site? Because iPhone development has so far been profitable enough that I can't risk being booted from the official developer program. I won't say I haven't looked at them, though as mentioned I couldn't possibly comment on whether I've found anything useful there.

The situation bears a striking resemblance to US laws restricting the export of encryption software. Those laws were based on the idea that, since bad people could use strong encryption to hide their plans, it was important to keep this software from getting into the hands of people who didn't have the good sense to live in the USA (because apparently that's where all the bad guys are). They also neatly ignored the fact that this software was widely available outside of the US anyway. The net effect was a bunch of idiotic restrictions that utterly failed to achieve their intended goals.

And so we proceed. Apple with its fingers in its ears, pretending that its NDA is keeping something secret, developers like me facing a major hurdle as a direct result, and anyone else with a passing interest in the topic having no trouble getting all the information they might want. Apple, you can pretend all you want, but you're not achieving anything useful to you in any way by doing so.


Atomic Bird, LLC