Fixing the Safari spinning beachball

spinning beachball of death

Safari users know about the “spinning beachball”—when using the browser, Mac OS X’s modal wait cursor appears for no reason, sometimes while you’re in the middle of typing or scrolling a page. I had been experiencing the beachball periodically over the last few months and my fix had been to quit and restart the browser—or, when it got especially bad, my PowerBook. Then I installed the public beta of NetNewsWire 2.0 and for the first time noticed the same beachball activity there. That inspired me to seek a fix.

I thought the two might be related, since the new built-in browser in NNW 2.0 uses WebKit, the browser framework classes that also underpin Safari. I wondered whether the same cause was at the root of both SBODs.

I first tried the number one suggestion for the problem from Google, which was disabling auto-fill for forms in Safari (choose Preferences from the Safari menu, click AutoFill, and turn off the third checkbox). This didn’t do anything. I then tried emptying Safari’s cache. Also nothing.

The last thought I had was that there was a problem with the underlying WebKit libraries. The only problem is that there wasn’t a clean way to rebuild them that I was aware of. So I went for a brute force method: I downloaded and re-installed Safari 1.2. After a reboot, I tried to run Safari, and it was fast, no beachball. I then tried running NNW, and it worked smoothly as well.

I don’t really like this solution, because it doesn’t isolate a fix. The problem could have been corrupted binaries, or it could have been prebinding that needed fixing—the reinstallation accomplished both. It also might leave me vulnerable. I don’t know whether the Safari 1.2 standalone download includes some of the security fixes that have been made since the browser was released. Finally, I am noting some irregularities with pop-up menus reporting “Localized String Not Found” in the place of some options. Nevertheless, my browsing experience is generally faster, so I thought this might help some others.

NetNewsWire, MarsEdit public betas

Ranchero Software (aka Brent Simmons) just announced public betas for NetNewsWire 2.0 and MarsEdit 1.0. I’ve been privileged to be a tester for both apps, and I can say without reservation that NNW 2.0 is the finest news aggregator I’ve used on any platform.

And MarsEdit? Well, I’ve used it to compose my weblog entries for the past several months. Multiple document interface, multiple blogs, flexible HTML support, live previews, in a clean, lightweight application. Plus image support, which I will rave about once it is fully supported on my platform (Manila doesn’t support the NewMediaObject verb for the MetaWeblogAPI). Fabulous stuff, and multiple well deserved cheers to Brent (and Sheila).

Score: Tim 0, PowerBook power adapters: 4

I apologize for the unexpected blog slowdown, but my power adapter for my laptop stopped working yesterday. For those following along at home, this is the fourth replacement power adapter (across two different PowerBooks) I’ve had to buy; see prior stories here (2001) and here (2003). Fortunately, it is the first on this particular laptop, so it looks like Apple’s design is improving somewhat.

Still, a power cord should not be designed to allow this sort of catastrophic failure:

I think it looks like they reinforced this connection in the new cord, so maybe I will have better luck with this one.

Once more: wireless printing

It seems that every time we move I spend a few hours reconfiguring our network so that we can print over WiFi to our LaserJet 2100M. This time, as I mentioned last week, the issue was physical; I couldn’t physically connect the printer to the wireless access point as I did before, so I ordered a wireless-to-Ethernet adapter, the SMC 2671W.

The adapter arrived last night, but what with the skunk attack and everything else, it took until this morning for me to get the box open and start working on it. As the reviewers on Amazon have commented, the setup for this thing is non-intuitive via the Web, so here’s how I went about it.

  1. Power up the adapter and connect it to my laptop via the enclosed Ethernet cable. (You may need to toggle the switch on the back between a standard and crossover Ethernet connection until you get a steady green light in the middle indicator.)
  2. Configure your laptop’s Ethernet address to something in the same range as the SMC’s default Ethernet address, which is 192.168.2.25 (I used 192.168.2.20).
  3. Open your web browser and point it to http://192.168.2.25.
  4. Use the Site Survey to find your wireless network and click on the SSID to join (note: if your wireless network does not broadcast the SSID, you’ll need to type this information in).
  5. Reset the IP address of the adapter via the Web interface to a valid address on your network. Because my base station serves as a NAT, all the addresses on my LAN are 10.0.1.* addresses, so I gave the adapter the address 10.0.1.254, and told it to use my base station (10.0.1.1) as a gateway.
  6. Reset your laptop’s Ethernet connection to obtain an address via DHCP.
  7. At this point I could connect to Internet sites through the adapter, meaning that the adapter had successfully joined the network and was accessing the Internet through the base station.
  8. I now disconnected the adapter from my laptop and connected it into the WAN port of my 10-port router, and connected the printer into the router. And darned if it didn’t work the first time.

So my network topology is now clusters of wired functionality connected only by 802.11b:

network map

Photopeer gets noticed

Looks like Jonathan Greene at atamspheric | endeavors has also found PhotoPeer. He calls out one factor that I found with the app as well: it’s hard to evaluate a peer-to-peer application unless there are a lot of people already using it. And because PhotoPeer is an “invitation only” peer to peer network with no central bindery, it’s not possible to discover other users—unless of course they blog about it.

PhotoPeer lights up

Paul Colton’s other software company, PhotoPeer, released its first downloadable bits yesterday, in the form of the PhotoPeer client for the Mac. It’s an impressive effort so far, integrating pretty seamlessly with iPhoto. I’m still waiting for both my invitations to others to join the service to be accepted so that I can see how it all works, though.

Annoying AirPort error message #1

I just spent far too long resolving a problem with a Linksys wireless base station that wasn’t broadcasting its name (SSID) and was using 128-bit WEP. When I tried to connect my laptop to it, running Mac OS X 10.3.4, the laptop threw up its proverbial hands and gave me the error message: “There was an error trying to connect to the selected AirPort network.”

The solution turns out to be bone simple. SSIDs (network names) are case sensitive. My friend’s base station had the SSID set to all uppercase. I was entering it in lowercase and occasionally initial caps.

I didn’t discover the solution until after several fruitless Google searches and looking through the Apple discussions. A helpful thread on the MacOSXHints forums finally gave me the key.

Unsolicited feedback to Apple: Please, if you’re going to throw an error message this useless, log more detailed information to the Console or wherever so I can figure out what the hell is going on without wasting two hours on a nice holiday afternoon.

Inside scoop about Safari RSS and more

I figured that Dave Hyatt, ex-Mozillan in charge of Safari and one of the only Apple employees blogging, would be all over Monday’s announcements about RSS and Dashboards in Mac OS X 10.4. I was right:

  • Dashboard, in which Dave explains that Dashboard panels are HTML + CSS + JavaScript
  • Dashboard II, in which Dave traces the lineage of the Dashboard concept back to Mozilla and browser sidebar panels
  • The Search Field, in which Dave writes about the extension of the Input element that makes the new Search field omnipresent
  • Safari RSS, in which Dave talks about version numbering and product naming
  • Dashboard III, in which Dave talks more about the architecture (including security measures to prevent execution of malicious embedded code) and Safari 2.0’s new support for WinIE’s drag events
  • Plugin Scriptability, in which Dave makes clear the connection between the new plug-in formats coming down the wire and Dashboard widgets

I wasn’t all that excited about the Dashboard on Monday, but I am now. I get excited any time a rich new programming platform gets born.

Apple WWDC 2004: RSS is everywhere

Courtesy MacRumors’ coverage of the WWDC Keynote, it looks like Apple will be adding an integrated RSS aggregator and search capability to Safari in Tiger (Mac OS X 10.4). My first thought was, “Somebody buy Brent Simmons a drink.” Brent is at WWDC, and his company, Ranchero, has one big product, NetNewsWire, which is the current leading aggregator on Mac OS X.

But on second thought I’m not sure how much this will hurt Brent. It may even help him. I think the interesting scenario for Safari is less around aggregating feeds and more around ensuring that the feed doesn’t look like gobbledygook when you click the link. If Safari’s changes mean that the user experience for finding and subscribing to feeds improves for Joe User, then the whole RSS-sphere wins because it makes more people understand what RSS is about and adopt the technology. There will still be a market for power apps like NetNewsWire when people tire of reading feeds in their browser and want a more refined experience—and at that point they’ll understand the value and be able to make an informed decision about purchasing the product.

Put another way, this move by Apple broadens the potential base of RSS adopters to people like my kid sister and my mother-in-law, neither of whom would be likely to download a specialized RSS reader application voluntarily.

Hooking up an iPod to a Passat

I currently use a tape adapter to connect my iPod to my Passat’s stereo, but I’m getting tired of the grinding noise from the adapter. So I went looking for information about hooking it up directly to the stereo through an aux input.

What I found is that there are people who will spend a lot of money to get a perfect iPod install, including a built-in iPod holder and charger. It appears the answer to my question is: it’ll cost about $75 and some labor to pull the head unit and install a line in adapter, then some additional cables to run from the line in to the iPod. An alternative is to use a device designed to plug into the CD changer connector in the trunk and fool it into accepting input from the iPod.

Looks like a full weekend project… sometime later.

Coolpix and iPhoto

Quick follow-up to yesterday’s post about my first experiences with my Nikon CoolPix 2200. Some of the image questions I had—the small resolution (800×600 vs. 1280×1024) in particular, and some of the extra image artifacts on street signs—were caused when I upstreamed my photos to the web from iPhoto. The native resolution of the images was much higher. However, I still saw light balance problems on some photos (to fix, I’ll need to pay more attention to light levels and exposure settings when I shoot) and moiré effects on the shot of the clock tower. Apparently there’s not much I can do about that given the camera’s resolution; I’ll just need to be aware of it.

I forgot to mention one bennie of this camera: it’s really small, light, and portable. Almost as light as my cell phone, a little bulkier in a pants pocket but really not too bad.

Keyword searches + iTMS: bliss

I switched to Safari on my Mac a while back, and I hardly miss the Mozilla platform at all. —OK, that’s a lie. I miss the rapid updates, the cool features like being able to browse the DOM tree on pages I’m developing, and most of all the keyword searches. God, I miss the keyword searches. Typing “az” + a book’s name in the address bar, and getting the Amazon page for the book, is just brilliant.

I missed the keyword searches in Safari until yesterday, when I downloaded and installed Sogudi, a free plug-in that allows you to create customized search terms that can be used in the Safari address bar. And then today I grabbed a search string from MacOSXHints that allowed me to construct an iTunes Music Store search from Safari’s address bar. Bliss.

How did I miss this: PDF viewer browser plugin for Mac OS X

I can’t imagine how I missed the PDF Browser Plug-In for Mac OS X, but thanks to atmasphere for pointing it out. (Background for non-Mac users: while PDF is deeply integrated into Mac OS X, including being the actual print output format, no Mac browser currently displays PDF files in-context—they are all handed off to a second application. Not a big deal, except I can’t count the number of times I’ve clicked on a PDF file and forgotten I downloaded it, and found it days later on my desktop.)