Rick Swift & Apple & Embedded I make things. Sometimes, I’ll talk about it here.

My Gorram Frakking Blog

AirPort & USB Problems with AlPB and Panther

I love my new 15" Aluminum PowerBook G4 (1.25 GHz, backlit keyboard, SuperDrive) very much (many thanks to my facilitator at Apple who helped make it a reality). It’s mechanically much more sturdy than was my TiPB, the fan runs almost never, and the backlight works (which is why I replaced my otherwise fine TiPB). I also think Panther (10.3.1, build 7C107) is a huge improvement over Jaguar.
However, I’m starting to have serious problems, and I don’t know how much of it to blame on Panther and how much to blame on the new hardware.
It started yesterday or the day before, when I restarted (I can’t remember why) and all of sudden my separate keyboard and mouse stopped working (I typically connect the PowerBook to my 22" Cinema Display which has a black/clear Apple keyboard and mouse connected to it). I have an Apple ADC adapter which is normally plugged into the DVI port and the USB port on the right side of the PB.
The USB devices had no effect on the UI, and the mouse light was dark. After a bit of unplugging and re-plugging, I discovered that if I plugged the mouse directly into the port on the left, everything came back, and I could plug the mouse back into the Cinema Display.
BTW—I’ve noticed that unplugging or plugging in a USB device causes a sleeping PowerBook to wake. I understand this to be a problem other PowerBook/Panther users are experiencing, and not just on AlPBs.
I came into work this afternoon, plugged everything in and opened the lid on the PowerBook. Everything came up fine. I read through the day’s mail (Mail), checked to see who was online (Adium), listed my bugs (IE; normally I use Safari, but Bugzilla doesn’t work quite right with it), and then headed for lunch with the group. When I came back, both screens were dark, and hitting keys on either keyboard failed to wake the machine (this is the kind of problem I’d been having on my TiPB prior to Panther).
So, I held the power button until the PB shut off, pressed it to start it up, and ran into the same USB problems described above, but slightly different. Before, the mouse’s light would not come. This time, the light was on, but the mouse had no effect. I unplugged it and plugged it back in to the Cinema Display, but now the light was off for good. I finally discovered that I had to plug the ADC adapter into the left-hand USB port to get those devices to work at all, but they still had no effect on the UI (although the mouse’s light would at least come on).
Apple System Profiler shows two USB roots. Nothing under the first, a hub under the second, a hub under that, and an Apple Optical Mouse under that.
Now, here’s where it gets much worse: the PowerBook thinks there’s no BlueTooth and no AirPort! They’re not off, they’re simply not installed!
So I restarted a couple of times throughout all of this, trying various things (e.g., I removed the Cinema Display from the mix altogether). The PB now recognizes that there is BlueTooth hardware, but refuses to see the AirPort card. And no amount of restarting or USB device permutations seems to make USB work. I just tried plugging the mouse directly into the left port, and the light comes on feebly (just sort of flickers, and not in the way it does when you move the mouse and it gets brighter), but the cursor won’t move.
At this point, I’m at a loss. I’m writing this entry using the PB’s own keyboard and mouse, and hopefully that will hold out so I can get some work done today.
Oh, one more issue: I got into a situation a couple nights ago where the keyboard backlight refused to come on (or be adjusted). The room I was in was very dark. I had to restart to get it straightened out.

I hate Cocoa

I’m getting so tired of hearing people say things like “our product for Mac OS X features a completely new Cocoa-based user interface to take maximum advantage of Apple’s new operating system.” Cocoa does not give an application any superiority over Carbon. Cocoa is not more stable, nor does it perform better. It doesn’t even really make life any easier on the developer.
But people continue to buy into the hype, and then regurgitate it on their customers.
Crap.

Nerf Herder Makes It to Public Radio

NPR always manages to play the most apropos music during their program breaks. Today on Talk of the Nation, Ira Flatow did a show about bats. While my local affiliate (KQED) was making announcements during the NPR break just before the bat segment, you could hear Nerf Herder’s theme song to Buffy the Vampire Slayer in the background.

Panther & Office X

Here’s a hint for those of you upgrading to Panther. I just tried running Office X for the first time since installing Panther, and Word kept crashing. After a little investigating, I realized that (for some reason I don’t remember), I had Office X 10.0.0. After applying three updaters, Office X 10.1.5 seems to work fine.

http://mactopia.com/

HTTP Future Features

I have no idea what’s in store for HTTP 1.2 and beyond, or if there’s even any work being done on it. But here’s one feature I’d like to see.
In general, an HTTP request is made to be secure or non-secure by the scheme used in the URL sent by the user agent (https: or http:, respectively). However, this puts a burden on the developer of the website (usually a webapp) to ensure that URLs get written correctly.
This is a consequence of the use of SSL for HTTP security. SSL happens at a protocol layer below that of HTTP. The secure connection is established first, then the HTTP protocol is layered on top of that. By the time the server gets a chance to determine what resource is being requested, the SSL connection must have already been established.
It makes much more sense for an HTTP request to be made, and if the server determines that the requested resource is secure, that the connection then become secure. In other words, the requested resource should be able to dictate whether or not it needs to be secure.
This means we need a way to transparently make secure a connection that began unsecure.
There are complications with this, of course. Many times, information needs to be sent as part of the request in a secure fashion (your login and password information, for example). A way to handle this needs to be devised, of course.
Even the specific URL might need to be secure. That’s what HTTP currently does. The only thing you can’t keep from prying eyes is the IP address and port to which the request is being sent.
There are ways to mimic this behavior. For example, an unsecure request to a secure resource can cause a secure redirect. But redirects cause problems in the user agents, most notably involving the back button.
Okay, that’s all I can write for now, but I’ll try to get back to this subject later&hellpi;