Archive for July, 2007

Verizon USB720: Useful but Disappointing

After a week at the beach with a Verizon USB720, I’ve found it useful (neither of our home laptops has a modem, and there’s no Internet access in our beach house), but very frustrating. Apparently the Novatel hardware includes a GPS receiver, but Verizon doesn’t make it accessible (neither does Sprint, who offers the same gadget). The connection always comes up at 144,000bps, which is about what my ISDN modem used to provide — somewhat better than double the speed of a 56kbps analog modem, but about 10% of my home DSL speed; I don’t think they’re allowed to call this “broadband” in most markets.

Downloading my email (spam) takes tens of minutes; Safari keeps timing out and telling me I’m not on the Internet because it’s getting no response on requests. I find myself alternating between: a) connecting, starting a Eudora mail check and loading a bunch of Safari tabs plus a Plucker run, and coming back (much) later; and b) connecting, trying to use the Mac, and wanting to howl in frustration because I can’t read my mail or web pages; I have to wait a long long time before the Mac has loaded the content I want. I keep finding myself reading a novel, while supposedly using the computer. At least Pattern Recognition is very good.

I’ve wasted several hours of this vacation waiting — for mail or pages to download or transfer, for connections that were actually down, for pages that refused to load (again). Pfeh!

I keep getting disconnected — perhaps half the time this includes a scary message about disconnecting a device and losing data, although that’s not such a big concern as reconnecting lets the application retry — this tends to sort it out, except when the connection doesn’t have enough bandwidth to satisfy the pending requests. I get a new IP on each reconnection, though, which gets AIM in a twist.

On the other hand, I have to respect any operating system that considers it an error condition if Internet access is completely unavailable.


PS-Happy SysAdmin Day, folks!

Comments

iPhone Observations

I had an iPhone on eval for a couple of days, and have learned many things.

iPhone VPN is buggy — it only accepts numeric passwords (many people have gotten around this; mine hung when I tried), tends to forget them (these are well documented online). It’s quite limited — not compatible with RU’s IPsec configuration (we could perhaps fix this if we weren’t concerned about attackers using the VPN protocols); not compatible with our (preferred) SSL VPN. It’s insufficient — as Glenn Fleishman pointed out for Macworld, the iPhone won’t store multiple IPsec or multiple PPTP VPN configurations, and cannot be configured to always reconnect to VPN when moving between networks.

The iPod functionality doesn’t support shuffle by album! It’s only by song (which I don’t like).

Several people have complained that the iPhone doesn’t work with their older earphones. I was pleasantly surprised that it works with my older Apple iPod In-Ear Headphones, although unfortunately it doesn’t accept the higher quality UltimateEars ‘phones Amy and Julia gave me for my birthday. Most earphone cables have a thicker area around the connector for grabbing to extract the ‘phones, and Apple recessed the jack without leaving enough room for those ‘handles’.

I thought I could just dump the full-quality MPEGs from our TiVo onto the iPhone, saving the considerable H.264 recompression & scaling time, but they don’t work. On the other hand, Dr. Who at 480×320 looks and sounds great. As I try them out, though, I find myself cursing whoever decided not to show file suffixes on the iPhone, or in iTunes, or in the error messages that a file can’t be transferred because it’s the wrong type. Okay, but which one??? I have a .mov, a .mpeg, and a .m4v — which is the tall one, which is the good one, and which won’t go??? I’ve made some guesses based on graniness and proportions, but they are guesses, and I shouldn’t have to rename the files and spend a few hours transferring and deleting and retransferring to discover what Apple refuses to tell me.

It’s great that the iPhone can display PDFs, but annoying that it seems they must be received via email or accessed in real-time via a website.

Pinching doesn’t work well one-handed. I tend to spend 2h+ per day walking around or sitting with my Treo 650 in hand, reading or watching video. It’s easy to use my thumb to drive the iPhone (or hit keys on the Treo), but no pinch. So to zoom I bring my other thumb to bear, which doesn’t work terribly well. Also, due to its size and slipperiness, the iPhone is harder to hold. I dropped it within 24h of getting it. I know the screen is bulletproof, but not the back. I can see marks on the bottom black and the top silver. This is minor, but how many times will I drop an iPhone during its 2-3 year lifetime?

It’s annoying that movies must be manually selected in iTunes before they will sync over.

I wish I could set a home page; I have a list of links, and have to keep telling the iPhone to go there. I understand the desire to avoid a heavy page load on connect, but we should be able to have a home page (perhaps even a local one, or start with the Bookmarks list). A wiki would be even better for this; perhaps I’ll set up a private one after I get a real iPhone, someday.

Despite the claims that iPhones don’t have scrollbars, they actually do. As you flick-scroll through a long document, the iPhone shows a small dark grey proportional scrollbar to give you a sense of position within the document — a welcome aid to navigation, since when reading there’s no indication of how far down the page you are.

I think Apple overcommitted to the “real” Internet in your pocket (meaning something very like Safari on Mac/Windows). Comparing reading the same pages between the Treo 650 and the iPhone, the iPhone was actually inferior. The page loading was slower, since each page had to be downloaded; in contrast, Plucker documents are already in flash, although the CPU can take a few seconds to render them. The iPhone renders all the images, even though on many sites they’re purely advertising. Here’s a case where Apple’s delivering on their claims, but it’s a bad thing for usability; a setting (ideally per site) to skip images would be a boon.

Plucker reflows paragraphs to fit the narrow screen width; this works well except on rare pages with hard-wrapped lines. Mobile Safari tries too hard to keep the original web page’s column width, meaning many pages are either too tiny to read or can only be read sideways (scrolling twice per line is a non-starter). There’s no reason to slavishly honor web designers’ specifications for width on a new platform with such different characteristics than these sites were coded for — perhaps if the iPhone finds an iPhone-specific style sheet its width should be taken seriously, but most web sites just assume 1024×768 or better, and the iPhone suffers needlessly when it tries to play that game. In fairness, some sites, like The Onion AV Club look much better on the iPhone, but the news sites I mostly read don’t.

I’m disappointed by the iPhone’s font rendering. I can tell it’s using ‘real’ fonts, but anti-aliased Gothic 18 on the Treo is crisper and more readable.

Additionally, when reading web pages and email, you almost always want to scroll a full page. Safari tends to scroll half a page, or a page + 2 lines, or a page down and 1/4″ to the right. It’s erratic enough that I spend time looking for the last line I read, which is a recurring waste of time. I see that the iPod is trying very hard to respect what I did, but I shouldn’t have to start at the bottom, drag to the top, and watch how far it went. I should just make the “scroll” gesture and it should Do the Right Thing, since WIM is obvious.

I do like that (unlike the iPod) the iPhone is usable while plugged in, and can always be disconnected quickly (the iPhone Dock connector doesn’t lock like the iPod connector); this is partially because it’s not accessed as a hard disk, and partially because people like to charge their phones but still need to answer (make) calls. In contrast, iPods are largely superseded by iTunes and speakers on the computer they plug into.

Bug or design flaw? With the mute button engaged, iPod mode still plays sound on videos. If I have mute engaged, the speaker should be off. Not “only on for those things Apple believes I probably really want to hear anyway”, but off. I haven’t checked YouTube.

Speaking of which, it’s ironic that a small screen with a relatively slow CPU and network connection is such an excellent YouTube device, but that will remain true until Google makes the H.264 streams available through their normal website.

I haven’t really used the MobileMail. The PIN isn’t adequate security, so I’ve only trusted it with my unused .Mac account.

I haven’t used the calendar much — I’m working under some unusual constraints, and 2 days isn’t enough to switch myself to looking at the iPhone for calendaring, but I find the absence of Week view inexplicable.

I haven’t used Visual Voicemail! Rockefeller has a (poor) Windows-based voicemail app which I use sometimes, either to avoid switching headsets or for better control than button mashing. Interestingly, Apple’s iPhone implementation looks substantially better, despite the physical constraints. I always knew the app stunk, but apparently the modern ones are all purely Exchange based. Perhaps we’ll see some improvements in this area.

Here’s a silly one: the iPhone gets dirty so easily that wiping it off wastes a few minutes each day. I have better things to do with my time than polish an (admittedly beautiful) Apple iPhone. Watching video is the worst, since the controls are all onscreen and don’t work well with fingernails. After picking a video and hitting Play/Pause a couple times, it gets notably harder to see.

Video controls are poor. They’re hard to hit, don’t always trigger, and accelerate as you hold them down. The result is that by the end of a commercial break, once I see the show and release, the iPhone has jumped substantially past the end. Then I go back, and often have to watch the last commerical again (3x total: once fast forward, once fast backward, once normal forward) to get to the resumption of the program. Dragging the time slider is way too imprecise. These are fixable in software, and hopefully they will be soon.

Comments

Something Unexpected: Apple on tcpdump

This is something I never thought I’d see: an Apple article on capturing packets with tcpdump. Cool!

Apparently this article dates back to 2004, but I certainly never knew it existed.

Comments

My iPhone Dilemma

I want an iPhone, of course.

My problem (aside from cash outlay to purchase — the monthly compares well to my current Verizon unlimited data plan), is that it’s not quite what I want.

I have a 60gb iPod photo, which has been full almost since I got it. I stopped using lala a while ago because the iPod can’t hold any more music, and I really want it all with me. Ironically, I can’t listen to my iPod most of the time, since it’s usually plugged into a Mac with my Eudora Folder mounted. On the other hand, using rsync, I keep all my music on all my Macs, so the iPod being unavailable is not a big problem.

I use my Treo 650 very heavily, for the following (roughly prioritized):

  1. Phone: less than 30min in a typical day, but critical.
  2. SMS Pager: light use, but critical.
  3. Plucker: anywhere from 10 to 180 minutes per day.
  4. Address Book & Calendar, many times a day, but iSync keeps corrupting my data.
  5. TCPMP to watch TV: anywhere up to 120 commuting minutes per weekday; unfortunately TCPMP can’t handle H.264 video quality, and capacity is limited to an SD card. I think my 2gb SD card is the biggest it can handle, but cannot confirm; I’m not going to carry a bunch of SD cards around to watch more TV.
  6. Web Confidential: Apple’s 4-digit PIN is completely inadequate to replace this.
  7. TomTom Navigator: indispensable on trips, and Google Maps doesn’t support Bluetooth GPS.
  8. Vindigo: Replaceable by Google & Google Maps, and much less important now that I’m a father. ;)
  9. Documents to Go: iPhone can handle this directly.
  10. Web browsing: I rarely do this over Verizon’s network.
  11. Still & video camera: The Treo’s stinks, and I carry my Canon SD800IS during weekends.
  12. Salling Clicker: recently replaced by an Apple Remote.
  13. TuSSH/pssh: I’d really really really like an iPhone ssh client with secure private key storage, but the Treo applications are not mature either. Instead I now carry a laptop to all meetings, which is a significant productivity booster, but much bigger and more expensive than an iPhone.
  14. Games: I rarely have time for them, and the iPhone will certainly get some, as it’s a much better platform than the iPod.

In contrast, I use my iPod anywhere from 0-120 minutes per weekday for listening to music; the rest of the time it’s generally mounted as a hard drive. If and when Thunderbird + Penelope is suitable, I’ll be delighted to switch to independent IMAP clients on all my Macs.

So what I want is an iPhone with a 100gb drive, ssh client with encrypted private key support, encrypted data storage, the ability to read Safari web archives (Safari on Mac & Windows would need the complimentary ability to create such archives, like Plucker), and GPS support in Google Maps.

Without a hard drive, it’s not a suitable replacement for my iPod, and I will be quite surprised if Apple doesn’t offer a 100gb large-screen iPod sans phone by the end of this year.

Without offline browsing, encrypted data storage, and GPS, it’s not a good replacement for my Treo 650.

I hope the next-generation iPhone includes 16gb, 3G celluar data, and GPS. If I got a current model iPhone, I’d probably keep 2-3gb of video and 3-4gb of music on it, and deal with the frustration of not having the rest of the music. I really do not want to switch to watching TV instead of reading (computer) news on the train, but I could console myself with surfing as I walk to and from the train. I’d probably bring my Treo on trips for GPS. I’m not sure what I’d do about Web Confidential. Most of the time I could get the same data from a Mac at home or work, but not always. I could put a subset of the data on an SSL and password protected web page for reference, but that’s risky.

I currently carry noise-blocking stereo earphones, a phone headset, and a 2.5mm-3.5mm adapter; I switch back and forth a couple times a day. A single high-quality headset with mic and button sounds great, although I’d prefer an in-ear model with more noise blocking than Apple’s In-Ear Headphones, which I found inferior to both Shure and UltimateEars ‘phones.


Update: I have an iPhone for a couple days on eval, and I’ve confirmed that although it will accept my WPA Enterprise password, it can’t actually join the network. This is a problem as we only allow access to many management interfaces from trusted networks, and the wireless one requires WPA Enterprise.

Comments (1)

Stupid Parallels Trick: Avoiding Auto-Start

Parallels Desktop has a nifty feature, whereby it can automatically start a VM (virtual machine) automatically run whenever the VM is opened.

It has a somewhat less useful feature whereby VMs automatically close when stopped.

Parallels has a flaw and bug that a) you cannot even view the VM configuration when it’s running, and b) when you try it generates an error, but not an option to stop the VM and edit.

The workaround (from Parallels’ Help) is start Parallels and hold the Command key down when opening the VM. This circumvents the auto-start feature so you can configure the VM.

A better solution would be to a) let you pause a running VM and view its configuration in read-only mode, and b) if you try to edit, then offer to stop the VM and continue.

Comments

.Mac synchronization, the free way (rsync)

Hooray! I now have a functional script for copying my iCal, Address Book, and Safari bookmarks. I suspect it’s copying more than necessary, so I may refine it, but it’s doing what I need now. I am amazed at how many places Apple sticks calendar data!

A big thank you to the rsync and OpenSSH developers. Once again, the script is largely comments, but that’s good — it is fundamentally simple.

Here is version 1.0 — please check http://www.extrapepperoni.com/category/computers/synchronization/ and http://www.reppep.com/~pepper/code/ to see if there’s a newer version.

I wrapped the lines here to make it more readable.


#!/bin/sh
# rsync-dotmac.sh
# v1.0, 2007/07/11 by Chris Pepper
# Check for a newer version at:
# <http://www.extrapepperoni.com/category/computers/synchronization/>
# <http://www.reppep.com/~pepper/code/>

for h in mac1 mac2
 do
  ssh $h rm -Rf ~/Library/Caches/com.apple.iCal ~/Library/Caches/iCal \
   ~/Library/Caches/Metadata/iCal \
   ~/Library/Preferences/com.apple.iCal.alarmsCache.plist \
   ~/Library/Preferences/com.apple.iCal.AlarmScheduler.plist \
   ~/Library/Preferences/com.apple.iCal.plist \
   ~/Library/Preferences/com.apple.iCal.sources.plist \
   ~/Library/Preferences/com.apple.iCalSync.AlarmScheduler.plist
  rsync -va --delete ~/Library/Application\ Support/AddressBook/ \
   $h:"Library/Application\ Support/AddressBook/"
  rsync -va --delete ~/Library/Application\ Support/iCal/ \
   $h:"Library/Application\ Support/iCal/"
  rsync -va --delete ~/Library/Calendars/ $h:Library/Calendars/
  rsync -va --delete ~/Library/Safari/Bookmarks.plist \
   $h:Library/Safari/Bookmarks.plist
 done

# To use, enter your read-only hostnames on the 'for' line above.
# They must, of course, be accessible from the system you run this script on.
# The script pushes data (Address Book, iCal, and Safari bookmarks) from
# a master to one or more read-only systems. It is intended as a free
# replacement for a part of Apple's .Mac service that caused me some
# frustration.
# I wish Apple provided a way to tell those applications not to allow
# (futile) changes on read-only systems, although with .Mac services
# that should not be necessary.
# I don't sync ~/Library/Keychains/, because my keychain items vary
# between systems, so unidirectional sync would be suboptimal.
# You may get warnings when going between OS versions; I have had no
# trouble just ignoring them (so far).
# If you get double birthdays, try disabling and re-enabling the
# Birthdays calendar in iCal's Preferences.

Comments

How does .Mac notify applications that their data has changed?

Now that I’ve given up on .Mac sync, I see it’s very simple to push the data out. The biggest problem is that rsync doesn’t approve of Apple’s spaces in names, so I have to get a bit silly with double quoting. Not a big deal.

This raises a big question, though: How does .Mac sync notify apps that their data has just been changed out from under them, and they should reload? Obviously all these apps have some mechanism to reread their data, because Apple uses it, but I have no idea what it is. For Address Book & iCal, it would be reasonable to close them as part of the script (if I could find a way that didn’t involve sending a Quit AppleEvent, which has an annoying tendency to launch non-running apps solely so it can tell them to Quit). But for Safari, it would be quite bad to lose all the tabs I left open.

Does anyone know how .Mac does its update magic?

Here’s the simple script — insert your own names for mac1, mac2, etc.:

#!/bin/sh
# rsync-dotmac.sh
# Push or pull current .Mac content (Address Book, iCal, and Safar bookmarks) from master to read-only systems.
# Really needs a way to tell applications on read-only systems not to allow (futile) changes.

for h in mac1 mac2
 do
  rsync -n -va --delete ~/Library/Application\ Support/AddressBook/ $h:"Library/Application\ Support/AddressBook/"
  rsync -n -va --delete ~/Library/Application\ Support/iCal/ $h:"Library/Application\ Support/iCal/"
  rsync -n -va --delete ~/Library/Safari/Bookmarks.plist $h:Library/Safari/Bookmarks.plist
 done

Note that this script doesn’t actually update anything. Once you have your real hostnames entered, remove -n from the script, and perhaps the v option as well, since you won’t be seeing the output once it’s in your crontab.


Hmm, I wonder if Library/Application\ Support/AddressBook/.database.lockN is relevant…

Comments