Restoring from a Time Machine Backup Took Four Days!

6 11 2007

Recently, a data corruption event occurred on my Intel iMac. The computer would not boot. Luckily, it had Leopard installed, and it was being fully backed up with Time Machine. So, I decided to do a full restore of the entire disk using the Time MAchine backup.

The iMac has a 120GB hard disk containing about 100GB of data. Time Machine was backing up to an external 500GB hard disk over USB 2. To do a full restore of the computer from a Time Machine backup, you start up the computer using your OS X install disk. There is a menu item to restore from a Time Machine backup. Simply choose which backup you wish to use, and it begins, doing the rest automatically.

The progress bar started calculating the time remaining to complete the backup, and in a few moments it indicated… 170 hours to complete! Progress bar time estimates typically start conservatively, and tone down to be more accurate after a little while. It did, a little – to about 100 hours. This seemed startling – You can copy a 100GB disk using Disk Utility or SuperDuper in a tiny fraction of that time. But, having the time and curiosity, I let it run. It indeed took over 100 hours to complete the restore of 100GB of data.

Holy cow! Almost four days to restore a system from a Time Machine backup! The restore was successful, but if this hour-per-gigabyte rate is typical, it is something that needs improvement right away!

So, has anyone else had occasion to do a full restore of this kind? Did it take an incredibly long time, or was my experience an exception?


Dash to Code widgets for your iPhone

15 10 2007

I was shocked that Apple didn’t do this right at the launch of the iPhone. Now, I’m still predicting they will do it, and soon:

When Leopard is released, its free developer software will include a copy of DashCode that will allow you to write widgets for your iPhone.

Most people know that widgets on Macintosh OSX are small applications that can be brought up on screen with a keystroke and dismissed with a click. They are lightweight applications, written mostly in the JavaScript language. There are hundreds, perhaps thousands, of these widgets available, written by Apple, Apple developers, and just plain folk. Compared with a traditional Mac application, widgets are much easier to write. Since they use JavaScript, many people who develop Web sites already know almost everything necessary to write a widget.

It’s not very hard to develop a widget by hand with nothing more than a text editor and some GIF graphics, but Apple made writing widgets even easier when it made the DashCode application available to its developer community. DashCode is an integrated development environment for creating widgets. With it, you can place your graphics and user interface controls, write code, give it a quick test run, set breakpoints, examine variables, and so on. It includes a library of controls and snippets of code you can use in your widgets. It’s a slick, easy way to develop widgets.

Widgets on an iPhone might be a very good idea. Apple wants to make sure that its phone remains stable. They don’t want buggy or malicious third party applications to overwrite important code or data on other critical parts of the phone. They don’t want a crashing app to crash the entire phone. And they don’t want apps to get access to parts of the phone they deem off limits – It doesn’t want to see apps that unlock the phone to make it able to work with other carriers, for example.

Widgets run in a “sandbox” that they can’t, in theory, break out of. They can have limited persistent storage, be required to use a fixed API for access to system services, and so on. And they are small, light, and almost all the internals necessary to handle widgets are already in the phone.

You already have widgets in your iPhone – sort of. The Stocks and Weather applications on your phone, though not internally implemented as widgets (I think) look exactly like the corresponding widgets on the Macintosh itself. And if you peek at the Mac, you can get an idea of the many, many kinds of things you can do with widgets. On the iPhone they will be able to access the Net, make a call, bring up a Web page, or bring up a map – JavaScript can do these things already. With a bit of work by Apple, they could be given access to contacts and perhaps control playing of tunes.

Why, oh why didn’t Apple give developers the ability to make third party applications from the start. I believe they DID intend to – in the form of widgets and DashCode. I believe they wanted, on day one or soon thereafter, to allow people to use DashCode to make widgets, let iTunes sync them into the phone, and have them appear as icons right on the home screen of the phone.

So why didn’t they do it? Because of security? Politics? Contractual constraints? Nah, it’s just that Leopard was delayed. I believe they have this all set up – a new DashCode with modifications to make iPhone widgets, that runs on, and requires, Leopard. When Leopard and the iPhone were being developed, they were going to come out at almost the same time. But when development resources got tight at Apple, they decided to get the phone out first and save Leopard for later. This pushed back DashCode for iPhone as well. And ever since, Apple has been taking flak on having no development system.

Widgets aren’t applications, they have many limits, and developers will complain that they can’t do everything or make the most efficient use of CPU resources, but you can make a heck of a lot of stuff with widgets.

That’s my guess on what’s happening. You are going to see, when Leopard arrives, a way to make widgets for the iPhone using DashCode. So get ready now, developers! Start making developing widgets now that do the things you want to have on the iPhone. I’m betting you will be able to get them into the phone very, very soon!

Apple’s iPhone Web 2.0 AJAX Mumbo-Jumbo

12 06 2007

OK, Steve Jobs told developers they had a way to add applications to the iPhone. He said Apple wants to “expand the capabilities of iPhone by letting developers write great apps for it and yet keep the iPhone reliable and secure.” The “sweet solution” for this will be to use the full Safari engine inside the iPhone to write “amazing Web 2.0 and AJAX apps that look exactly, and behave exactly like apps on the iPhone. And these apps can integrate perfectly with iPhone services – they can make a call. They can send an EMail. They can lookup a location on Google maps.” As Web apps, you don’t have to distribute them to individual iPhones, just put them on the Web. And they can run securely, without compromising security on the phone itself. 

As an example, Scott Forrestal showed a corporate address book Web application. Using Safari, he went to a Web page. He typed into a Web page’s search field and it brought up a Web page with a list of names that looked a lot like the list in the phone’s native address book. He scrolled them up and down, tapped on one and a Web page came up with the person’s address information, and this Web page looked a lot like a native Address book page. He then showed that if he tapped a phone number on that Web page, he could initiate a call. If he tapped an EMail address, he could bring up an iPhone mail message pre-addressed ready for typing. And if he tapped a street address, it brought up the iPhone’s Google Maps facility showing that address.It was nice. And nice things can be done.

But how much of an iPhone app was that, really? The three Web pages involved seemed to be standard Web pages formatted to look like fields, lists, and information you would see on the iPhone’s native apps. And tapping specialized fields was something already shown in the January keynote as something you could do in any Web page. So what was special about this Web application that made it an iPhone application? Nothing I could see in that demo.

What I didn’t see was a way to write that Address book entry they looked up into the iPhone’s address book. Or a way to download the office layout image he bought up into the Phone. I suspect there isn’t a way to get any of that info directly into the phone, or to get any of the phone’s info directly out of the phone, because the point of this sandbox is to maintain the phone’s security.

You can make nice Web pages that do very nice things and we will see lots of useful Web apps, but to run them you have to host them apps on the Web, and users have to have access to the Web. This is not iPhone Software Development. Steve Jobs said “No SDK needed” and none is supplied either.We can still hope that in the near future there will indeed be a way to make stand alone applications that run on the iPhone. I was predicting in this WWDC we would see Steve tell us that the OS X DashCode application (which makes OS X widgets) would make Widgets that run on the iPhone, and that maybe next January we would see an iPhone SDK running in XCode. I’m still predicting that path will be followed. But when?

Apple WWDC keynote: Here’s what Steve will announce

8 06 2007

First, he’ll talk about the iPhone. He’ll show a production model. He’ll talk about the tinyBluetooth headset bundled in the package. He will show the iPhone dock in the package that lets you plug in the phone and charge the earpiece. He will mention the iPhone dock connector is compatible with almost all current iPhone accessories that plug in to an iPod, especially the interfaces in many current automobiles. He will announce new iPhone interfaces in some cars that integrate both music and phone functions into the automobile. He will talk about the new stereo bluetooth headphones that are available and how great they sound playing music. He will mention iPhone’s software update system which happens through iTunes syncing. He will show functions he didn’t cover, including the calendar and notepad apps. The notepad is essentially the Mac Preview app and opens PDF, Word, Pages, and Keynote files. He will show new apps including Apple Remote Access and the GPS turn by turn directions tied into Google Maps. He will show printing to Bluetooth printers and over WiFi to printers on local networks. He will say DashCode widgets will run on the iPhone, allowing anyone to write simple iPhone apps. Oh, one more thing – he will sell iPhones to anyone at WWDC who wants one out in the hall right after the speech. WWDC attendees will be the first iPhone customers, two weeks before anyone else can get them.

Then he will talk about .Mac, which hasn’t been updated in a while. He will show full integration with the iPhone. He will show that .Mac will push EMail to the iPhone. He will show iPhone syncing directly with .Mac’s calendar, address book, and bookmarks. Oh, one more thing, a free year of .Mac comes with your iPhone.

Forty minutes in, he moves to Leopard. He will say everyone gets a full beta copy in their attendee goodie bag. A week later, it will be available for developers to download at ADC. It does not run on the G4. It will use a new default disk format called ZFS. Older formats will of course be supported, but you want to migrate your system disk over, as well as disks you want to use for Time Machine backups. This is for a few reasons. One, backups and Time Machine will be simple, fast and smooth, as ZFS makes snapshots of every change you make to your files as it goes. You will be able to set up very fine grain backups if you wish, not just being able to go back to a particular day, but even to a particular save. Another reason to switch involves Spotlight. Spotlight will be much faster and searches will be more detailed. Spotlight will be integrated into Time Machine and into more apps.

There is a completely rewritten Finder. It is much faster and much more efficient. It is more extensive in the way it displays and allows you to see and manipulate file metadata. It gives much better and faster access to Spotlight. Spotlight itself finds faster, is much more consistent in its interface, allows you to do much more detailed searches, yet is simpler to use. It is a very efficient app and file launcher, more like Quicksilver.

There is a new default User Interface look. Aqua is still available in the Appearance preference pane. The new look uses the unifies window look, colors tend toward smooth gray and blue gray. The look is flatter, more subdued. The look is similar to that in the current iTunes. Scroll bars are rounder, thumbs are blue gray. The look is made to fall farther into the background than Aqua, and be more neutral in color, to let window content be the focus.

Leopard fully integrates Multi-Touch into the system. Steve announces a new line of Multi-Touch displays available now. The new displays have a gray aluminum look, are thin, use LCD backlighting, and all have Multi-Touch ability. The displays can be oriented vertically, or placed flat on a table or at a low angle like an easel or tablet.

Leopard can be completely controlled by MultiTouch. Fingers can work as a mouse, tapping and dragging on the surface of the screen. Thus at this point, Macs can be controlled by a keyboard, mouse, voice, or touch, alone or in combination, and peripherals like the new touch displays will take advantage of that.

One more thing. One “remote screen” display model will be wireless and portable, around 10″ diagonal and 12mm thick, run on WiFi and uses Apple Remote Access to put a Mac’s screen on its own screen. This portable tablet is a display, not a computer, but works as a second screen to any Mac on a network. It can control all Mac functions remotely via Multi-Touch. It is available now.

There are a lot of predictions here, let’s see what comes true!

Why Multi-Touch is a much bigger deal than you think!

20 05 2007

Where is Leopard? What’s up with those top secret features? Why haven’t there been any new displays released in so long? Where is that long-predicted mini-laptop? I believe it’s all tied together, and it has to do with the iPhone.

Multi-Touch! It’s one of the defining features of the iPhone. The touch screen hardware looks great, but it is the software that goes with it that makes the device work smoothly. A lot of care has been put into that. Touch is more than just tapping onscreen buttons. There are substantial innovations involved.

Let’s start with the on-screen keyboard. When you tap a key graphic with your big finger, it senses which key you meant with a combination of position-checking and predicting the word you are typing. Visually, each letter zooms up from under your finger to show you what letter is hit. Finally, the word being predicted is shown, and if the prediction is right, you can quickly complete the word by tapping the space bar. The predictions even appear to take into account which letters are adjacent to the ones touched. Nice.

There’s finger-scrolling. It’s finely tuned so you can “flick” through a list, not too fast, not too slow, with inertia and bounce, it looks almost physical.

Then there’s “the pinch” a gesture used to zoom in and out of pictures or anything else that needs zooming or resizing.

There is tight software/hardware integration throughout. There is a position sensor that can tell if you are holding the unit in portrait or widescreen mode, and a proximity sensor that turns off the touch screen when you are holding the phone against your face (and presumably when it’s in your pocket).

What a unit! And what an announcement! Oohs and ahhs all around.

That’s why Leopard’s features couldn’t be fully announced before the iPhone was introduced. Things like the Multi-Touch support built into Leopard!

That’s my prediction as a major top secret feature. And that’s why there have been no displays announced for so long. I believe new displays will include multi-touch in them, and they will be able to lie flat on the desk, or at a shallow angle. And, they will have sensors to show if they are being used in portrait or landscape mode.

We’ve all seen and drooled over those demonstrations of multitouch on big screens! And think about the iPhone, think if there was an iPhone with a 20-inch wide screen! Or with a 10-inch screen for that matter… Multitouch will work great on a Mac. You just need a multitouch display, and the kind of software we’ve already seen demonstrated on the iPhone.

So what will we see in the future? New displays with multitouch. Multitouch support in Leopard. And, we know Leopard is on our desktop Macs, on our phones, on our laptops, what is missing? A mini-laptop! And it doesn’t have to be a laptop – it can be a tablet. I predict a tablet is coming, with multitouch, voice control, and wireless. Let’s see!