Apple Wireless Bluetooth Keyboard Dvorak Hacking

It’s very easy to switch around the keys on Apple’s current generation of wireless bluetooth keyboard. The first time doing this hack I only had one “close call”, but know that I know how to get the keys off safely it’s simple, fast and easy. I used a couple razor blades to pop off the keys, but a very small screwdriver would work just as well and be much safer.

The keys are best removed by lifting the cap key from the top left or top right corners. The plastic mechanics beneath the key move analogously to a cherry picker, and you interfere with them less by lifting the top corners of the key.

Once you’re done, the only drawback to your new sleek Dvorak keyboard is the lack of nubs on the U and H keys. Very carefully dab a small drop of superglue on them to address the issue, and enjoy!

(Sorry for the lack of pictures … when I figure out where I put them I’ll update this post. Andy Skelton has some pictures in a similar post.)

The Worsening Fragmentation of the eBook Market

On my way to the office this morning my bag seemed especially heavy, the natural effect of stuffing an attaché with a MacBook Pro, iPad, iPhone and Kindle. I felt silly feeling it necessary to keep all these electronic gismos simultaneously latched onto my shoulder within seconds reach of my left hand, each ready to perform some specific task that required firing on its individual display and taking a few milliamp hours off its individual lithium ion battery pack.

Each of these devices is especially good at performing certain types of tasks, to the point that it also feels silly to not use the tool best suited to the job.  To a computer scientist all four of these are technically Turing machines–more commonly known as “computers”–but each has its own practical strength and weaknesses. And while carrying a single device solely by itself one becomes incredibly mobile, taking all four is not. I’m like a sleep-deprived mother of quadruplets sluggishly pushing a custom designed stroller through the grocery store. The monstrousity of brushed metal widgets, cables and wall warts I’m toting reminds me of that fictional car designed by Homer Simpson.

But such are the pro and cons of appliance computing. Not all of these hardware devices are technically needed on this particular Wednesday, but the combination of specialized functions provided by the union allows me a more productive day. I could have left at least one at home, provided that I had a reasonable amount of interoperability between them to shuffle data.

Stop. Oh god. I saw this coming the second Amazon announced they would use their own locked-down format (.azw/.mobi) for eBooks purchased through their store. (Aside: If you’re interested in Kindle encryption you may eventually find yourself at my KindleTools site for finding PIDs.) My biggest of fear with regards to the emerging ebook market is now in full swing. Not only are there subtle, often incompatible (and proprietary) differences in ebook data between reading application software, but most of the time I can’t even legally attempt it. It’s like Microsoft Office vs. Word Perfect vs Lotus Notes vs The People of Earth all over again.

Each content retailer is trying to be the de facto digital ebook data locker for the entire market, and the folks at the top of the food chain–most notably Amazon–have no business interest in supporting standardized (or at least conventionalized) data interchange with less popular consumer applications and devices. But why would they? If they can provide the content and the software and the hardware with a majority of the market, why not do everything possible to lock consumers into the monopoly? Here’s a painstakingly detailed scientific visualization of the current eBook market:

Amazon's view of the eBook market.

Let me make this clear: I am no stranger to paying for books. I read a LOT, and especially over the past year it hasn’t been unheard of for me to spend well over hundred dollars per month on eBook content alone, which I do for many reasons. Here’s the 8th-grade equation demostrating how I can scientifically demonstrate the value of this technology in my life:

Knowledge Gained (in the fictional unit of “knols“, K) x Ease of Future Reference (in the subjective economic unit of utils) / Content Cost (in dollars, $) x Total Consumption Time (in hours, 3600 x s)

This new unit of electronic book value that I’ll refer to as a Vebu–short for “value of ebookS unit”–reduces to this:

Vebu == knol utils per 3600 dollar seconds == uK/3600$s

In other words, we need to maximize the availability of meaningful information (knol utils) at a minimum of money and time (dollars hours) to achieve maximum value for our electronic virtual book libary, Vebu. A simple, unsophisticated yet meaningful quantity.

But here’s how this effed up market effects Vebu:

  • I have no less than 7 different, largely incompatible pieces of eBook reader software on iPad alone, as of today. Kindle, iBooks, Borders, B&N, Stanza, Free Books and Wattpad. (Effect: lower u, lowering Vebu.)
  • Borders, Barnes & Noble and the other brick-and-mortar vendors are freaking out, scaring they’ll become the next Blockbuster of the Netflix era. Each has their own application that works primarily with their own store, but not much else, forcing you to use their reader. Not all software is availble on all platforms, though, sometimes making lookups a major pain, and different retails of course carry different publishers, so it’s easy to unwittingly get sucked into all of them. (Effect: lower u and higher s, significantly lowering Vebu.)
  • None of the distributor reader apps are keen on “sharing” your content with friends/colleagues, forcing others to re-purchase content you should have been able to at least “lend” to them in the freakin’ first place. (Effect: higher $, lowering Vebu.)
  • O’Reilly, PragProg and other publishers don’t think the major distributors should be necessary, and some are leading the charge buy allowing you to directly purchase digital editions in a variety of formats. This is fine–I have no major qualms about this–but since most readers applications are trying to push you to the store of the vendor that wrote the apps, importing data can be a headache. (Effect: higher s, lowering Vebu.)
  • Amazon, already having a huge content delivery infrastructure, offers propriety features such as cross-device synchronization of bookmarks and highlights that isn’t as good in others. The Kindle hardware will also read to you in the car, but they only sync with Amazon services; Apple’s iBooks/iTunes is better with PDFs but doesn’t have text-to-speach; Stanza aggregates many different content sources but isn’t as great with commercial stuff… everything has distinct pros and cons. They’re all different and I have to use all of them because they can’t/won’t talk to each other and I can never remember which damn content locker to which I committed my stuff. (Effect: lower u, higher s, significantly lowering Vebu.)
  • The problem grows exponentially greater as more retailers, publishers, application developers, and independent authors enter the market, intentionally building walls that consumers have no interest in observing.

Here’s what needs to happen.

If you’re Amazon, Borders, B&N, or really any retailer that is gung-ho about becoming the provider of individual data lockers, that’s fine, but you need to give us the key. It’s understandable that you’re reluctant to open up your formats in a way that could be consumed in ways you can’t control, but consider this: if you never figure out how to allow publisher content to cross application and retailer boundaries, you are effictively capping Vebu to artifically low levels. If you instead focus on optimizing all the variables instead of restraining them, you’ll have a platform unmatched even by Amazon. I, for one, would switch to it in a heartbeat.

Getting iTunes To Convert/Export/Bounce To Other File Formats

You’d think iTunes 9 would have a menu option to convert selected, non-DRM’d files to .MP3, .AAC and such. It doesn’t, but there’s a quick–if not silly–workaround to get iTunes to covert your tracks to a supported format.

Mac instruction for iTunes v9

  1. Open Preferences -> General -> Import Settings. Change the “Import Using option to the format to which you want to convert.
  2. Within iTunes, select the file you want converted.
  3. Under the “Advanced” menu, you should now see a “Create XYX Version”. Click it and your selected file(s) will be converted in the background while retainer your originals.
  4. Remember to change your import preference settings back to normal!

Done. 🙂

Why Amateur Musicians Use Macs

While discussing tonights U2 concert in Phoenix, I got into a HUGE argument with a Linux user over why amateur musician/producers would have to be mentally challenged for *not* making a Mac their first investment over Linux and Windows. Since the proof is in the ear pudding, I wrote, recorded and mixed this U2-inspired acoustic/vocal jam (aka “rip off”) in 4 hours using only a 2.4GHz MacBook w/4GB RAM, OSX Snow Leopard, GarageBand, *built-in laptop microphone*, iPod earbuds, ghetto-fabulous Fender acoustic guitar and 2 vodka tonics. (In other words no fancy microphones, A/D converters or other hardware.) The noise at the beginning and end is the sound of the MacBooks fan running at full speed, but other than that (and some really sloppy pitch correction patchwork) I’m not aware of any software that ships with Vista, 7, or any modern Linux distribution that can do anything REMOTELY close out of the box in more-or-less the same amount of time. If you think otherwise, prove me wrong!

Download “It’s Alright” MP3.

(Truthiness: I cheated *slightly* by jumping into Logic Pro 9 for the pitch correction part since I was lazy and didn’t want production to take more than 30 minutes, but that wasn’t technically necessary!)

iCal Domain Account Errors For New Events

Over the past couple weeks I’ve had issues getting my OSX 10.5 iCal client to continue working properly with our centralized CalDav server. I stopped being able to invite other domain users to my events as well as reserve “locations”, despite all my personal (non-domain) calendars continuing to work properly. I noted these iCal errors in Console.app…
*** -[NSConcreteTextStorage attributesAtIndex:longestEffectiveRange:inRange:]: Range or index out of bounds
CalDAVOperationQueue tried to dequeue operation <CalDAVScanDropBoxQueueableOperation: 0x174eb6a0> but it was not at the front of the queue.
When I tried to delete my domain account within iCal’s preferences, the application hung. When restarted I could no longer bring up the preference dialog and saw this error repeated in Console…
*** -[NSURL initWithString:relativeToURL:]: nil string parameter
Apparently deleting everything in ~/Library/Calendars and starting fresh is one solution. I have years worth of notes and interesting tidbits that I need to keep, however, so simply deleting all my data was not an option. With some educated guesswork, trial and error, I discovered that the following steps seems to make everything work without apparent data loss or corruption..
Quit iCal.
Go to ~/Library/Calendars and backup the entire directory, just in case.
Delete all “Calendar Cache” files as well as any directory ending in “.caldav”
Start iCal. It may give you a progress dialog about “Upgrading Calendars”. I think this means it’s rebuilding the cache file.
Go to “iCal -> Preferences…” and delete/readd your domain account.
Wait for the domain account to resync and you should be go to go.
Hope this helps!

appleOver the past couple weeks I’ve had issues getting my OSX 10.5 iCal client to continue working properly with our centralized CalDav server. I stopped being able to invite other domain users to my events as well as reserve “locations”, despite all my personal (non-domain) calendars continuing to work properly. I noted these iCal errors in Console.app…

*** -[NSConcreteTextStorage attributesAtIndex:longestEffectiveRange:inRange:]: Range or index out of bounds

CalDAVOperationQueue tried to dequeue operation <CalDAVScanDropBoxQueueableOperation: 0x174eb6a0> but it was not at the front of the queue.

When I tried to delete my domain account within iCal’s preferences, the application hung. When restarted, I could no longer bring up the preference dialog and saw this error repeated in Console…

*** -[NSURL initWithString:relativeToURL:]: nil string parameter

Apparently deleting everything in ~/Library/Calendars and starting fresh is the easiest solution. I have years worth of notes and interesting tidbits that I need to keep, however, so simply deleting all my data was not an option. With some educated guesswork, trial and error, I discovered that the following steps seems to make everything work again without apparent data loss or corruption..

  1. Quit iCal.
  2. Go to ~/Library/Calendars and backup the entire directory, just in case.
  3. Delete all “Calendar Cache” files as well as any directory ending in “.caldav”.
  4. Start iCal.
  5. It may give you a progress dialog about “Upgrading Calendars”. I think this means it’s rebuilding the cache file.
  6. Go to “iCal -> Preferences…” and delete/readd your domain account.
  7. Wait for the domain account to resync and you should be go to go.

Hope this helps!

How To Make Original iPhone Sim Work In iPhone 3G

I live in the U.S. and upgraded from the original iPhone to an iPhone 3G. If you simply put your old SIM into the 3G, however, you will only be able to use EDGE, and the phone will not use the 3G network. When purchasing a 3G model, multiple Apple sales representatives advised me that I would need to either keep each SIM in the phone with which it shipped and call AT&T to swap the phone numbers, or order a new SIM card for my existing number.

Problem: AT&T won’t switch the phone numbers since each phone is still obligated to its own, separate 2-year contract, and ordering a new SIM will cost you $25.

Solution: I physically went to an AT&T store and explained the issue. The sales rep just had to perform some voodoo in his computer system to enable 3G for the original iPhone SIM so it could be used in the new model and access 3G services. This allows AT&T to avoid having to modify any contracts while allowing you to upgrade to an iPhone 3G and use 3G services.

Done!

iPhone Developers May Now Speak… Almost

Apple announced this morning that the NDA preventing developers from holding open development discussions will be lifted. While details of the new agreement are not yet available, we are already beginning to see changes in the iPhone development landscape. Details on the first Phoenix iPhone Developer Group meeting will be announced tomorrow morning on the OpenRain blog!

Publishers are also rejoicing, as many have been effectively sitting on completed books in anticipation of today. iPhone SDK Development by The Pragmatic Programmers is already available for immediate electronic download, and an O’Reilly representative has informed me that O’Reilly Media has just released iPhone Forensics.

It begins.

Apple Says Sorry For MobileMe Boo-Boos

If you’re an existing .Mac user, you may have noticed the new MobileMe services sucking a lot since the iPhone 3G launch. Apple will be “..giving all current subscribers an automatic 30-day extension to their MobileMe subscription free of charge.” Full email text..

MobileMe Services Now Available.

We have recently completed the transition from .Mac to MobileMe. Unfortunately, it was a lot rockier than we had hoped.

Although core services such as Mail, iDisk, Sync, Back to My Mac, and Gallery went relatively smoothly, the new MobileMe web applications had lots of problems initially. Fortunately we have worked through those problems and the web apps are now up and running.

Another snag we have run into is our use of the word “push” in describing everything under the MobileMe umbrella. While all email, contact or calendar changes on the iPhone and the web apps are immediately synced to and from the MobileMe “cloud,” changes made on a PC or Mac take up to 15 minutes to sync with the cloud and your other devices. So even though things are indeed instantly pushed to and from your iPhone and the web apps today, we are going to stop using the word “push” until it is near-instant on PCs and Macs, too.

We want to apologize to our loyal customers and express our appreciation for their patience by giving all current subscribers an automatic 30-day extension to their MobileMe subscription free of charge. Your extension will be reflected in your account settings within the next few weeks.

We hope you enjoy your new suite of web applications at me.com, in addition to keeping your iPhone and iPod touch wirelessly in sync with these new web applications and your Mac or PC.

Thank you,

The MobileMe Team

My iPhone 2.0 Upgrade Not Reactivating

It seems like there’s some sort of service outages with the iTunes store related to users upgrading to the iPhone 2.0 firmware. The firmware download and upgrade process seems to have upgrade fine, but mine is stuck on the please-connect-to-itunes screen. All I can do right now is view the IMEI and ICCID, and make emergency calls.

Update: After 4 continuous hours of having it plugged in, it finally reactivated and synced. PITA, but the new apps are hot!!!

Virtual OS X Server Screenshots

Apple now allow you to virtualize OS X Server instances. While your virtualization options are limited, it’s very easy to set up on your existing OS X Server.

This is an virtualized OS X Leopard Server guest running in Parallels Server on a host OS X Leopard Server. You can see that the guest system is treated similarly to other Windows and Linux VMs in the Parallels Management Console.

Note that a distinct serial number/license seems to be required. The serial number for the host machine will not validate (I thought Apple was going to allow one VM instance???), so to use the sweet service configuration tools available in Server Admin, it appears you’ll need a separate license for now.