Pages: 16 Exabytes

Pages just asked OS X for 16 Exabytes. Got a clue just how large that is?

So I decided to make some business cards using Pages, however after adding a few tiny JPGs, I started getting the spinning beach ball — you know the one, the one you’re never supposed to get in OS X.

So, I decided to open Activity Monitor to see what was up.

Pages had allocated 16 Exabytes of memory. My computer has 6 Gig.

Remember, it goes from Megabytes, to Gigabytes (1,000Meg), to Terabytes (1,000Gig), to Petabytes (1,000 TB), to Exabytes (1,000 PB).

16 Exabytes

WebCams on OS X

Lots of cool software exists for webcams on OS X.

OS X is capable of using USB and Firewire cameras, with perhaps the most famous being the iSight, second to the Built-in iSight of Apple’s laptops.

Use other cameras!
But it turns out you can use a lot of third party cameras using the Macam driver.

Use multiple cameras!
If you’re using multiple cameras at once, say for security monitoring, you’re going to want to take a look at SecuritySpy, which has motion detection, time lapse, and the ability to view from a remote browser, plus many other features.

Barcode Reader!
EvoBarcode will let you use your camera as a bar code reader.

Web Streaming!
EvoCam will let you stream multiple cameras and push images to servers.

Stop Motion Photographer!
iStopMotion will help you make your own stop motion movies.

Real-time Special Effects!
iGlasses will enhance and alter your video feeds.

Drag’n’Drop Problems with Parallels 4

Since installing Snow Leopard, I can no longer Drag’n’Drop files from Windows to the hosting OS X environment, though the inverse works just fine. Is anyone else having this problem, because I’m not seeing much about it on the Parallel’s forums. I think the bug is real.

To say that I’m distrusting of Microsoft Windows’ security is putting things lightly. And when I’m in a situation where Microsoft’s anti-open standards force Microsoft as a necessity, I tend to use a virtual machine to sandbox its activities.

On Mac OS X, I use a wonderful product called Parallels, which has the added bonus of being able to drag’n’drop files and directories between the guest operating system (Windows) and the host operating system (OS X).

After installing the latest Snow Leopard (10.6), I found that while I could drag files into Windows from OS X, the reverse was no longer true. Dragging something from the Windows desktop out to the OS X desktop, which used to work in Leopard (10.5), simply results in nothing happening.

Parallels 4.x Shared Services Drag'n'Drop

Now, I’m aware that Apple did some pretty big changes under the hood in Snow Leopard. And, I’m aware that even the Finder got a fairly intensive overhaul. And, I’m even willing to accept that there might be bumps during the transition process, as the good folks at Parallels update their product to address little tidbits like this.

However, I’m kinda surprised that this kind of thing snuck past testing. Even more to my surprise is that I don’t hear many people talking about it. Such conclusions lead me to think that perhaps I have a local configuration issue.

But then I heard from another user of Parallels that updated to Snow Leopard. He ran into the same problem: Drag’n’Drop worked only in one direction now.

Most of the Snow Leopard fuss currently centers on the fact that Parallels 2.x and 3.x no longer work under Snow Leopard. Parallels made such a good and stable product that early users saw no need to update as it met their needs. However, Apple’s approach to operating systems is far more progressive than Microsoft’s, as they are willing to sacrifice backwards compatibility in software and hardware, if the technology is substantially old and the new benefits far outweigh the trouble. Thus, Apples tends to fix problems, rather than bandaid-ing workarounds; in the long haul everyone benefits with faster, smaller, more featured applications instead of bloatware.

However, I’m riding the Parallels 4.x wave on the bleeding edge. I’ve got the Parallels Tools installed. I’ve got the Enable Drag’n’Drop checked in the Shared Services config. Still, nothing.

I did a little digging around and found one user, Jamie Daniel, who was experiencing the same problem. As his question went unanswered, I tried myself.

I wrote an entry in the Parallels forum entitled Drag files from Guest to Host no longer working, detailing the problem.

And, while I was luckier than Jamie and got an answer, it was fairly clear someone gave a cursory glance and cut’n’pasted a response without reading what I was asking. In short that I did not want Windows to be able to read or write to any OS X drives. For, should Windows get a virus, I didn’t want it having free reign of the OS X filesystem to corrupt. Thus only I, via Drag’n’Drop, should be able to marshal content between the two environments.

Willing to accept the fact that I may have a configuration problem, despite being a power user of Parallels since day one, I am also willing to accept that this is simply a Snow Leopard compatibility issue that Parallels will soon be addressing. Problem is, I can’t seem to raise the issue to a level where someone can confirm or deny it.

Worse yet, I can’t seem to be able to login to Windows via the Finder anymore to mouse a Windows disk within OS X, where as I used to be able to do that as well. While workarounds, from using a USB disk (which mounts in both environments), DropBox, and using the Windows Guest account’s Parallel’s mount point, I’d really like the old capability back.

So, I ask, Parallels 4.x users that are using Snow Leopard, are you no longer able to drag from Windows to the OS X desktop?

If you can, how are you doing it?

If you can’t, please head over to the Parallels forum and let them know it’s broken for you as well. This is not an attack Parallels request, they’re good people — this is just to raise awareness to let them know the issue is real so they can look into it.

UPDATE 14-Sep-2009: Found a work around, but I’m not happy about it. What I don’t like about it is that it appears to expose Windows disks to OS X. While I trust OS X, the inverse does not appear to be necessary to perform a Drag’n’Drop from OS X to Windows. I’d expect the Enable Drag-and-Drop to be enough.

If you turn on the Share All Disks with OS X, then Drag’n’Drop from the Windows desktop to OS X Desktop works.

Parallels 4 Drag'n'Drop Hack

Snow Leopard: That Doesn’t Sound Like Apple

Had a very strange experience in the Apple Store in Reston, VA where I learned three very disturbing things. Snow Leopard purchasers beware. Hardware purchases, stop in your tracks.

I went to the Apple Store today with a friend that was looking at buying a MacMini and another friend that was picking up a copy of Snow Leopard, which sells for $29. That is, unless you’d like a copy for $25.

Apple’s policy toward operating systems has historically been a good one. There is no home, business, professional, expert, business, yadda-yadda-yadda flavors. There is no upgrade or full version. There is no pricing tier. Everything is one low price, you can upgrade or install fresh at any time.

And, if you buy a machine at the Apple Store it comes with the latest-and-greatest software, and if a new product on it comes out within 30-days, simply come back and pick up your updated version for either free or a very steeply discounted price. This is how it’s been at the Tyson’s Store for years. It shines of Apple customer service.

We went to the new Apple Store in Reston, VA and had the most disturbing news presented by Apple blue-shirt, John.

Unfortunately, I have no way of knowing at this time if what he told us is fact, fiction, or fallacy. So don’t take what you read here as gospel, but rather use it as guideline for formulating solid questions when you deal with Apple for the next few months.

#1) Apple had on display a Mac Box Set (OS X Snow Leopard, iLife ’09, and iWork ’09) for $169. My friend having iLife ’08 and iWork ’08 asked, “is it worth the cost to upgrade?” The Apple guy looked at us and said straight faced, “honestly, no… the features are minimal, just get Snow Leopard.” Now, I appreciate his honesty and opinion, and that alone commanded enough respect for me to retain trust in Apple — much like Macy’s sending people to Gimbel’s. However, I suspect we got lucky and that was not the Apple corporate line. Nor would pointing out you can get it for much less at about $114.

#2) We noticed the word “upgrade” all over the box and asked, “do you have to have Leopard installed to install this?” The answer, surprisingly, was yes. This was an upgrade and not a regular OS X disc like Apple historically has done. We were told that the real OS wasn’t coming out until December. Yes, December. When asked about machine recovery, he confessed they had a special version in the back they could use under dire emergencies. This begs the question if $29 is an upgrade price, with the ‘full’ OS will be the normal $120 later.

Update 31-Aug-2009: An Apple employee in BestBuy also confirmed what’s out now is an upgrade path. Although according to him, if you buy a new machine (with Leopard on it) you get the Snow Leopard update for free, which sounds like the Steve Jobs’s Apple policy we’re used to.

#3) When we asked about the MacMini, we were told that it had Leopard on it and that if we wanted Snow Leopard, we’d have to buy that for an additional $29. However, the electronic Apple Store online was selling MacMini’s with Snow Leopard already installed, without the extra cost. I probed deeply about this. Did the machines really have Leopard, and not Snow Leopard? Yes, the excuse was that they hadn’t moved inventory with the old OS on it. I asked if one simply got the upgrade for free like Tyson’s always used to do. Again, no. When I pointed out that buying online was the-cost-of-Snow-Leopard cheaper, I was met by an indifferent shrug.

All three of these things were very non-Apple.

Again, I don’t know if it was the sales person, the store in general, or Apple taking a page from the Microsoft book of marketing. But suffice it to say there was an abrupt halt on major purchases today.

Customers expect two things from a business, common sense and consistency. Price is often a very distance third.

A Side Note: Customer service plays a big role, and I have another Apple story which illustrates going above and beyond. In BestBuy, when we went to go get a copy of Snow Leopard, they were out of stock. However, while browsing another part of the store, the Apple employee came up and handed over a copy of Snow Leopard. Apparently, a FedEx shipment had just arrived, so he pulled one out of the box, and then hunted down our party in the whole store, on the off chance we hadn’t left yet. That’s service. You know that BestBuy’s floor staff would not have done that.

Printing in Parallels

Using Parallels virtualization, I got this pretty scary error message: pstopdffilter/pstocupsraster failed with err number -31000. I’m almost ashamed to tell you what the solution is to get past it.

Parallels is a virtualization package for the Macintosh that primarily is used for running Microsoft Windows in a virtualized environment on OS X.

At some point you’re going to run into the problem of wanting to print something from the guest OS. Do not try to install a Windows XP print driver for the device that’s connected directly to your Apple. That’s not how it works.

You have a virtual machine. Surprise, you have a virtual printer too.

To set it up is trivial:

  1. Stop your Windows VM if it’s running.
  2. Open VM Configuration Editor (Parallels Desktop menu – Edit – Virtual Machine)
  3. Add Parallel Port Printer to the VM Configuration: click “Add” – select “Parallel Port”, hit “Next” – select “Use a printer” – select the printer you have available in the Mac OS.
  4. Make sure that you are able to print using that printer from the Mac OS side.
  5. Start Windows and try printing some document using “HP Color LaserJet 8500 PS” (it’s generic driver that’s being used for printing from the Virtual Machine to any Mac OS compatible printer).

This creates a HP Color LaserJet 8500 PS printer, which then gets redirected to the host operating system’s default printer. Printing then works normally, queuing and all.

Now, I did run into this problem using Microsoft Office on Windows XP with a HP DeskJet 6980 connected wirelessly through an Apple AirPort Extreme in bridge mode:

pstopdffilter/pstocupsraster failed with err number -31000

Here’s how I solved it.
I deleted the print queue on the host operating system, then I turned the power off and back on again on the printer, and tried again.

Seriously. I power cycled the printer. That’s all that was required. Second time through, it worked like a champ.

Big scary error message, itty-bitty solution.

NOTE: You will want to scan through your document if you’re using exotic fonts. In my case apostrophes were coming out as í.

Safari Problems Downloading .DMG Files

A number of users are reporting that Safari 4 is no longer downloading .dmg files. Here’s how I fixed the problem when it started happening to me.

A while back I started having problems with Safari 4 being able to download files. Normally when one clicks on a .dmg or .zip file, Safari downloads it.

Recently, it stopped working, either doing absolutely nothing or trying to load the file into the browser itself for display. It was as if the MIME type wasn’t properly being handled.

Here’s how I fixed it.

It appears that Speed Download‘s broswer plugin is to blame. While it works amazingly well with Safari 3, it doesn’t seem to work quite right with Safari 4.0.3.

  1. Quit completely out of Safari.
  2. Go to /Library/Internet Plug-Ins directory and locate the file SpeedDownload Browser Plugin.plugin and move it out of that folder.
  3. Restart Safari.

MobileMe Sync Problems – Resolved

Apple’s MobileMe service stopped syncing for me, claiming there was one conflict, which it wouldn’t let me resolve. Here are the steps and a Python script that fixes it.

Not very long ago, I noticed my iPhone was no longer pushing data up to MobileMe, and further investigation showed that my laptop was also having problems syncing.

The MobileMe icon had an exclamation mark in it, it told me there was 1 conflict, and if I tried to resolve it, nothing happened. If I attempted a sync, it’d attempt it, but I’d get a system log full of errors with no obvious signs of successful data synchronization.

I was seeing ominous system log failures in Console like this repeated many times:

Conflict Resolver[276] [110660] |ISyncRecordGraphNode|Warning| Warning: Failed to look up record with Id: 09000000-0000-0000-1234-430001005678
Conflict Resolver[276] [110660] |ISyncRecordGraphNode|Warning| Warning: Failed to get entityName for record with Id: 09000000-0000-0000-1234-430001005678 (record = (null))
Conflict Resolver[276] [110660] |Conflict Resolver|Error| failed to look up parent relationshipName for entityName: (null) (exception = *** -[NSCFArray initWithObjects:count:]: attempt to insert nil object at objects[0])

There were other strange messages like this:

Conflict Resolver[276] [110660] |UI Helper Proxy|Error| failed to look up UIHelper for attributeName: calendar on entityName: (null) (exception = *** -[NSCFArray initWithObjects:count:]: attempt to insert nil object at objects[0])

And this (my personal favorite as it has a sense of humor):

Conflict Resolver[276] [110660] |UI Helper Proxy|Warning| No data type returned for property “calendar” on entity “(null)”, displaying on blind faith…

And also this:

Conflict Resolver[276] [110660] |Conflict Resolver|Warning| Conflict Resolver: *** -[NSCFArray initWithObjects:count:]: attempt to insert nil object at objects[0]
Conflict Resolver[276] *** -[NSCFArray objectAtIndex:]: index (-1 (or possibly larger)) beyond bounds (2)

My guess is that MobileMe has some globally unique identifier that represents one of my sync-able objects, and for some reason it’s missing. That in turn throws off some collection count, and when things don’t balance out between what was expected and what was loaded, a software exception happens.

At that point, I was fairly sure I needed to converse with MobileMe support. Apple has free chat-based support services, but it’s buried. Really buried. Really, really, buried.

  1. Go to http://www.apple.com/support/mobileme/
  2. Expand Syncing With MobileMe
  3. Click Troubleshooting MobileMe Sync issues
  4. Click Chat Now at the bottom of the page.

It’s a good idea to have your machine and your MobileMe data backed up. TimeMachine, SuperDuper!, or Carbon Copy Cloner will help you do this.

Unregister and Re-Register the Machine


Bring up Apple / System Preferences… / MobileMe. Go to the Sync tab, and at the bottom click on Advanced…

Then select the computer name in the list, and a Stop Syncing Computer… button will appear. Press it. Confirm with Unregister.

Then press the Register Computer button. Press Done.

Check and set the synchronize with MobileMe to Manually. Leave the preferences panel up, you’ll be back in a second.

Blow Aware the Sync History


You’ll need to reset your sync history which requires the iSync tool and a Python script run at the command line:

  1. In the Finder, choose Applications from the Go menu, then double-click iSync.
  2. Choose Preferences from the iSync menu.
  3. Click the Reset Sync History button.
  4. When the window opens to confirm the reset, click Reset Sync History.
  5. Close the Preferences window.
  6. Quit iSync.
  7. Open the Utilities folder (located inside the Applications folder) and double click the terminal.
  8. Paste this command in the Terminal and press return: “/System/Library/Frameworks/SyncServices.framework/Versions/A/Resources/resetsync.pl full” – without the quote marks. There will be no output.
  9. Quit terminal.

Re-sync


Select the items you want sync’d. Change the Synchronize with MobileMe back to Automatically.

You might get prompted with a request to sync immediately. If you are trying to push everything on your machine to MobileMe, stepping on what’s there, then press cancel and follow the next step. Otherwise confirm and skip the next step.

This next part is optional and you do at your own risk, assuming you have a backup and this is what you intended to do:
Press the Advanced… button. Click Reset Sync Data… and select the direction you want to sync, most likely computer to MobileMe.

At this point, the conflict disappears, but you’re no long able to sync either. Move on to resetting the preferences.

Resetting Preferences for MobileMe


In the MobileMe preferences pane, select the Account Tab, and click Sign Out… Confirm with Sign Out.

Now provide a bogus username and password like: blah@me.com / blahblahblah

You’ll get a name or password invalid message, but your log will show some interesting stuff.

/Applications/System Preferences.app/Contents/MacOS/System Preferences[352] Warning: Removed .Me password
[0x0-0x2c02c].com.apple.systempreferences[352] com.apple.CSConfigDotMacCert-blah@me.com-SharedServices: Already loaded
com.apple.launchd.peruser.501[206] (com.apple.CSConfigDotMacCert-blah@me.com-SharedServices) Throttling respawn: Will start in 6 seconds
com.apple.launchd.peruser.501[206] (com.apple.CSConfigDotMacCert-blah@me.com-SharedServices[470]) Exited with exit code: 1
/System/Library/CoreServices/FileSyncAgent.app/Contents/MacOS/FileSyncAgent[462] PIDFilePath() => ‘/Users/yourname/Library/FileSync/01254cc20d18/.pid’

Sign back in. Once again, go to the Sync tab and set Synchronize with MobileMe to Automatically.

You will get a message that says “A computer named [your machine name] is already registered with MobileMe synchronization server.” If so, press the “Use same name” button.

You may see this in the logs, not to worry:

System Preferences[352] First pass at computer registration failed with error: Error Domain=DotMacProxyErrorDomain Code=-100 UserInfo=0x200e73280 “A computer with this name is already registered with MobileMe.”
System Preferences[352] First pass at computer registration failed with error: Error Domain=DotMacProxyErrorDomain Code=-100 UserInfo=0x200e5fa20 “A computer with this name is already registered with MobileMe.”
System Preferences[352] LightweightMallornLoginSession is registered.

Now check off the items you want sync’d again and press the Sync Now button.

If you are trying to move all of your machine’s data to MobileMe, select the correct replace option when prompted.

And just to be sure that it didn’t do a partial sync, press Sync Now a second time, just incase the automatic setting jumped the gun before you finished selecting all the desired items.

Your syncing woes should be resolved.

But what about me.com?


At this point it’s a good idea to head over the your web account by going to me.com and logging in.

Check to make sure your data is there.

At this point in time there is known issue with me.com in which the calendar and the contact data does not appear. It is a known problem. Apple is aware of it. It is specific to your profile (other MobileMe accounts aren’t affected). And you need to contact support (see above) and open a trouble ticket. Apple only knows this as a “contacts and calendar loading issue” it has no formal title.

The error you see will be this message on a grey screen: MobileMe is unable to load your contacts. MobileMe could not load your information from the server. Try reloading the page. If this problem persists, contact MobileMe Support.

You can try and clear out your Safari cookies and cache, but realistically this won’t work as other browsers, like Firefox, show the same thing.

  1. First click the log out button and close the MobileMe (me.com) window.
  2. Click the safari title (next to the Apple logo) and select “empty cache.”
  3. Next click the safari title and select preferences.
  4. Click the security tab.
  5. Click “show cookies” then hit “remove all”.
  6. Now close the preferences.
  7. After all that open a new browser window and log back into MobileMe.

Apple can fix the problem by escalating to the next level of support, and this is most likely more desirable than closing your MobileMe account and opening another, which will force your MobileMe account name to change.

“Mail: SafetyNet not needed” log messages

New messages about SafetyNet not needed are appearing in my logs from OS X’s Mail. Trying to figure out what they are. Looking for ideas as Google was dry.

Warning this is a geek-related post, if you’re looking for photography and humor, try another entry or browse the comics.

I’ve noticed OS X’s Mail going something a little weird. I’ve got GeekTool pumping messages to my desktop in the background, and I keep seeing this filling the log:

Mail: SafetyNet not needed – wrongState:0
Mail: SafetyNet issues SELECT before CLOSE – wrongState:0

I’m trying to figure out what it means.

I’ve also noticed before that happens, I see this from /Applications/Mail.app/Contents/MacOS/Mail:

ATS AutoActivation: Query timed out. (elapsed 5.0 seconds. params: queryString = {com_apple_ats_name_postscript == “Helv” && kMDItemContentTypeTree != com.adobe.postscript-lwfn-font}, valueListAttrs = {{type = immutable, count = 1, values = (
0 : {contents = “kMDItemContentType”}
)}}, sortingAttrs = {{type = immutable, count = 1, values = (
0 : {contents = “kMDItemContentModificationDate”}
)}}, scopeList = {{type = immutable, count = 1, values = (
0 : {contents = “kMDQueryScopeComputer”}
)}}.)

The only other interesting behavior is that sometimes when I close the laptop lid and it goes into calmshell sleep, when I open the lid, I soon find that Mail is locked up to the point that it needs a Force Quit to exit, as Quit is unresponsive. Activity Monitor as well as Mail’s own activity status shows nothing going.

Anyone else seeing this behavior or know what it means?

iPhone 3GS Compass

So, if your game uses the compass and it’s being played in a moving vehicle, what happens….

The new iPhone 3GS has a compass in it, and most certainly it’s going to be used for precision game play at some point.

Then it dawned on me, one of the number one applications of the iPhone is to act as babysitter. You fire up a game and hand it to the kids in the back seat as you’re driving somewhere.

I’m wondering how this is gonna work as people try to play compass-enabled games while moving, say a car, bus, or train.

My first gut instinct is that initial QAing of games will happen seated, but their real use will be in an environment where there’s motion, and at that point this potential problem may start to get noticed. It may surface as bugs, where ‘the game’ did something unexpected.

As for me, I can’t wait to see how a few malicious sharp terms and exit ramps will affect future game play.