Wednesday, April 18, 2012

Apple fixed Message.app (iMessage) in iOS 5.1 -- and nobody noticed

I give Apple a lot of hurt, but here they fixed something big and nobody else seems to have noticed. Even better, by fixing it they put more hurt on a deserving AT&T.

A few months ago I wrote about iMessage use on an AT&T iPhone without a SIM card (iPod Touch mode) using .me accounts. Problem was Message/iMessage 5.0 wouldn't let me enter a .me account in the iMessage app, nor would it show .me email addresses. I could only iMessage my son from the Contact UI. From Message.app, since he's on H2O wireless rather than AT&T, I could only initiate a conversation using SMS (20 cents for me, 5 cents for him).

I'm still on iOS 5.0 on my phone [1], but my son is on 5.1. So I could see than on his phone I can enter email addresses (the keyboard has a '.' now) as well as choose a .me address -- all from the Message.app UI. I've now updated my phone to 5.1 and it works there too.

It's a significant enhancement, but I don't think anyone else noticed ...

[1] I was concerned it wouldn't work with MobileMe, and I've yet to switch to the inferior and problematic iCloud alternative.

Monday, April 09, 2012

The post-Flashback era: removing Java and Flash from OS X

Decades ago, my SE/30 caught a Mac Classic virus. There was a fine freeware antivirus app for the Mac then, maintained by an academic and Mac geek. I used that until OS X came along. After OS X there was no great need for antivirus software, and none worth using.

Alas, as had been long expected, those days are back. There is money to be made now preying on Mac users, and Windows 7 is not the soft target of XP or 95. All Mac geeks have been reviewing the two important articles on Flashback:

I've run the 'defaults read' test on the admin account on four machines:

  • defaults read /Applications/Safari.app/Contents/Info LSEnvironment
  • defaults read /Applications/Google\ Chrome.app/Contents/Info LSEnvironment
  • defaults read ~/.MacOSX/environment DYLD_INSERT_LIBRARIES

I suspect the last needs to be run on every user account, which is the sort of tedious job antiviral software was built for. So far I haven't found any problems.

I haven't put antiviral software on our Macs yet (OS 10.5, 10.6, 10.7) but i'm taking these measures:

  • Uninstall Flash Player and switch default browsers to Chrome (sandboxed Google-owned Flash)
  • Uninstall Adobe Acrobat (done long ago)
  • Never run as admin user (done long ago)
  • Disable Java on all Macs (Java Preferences - delete cache, uncheck JVM)
  • Don't install Microsoft Office

I'll move my two Mountain Lion capable machines to the new OS later this summer, and I'll be watching to see what happens with OS X antiviral software. My Win 7 experience with antiviral software means I'll think hard before I take that road.

Update: Flashback may be the worst virus-specific malware infection ever.

Sunday, April 08, 2012

AT&T's SMS spam - blocking the email route

I am sure AT&T is doing everything in its power to reduce the amount of spam that hits my text plan [2], even though they earn money from each spam [1]. They're just that kind of company.

As best I can tell there are three sources for the AT&T carried text spam I get. One source has an 8 digit number; I forward those to AT&T's spam service and, annoyingly, have to send a second text with the number retyped. I have no idea if this does anything, or if it even reverses AT&T's charge.

The second source has a "short code". AT&T says I'm to to reply "STOP" to these. I assume these are AT&T "approved" and are never classified as spam, even when they sell criminal scams.

The third source is via an email gateway to my "device default email address" of "your-10-digit-wireless-number@txt.att.net":

AT&T Wireless- Block spam text messages on your wireless phone

[To] Block all email messages sent to your device's default email address (i.e., your-10-digit-wireless-number@txt.att.net). Create an email alias for your phone in Messaging Preferences, then change the Mobile Number Control settings so that only those text messages addressed to your email alias will be delivered to your wireless device.

I had no idea that it was possible to send email to my SMS service -- we were never part of the SMS era. What a perfect scam setup.

Sounds like the "fix" is to create an SMS email address that is then kept secret. This isn't done through AT&T's usual mobile site, it's a separate service with its own password (max 8 character?!) and registration process: http://mymessages.wireless.att.com

I'll look at doing this for our phones.

[1] Thanks to iMessage, and H2O Wireless and old AT&T-locked iPhones for the kids, our family does very little SMS. So it's cheaper to pay 20 cents/text than to sign up for AT&T's desperately overpriced text plans.

[2] Obviously I'm joking. If AT&T were serious about blocking spam they'd let us block all short code text.

Update: I recommend this reference: http://www.howtogeek.com/howto/41123/how-do-you-block-annoying-text-message-sms-spam/. As I half-suspected, the STOP approach is not the best. I'm surprised to learn that as bad as AT&T is, everyone else is worse. Blocking email gateways also blocks many notification services (airlines, Google Calendar, etc) -- but I can live without those. Also Android phones have some pretty good SMS blocking methods, iPhones have none.

Update 2: Weird coincidence -- or not. NYT article on the topic today. They mention Cloudmark's emerging "7227" service, but nothing about providing options to block all short codes, or all email gateway spam, and nothing about the revenue carriers make from text spam. Sigh.

Update 4/9/12: I blocked all email text or multimedia messages and all MOBILENUMBER@txt.att.net and MOBILENUMBER@mms.att.net messages. There are also block and allow lists I might play with later, but for now I blocked everything. I didn't set up an alias.

Unfortunately (cough) AT&T doesn't implement similar blocking for SMS:

Text messages sent via email can also be blocked directly from your handset. When you receive an email that you wish to block, simply reply to the email with the word "block" in the body of your message. The sender's email address will be added to your Block List. Note: this does not apply for mobile-to-mobile text messages.

I suspect these blocks won't make much difference, but I'll see.

Update 4/13/12:

How to stop text spam: Why cellphone spam is on the rise and what you can do about it. - Slate Magazine

... they use customized computer programs to generate and send hundreds of messages in a matter of minutes, varying the wording, capitalization, and punctuation to evade the phone companies' rudimentary spam filters. And thanks to a fiendish device called a SIM box, the spammers can plug dozens, even hundreds, of SIM cards—each representing a different mobile phone number—into a single phone. By the time you’ve received a text and reported the number, there's a good chance it has been used hundreds of times and discarded...

... Blocking messages from the Internet is also unlikely to cut down on the volume of spam you receive. Sending texts from the Web used to be a popular method for mobile spammers, who could try endless random combinations of numbers in hopes of a few hits. But unlimited texting plans made that approach less attractive to spammers, who know that such messages can easily be blocked. Though it’s still worth doing, don’t expect a magic bullet...

... a third of all text messages in China today are spam...

... They knew unlimited texting plans were in the pipeline. They should’ve known that unlimited plans mean seemingly unlimited spam...

I think my son has been responding to some of these spams, that may explain the 200 texts he's received. The only solution seems to be to turn off SMS service altogether. Interesting observation that the spam deluge is a result of unlimited texting plans (free spam), and that China saw it first.

Saturday, March 31, 2012

iPhoto to Aperture migration: movie support is weak in Aperture, but missing thumbnails are no longer a problem

In the final stage of my iPhoto 8 to Aperture 3.23 migration I imported my a 62 GB iPhoto Library of about 18,629 "Photos", of which, by keyword, 259 were actually "Movie".

Yes - iPhotos support of Movies is half-hearted.

In iPhoto all but one of the 259 videos displayed with a preview image.

After the 8 hours of importing and processing were done I had a 66GB Aperture Library. The first thing I did was check the Movies.

This time there were 270; 259 with the keyword iPhoto Original and 11 with keyword iPhoto Edited. Aperture stacks them as it does photos (option-;).

Of the 270, 36 showed icons indicating they could not be played within Aperture -- though they could play in QuickTime. Another 43 could play in Aperture, but they had no thumbnail (black thumbnail). There didn't seem to be anything different about these movies. Another two had incomplete thumbnails.

There's nothing to be done about the unsupported video formats -- they area  good reminder that the 2010 video format situation is a bloodymess. I will put these on my list of videos to transcode to a modern format -- hopefully without too much quality loss. [1]

The missing thumbnails seemed likewise intractable. I couldn't find any web resources on fixing them. Aperture Help was more ... helpful. Turns out there's now a menu command to generate thumbnails (new in 3.x), that took care of the problem.

Alas, there's no fix for a much more severe problem. Aperture imports iPhoto image Titles and Descriptions, but not iPhoto Movie Titles and Descriptions. The Aperture "Captions" for these movies were empty.

[1] The more I learn about transcoding video, the more terrible it seems. To do it well seems to be dark magic involving several pre-compression processing steps. Maybe I'll transcode to Motion-JPEG and be done with it.

Update 4/2/2012: The Title and Captions for the movies appears to be tied to the "Version Name" bug that can affect importing of iPhoto Titles from images. When I set Version Master = Master Filename on iPhoto import I got Aperture.VersionName and Aperture.Caption values from iPhoto. I also noticed that the Built in "Videos" smart album doesn't show videos Aperture can't manage internally -- so it's misleading (another bug).

The unsupported video format may be from our Canon SD camera, and there are some odd bugs there too. I can open the unrecognized video in QuickTime, save it as .MOV (same data, only the metadata changes) and import it back in -- and now Aperture will recognize and play it. So the problem isn't a codec issues, it's packaging/metadata problem. During the export/import process The Version Name was lost (not to surprising), but in addition the prior version name was set to the Date Created (bizarre beyond words).

Update 4/3/2012: I'm still trying to understand what Aperture is doing with movies imported via browser vs via iPhoto Library import. I think both methods are unforgivably unreliable and buggy, but they have different bugs. I'm experimenting with combining both, then reviewing metadata in list view to decide which to keep.

I recommend using the list view and adjusting metadata to show file size, project name, file name, version name, caption, rating, date and so on. I discovered that several videos were tagged as "iPhoto Externally edited", but they were in reality JPEG thumbnails.

See also

Wednesday, March 28, 2012

The stolen (or lost) iPhone - choices

The day has come. Your iPhone has been stolen - or lost. That day came for my son; an old 3GS I'd given him was stolen last week. I didn't find much about what our choices were (see John Halamka - Replacing a Stolen iPhone for the best I found). Here I'll share all I learned; as of today I think this is the best resource on the net. One caveat -- your choices vary depending on your contract situation. In our case my son was about four months into a new contract [1] on our US AT&T family account.

What you can't do

  • You can't stop your AT&T monthly bill. You're under contract.
  • You may or may not be able to cancel Apple Care and perhaps get a prorated refund (up to Apple)
  • You can't get AT&T or Apple to disable the stolen phone, you can't prevent it from being resold.
  • You can't buy a refurbished iPhone from AT&T without a new contract. I don't think you can buy one from Apple at all.

Initial steps

You must choose between
  • going to AT&T and suspend wireless service, AT&T will treat phone as lost or stolen.
  • Leaving service in place and using Find My iPhone to track the phone. If the phone is locked the thief probably can't make a call.
  • Wiping the phone remotely from Find My iPhone.
In our case, for various reasons, we suspended service and wiped the phone. Now you may wish to report the stolen phone; you'll need to do this to make an insurance claim. It's generally not worth bothering with homeowner insurance [2], but do check your policy. We did report his stolen through the school. There are several ways to get the IMEI and serial number assuming you weren't wise enough to right it down:

Get a temporary phone and ask AT&T about options

If you don't have a GSM dumbphone in the closet a neighbor does. Bring it an AT&T store and they'll pop in a SIM card. They'll also let you know your options
  • Early termination fee to end contract: for us $325 less $10/month of service or $285. This has risen sharply over the past years, older contract costs may be much less.
  • Cost for a phone with a contract extension: for us $250 plus the contract cost of the phone ($0 for 8GB 3GS, $200 for 16GB 4S). This cost falls the further into your contract you are.

Consider your iPhone choices

A few months ago I predicted a growing supply ("glut") of used iPhones on the market as a result of carrier-locking and SMS pricing. I'm not seeing that in today's used iPhone market. For example, very few if any businesses sell used iPhones online. (Amazon has some listings, but they're strange. For example, they frequently don't specify carrier lock status.) On the other hand, many business happily buy iPhones, paying $150 for semi-working 3GS! As best I can tell there are several things going on:
  • There's still robust demand for unlocked iPhones overseas, and 3GS iPhones are easy to unlock.
  • Because of the cost of out-of-contract iPhones and their fragility [3] (esp. to water) there's a flourishing market in iPhone repair -- and thus for iPhone parts.
  • There are lot of stolen iPhones but they seem to cycle into the overseas and parts market even more than into the (riskier) resale market.
Here's the list of options that were initially available to us:
  • 16 GB 3GS from either eBay or Craigslist: $200-$220 but significant risk of stolen or defective device.
  • 16 GB 3GS from World of Wireless: not known, but if anyone has used devices for sale they might. Presumably higher price, but may have redress
  • 16 GB 4S from Apple, unlocked: $650. A reader (Martin) points out that a full-price device is a much better fit to insurance policies (credit card or other) than a subsidized device. It's treated like an insured laptop. If you can find a compatible service contract priced for subsidy-free phones and insurance coverage this is a very best option for a replacement or initial phone.
  • 8 GB 3GS from AT&T (new) with contract extension: $250 + $36 "upgrade fee" [5]
  • 16GB 4S from AT&T (new) with contract extension: $450 + $36 "upgrade fee"
  • 16GB 4S from AT&T (new with a new contract for me: $200 + $36 "upgrade fee" (but then I have to put off getting my iPhone 5! [4].
Subsequently I met with a more senior AT&T retail rep. In this case I mentioned (see below) that I was planning to buy out my son's contract; that might have inspired him but he struck me as a natural sales and retail guy. He added another option and some additional information:
  • Even though every new subsidized phone comes with a $36 service fee (smaller percentage of a $200 4S than of a 0$ 3GS), he can provide heavily discounted accessories (case?) to offset the fee.
  • As the primary line on a multi-iPhone family plan I can get an 'upgrade' more often than I realize. I thought I was eligible every 18 months, he said every year was more likely.
  • We could start up a new family line contract ($10/month + tax/fee, no data). There's a loophole by which he can get a subsidized iPhone on the new family line (no data) but activate it on my son's like (data). That would be cost competitive with extending his contract, but it would provide us an extra PlainPhone SIM and wouldn't extend his contract.

Consider your Network choices

This is where things get interesting. A few weeks ago I put an H2O Wireless voice and SMS only SIM into my youngest son's iPhone. He gets voice and SMS service for a total of about $90 (incl fees, taxes) over two years. That's compared to about about $770 (incl. fees, taxes) for my older son's contracted service. That's a rather big difference, especially since ...
  • Neither talks on the phone
  • They can use iMessage when on home Wifi (often)
  • They mostly text, and texting is costly on AT&T but cheap on H2O
  • I'd just as soon they not have data access outside the home, especially given the iPhone's fake parental controls. Those "colorful" YouTube videos can chew through a 200MB data plan pretty quickly. The only advantage of the data plan is Find My iPhone (not that helpful) and iMessage (but H2O texting is relatively cheap).
I'll have to pay $325 to buy out of my son's AT&T contract, but over the next two years I'd come out well ahead with H2O wireless - regardless of how I get a new/used iPhone. I've shared an iPhone replacement  calculation spreadsheet with the two year cost options. Note that the "new 3GS 8GB with contract extension is about the same cost as an unlocked brand new Apple 16GB iPhone 4S on H2O.

What we're doing

I'll think this over for a bit while my son uses an old PlainPhone. Reviewing the spreadsheet however, the H2O wireless (wifi data only) option looks very competitive over a two year cost cycle. If I take that route I'll either
  • buy a used 16GB 3GS (World of Wireless?)
  • get a 16GB 4S on my contract and defer my iPhone 5 (or, since my son will be up for a new contract now, get an iPhone 5 with a 2 yr contract on him in Nov/Dec).
  • buy him an iPod Touch and leave him with the PlainPhone.
[1] His contract came with a 4S, but that phone went to me. He got a rather less costly 3GS. He's on a family plan, so it's $15 data, $10 voice, about $2-3 in texting when iMessage isn't available (we save a lot of money by not having a texting plan).
[2] AMEX users may have some coverage of a lost iPhone, but not much. In this case the lost phone wasn't the one we got on contract.
[3] For about $200 Apple will repair just about any iPhone damage - at least for an in-contract phone. I don't know what the charge is for older iPhones, but it wouldn't surprise me if it was still $200 (plus tax).
[4] My wife's is phone eligible in May 2013, earlier if we pay a bit. So my iPhone 5 delay might be only a few months. This is one of the better options if we stayed with AT&T.
[5] In another sign of AT&T's desperation, they recently doubled their "upgrade fee" from $18 to $36. You can't avoid this fee by purchasing through Apple. If you are a valued customer AT&T will often provide some kind of credit or offset -- just ask before you pay.

Update 4/10/12:

In the end I traded a bike we wanted to sell for a friend's 3GS and we'll make the H2O transition and AT&T contract buy out at another time.

Since this post the carriers have announced a national registry for stolen devices. I'll enter our stolen phone into that registry when it comes out.

Also, I was reading about MAC addresses recently and wondered about recovering an iPhone by scanning for use of its MAC addresss. In Oct 2010 Steven Brannigan did that using an app called Ap-Finder to locate a device over WiFi --though the technique relied on knowing roughly where the phone was.

Lastly, if you save a screenshot of your iOS device's Settings:About screen (takes two shots) you can get the "Wi-Fi Address" (MAC address), Bluetooth, IMIE,and Serial Number. Note the SIM card stores the IMSI, so the SIM (subscriber identity module) card ties an IMIE to a Subscriber. I believe the ICCID identifies the SIM card. So in database jargon the "join" row is:

  • ICCID (SIM card) |  IMIE and/or MAC (device) | Phone number | Subscriber account




Sunday, March 25, 2012

Time Capsule - recurrent episodes of error -1, unable to connect to backup - verifying backup - firmware 7.6.x problem

One reason for having two completely independent backup methodologies [1] is that backup solutions are curiously unreliable. [2]

This time it's my 3 year old Time Capsule's turn to cause me heartburn. I've gotten the mysterious "-1" error on backup three times in the past 8 weeks (shortly before the Time Capsule Firmware 7.6.1 update and about 4-5 weeks after the 7.6 update) for two separate client machines (Snow Leopard and Lion respectively) for backup stores on the Time Capsule's 500 GB internal drive and its 2TB external drive:

"The backup disk image ... could not be accessed (error -1).

An Apple Discussions post hasn't generated any useful replies ...

verifying backup - stuck twice in 6...: Apple Support Communities

... For the 2nd time in 6 weeks my dual core MacBook (10.6.x) fan was racing and activity monitor showed fsck_hfs was running. Again [1] Time Capsule was stuck trying "Verifying Backup" over WiFi. Even when I connected via ethernet backup would not verify. I had to delete the sparseimage and start again. Once is chance, twice is enemy action. Something is wrong.

My other machines are doing better, but even my new iMac complained that it could not connect to the backup drive last night. Both the MacBook and the 500GB Time Capsule are at least middle-aged. Either could be failing. Console isn't showing anything suspicious on the MacBook and TechTool Pro passed it last time. The only diagnostic information I find on the Time Capsule is that the disk START status is verified. I've set syslog to 7 [1]. I've also stopped backing up my Fusion VM image. Anything else I can do to sort out what the new failures might be from? [1] http://tech.kateva.org/2012/01/my-macbook-fan-was-roaring-again-time.html [2] https://discussions.apple.com/thread/2180886?start=0&tstart=0"

The Time Capsule error logs aren't showing anything interesting. Since the error has involved two client machines and two backup drives I'm assuming it's a problem with my Time Capsule hardware, perhaps a bug introduced with a firmware update that occurred in the past few months. I wonder if the last update has bugs with older Time Capsules and/or with older Time Capsules that use an external USB drive for backup. It's an intermittent problem, so hard to test. The only consistent feature is when it hits, "Verifying Backup" always fails. (I wonder if the bug is in the Verifying Backup, something that normally happens from time to time.)

One person has reported a fix for a similar error, and pondini.org suggests a few options, but none seem relevant to my case. A MacRumors thread does suggest this is a new Apple induced bug.

An Apple kb article describes how to do a firmware reset: (how it used to work).

... AirPort Utility keeps an archive of all Wi-Fi Base Station firmware updates you install, and stores them in the location below.

Mac OS X: ~/Library/Application Support/Apple/AirPort/FirmwareWindows: ~/AppData/Local/Apple/AirPort/Firmware

... Open AirPort Utility.Select your base station and choose Manual Setup, or double-click on the Wi-Fi base station icon.

Choose Base Station > Upload Firmware...From the window that appears, select a firmware version and click OK. If you select Other from the Upload Version menu, you will be prompted to manually locate the firmware update.

I have dropped my firmware back to 7.5.2; a version that had worked well for me. If that doesn't work then I'll return to 7.6.1 and do a factory reset. After that it's buying either a new Time Capsule or, perhaps better, an Airport Extreme with an external drive.

Update: I think I've got it. Verification failed 100% of the time with 7.6.x, it passed with 7.5.2.

[1] I'm considering adding a third, CrashPlan, for my home videos and photo libraries. I'm less concerned about the service bankruptcy security issues with those data sets than with my personal data. [2] I'm not entirely sure why this is so. Long ago my Dantz Retrospect tape backups worked fairly well. Over the past decade however, I've found both Windows and OS X backup solutions fail fairly frequently.

Update 3/28/12: Not a causal factor, but maybe contributing. For some reason my iMac was connecting to the standard rather than more reliable 5Ghz 802.11n band. I changed the connection setting to remove that. That cleaned up some residual issues. Although I'm out of the woods, I still wonder if my 3yo Time Capsule is ailing. Time will tell.

Update 7/17/2012: When I moved my old Core 2 Duo MacBook to Lion (mistake - don't do it!) I tried 7.6.1 again. It worked for a while, but a week ago it failed again. So I'm going back to 7.5.2.

See also:

Somewhat related and worth knowing:

Tuesday, March 20, 2012

Aperture to Picasa uploader: doesn't exist any more

Apple's Aperture site still markets an Aperture to Picasa Web Albums uploader, but the vendor has closed up shop. Just in time for my move from iPhoto to Aperture!

There's no alternative, which is a bit of an ominous sign for both Picasa Web Albums and Aperture.

Update: There's an open source alternative. Last updated 2010, and quite a few active defects logged.

Update b: Looking at this more closely, Aperture has some interesting web journal features -- that work with MobileMe. Which was shut down last year. This keeps looking worse. (Maybe it's because I'm on Snow Leopard.  I think Lion Users may see iCloud.) Incidentally, this is quite a good article on all the nasty bits of Aperture photo sharing.