Showing posts with label iCloud. Show all posts
Showing posts with label iCloud. Show all posts

Sunday, 14 July 2013

What developers think of Dropbox as an iCloud alternative


Developers would love to love iCloud. But many of them find Apple’s syncing platform ineffective, unreliable, or worse. Some developers have even pointed to iCloud sync woes as a significant holdup in releasing new versions of their apps.

And now Dropbox, the beloved powerhouse of sync, has taken a direct shot across Apple’s cloudy bow, with the announcement this week of its new Datastore API. Dropbox says that the Datastore API makes simple work of syncing structured data (“like contacts, to-do items, and game state”) across devices—and even platforms: Unlike iCloud, the Dropbox Datastore API works across iOS, Android, and the Web.

Because of the way Dropbox works, it offers one other significant potential advantage over iCloud: Developers who are working with Datastore can actually peek directly at the syncing data on Dropbox’s servers as they test and build their apps, a level of visibility that iCloud simply hasn’t offered to date.

Macworld spoke with several developers to get their thoughts on Datastore as compared to iCloud. Expectations are mixed.

Greg Pierce of Agile Tortoise—maker of sync-friendly apps like Drafts—is pleased by Dropbox’s announcement. “I think it’s exciting to see more players in this space.” Though he’s only played around with Datastore a bit, he said that “if it reliably delivers what it promises, then it’s a potentially very useful API with some real advantages over other sync options right now.”

Pierce said, however, that while “Datastore seems simple to implement,” what it offers doesn’t match directly what iCloud’s Core Data sync does—or is meant to do. That iCloud feature, when it works, should allow apps to reliably sync changes to large, complex databases, without requiring that the full data set be uploaded to the server. Datastore’s “scope is more limited,” Pierce said. All that said, if it works consistently, “that may still make it an attractive option for many apps.”

Charles Perry from Leaf Hut Software thinks Datastore shows promise, too: “Syncing is a notoriously hard problem … Even Apple, with all its resources, couldn’t pull it off. But Dropbox has a proven record in document syncing, so they may be able to succeed where others have failed.”

Not everyone shares Pierce’s cautious enthusiasm.

Tapbots’s Paul Haddad told Macworld that he didn’t even bother looking at the Datastore API. “I don’t really care,” he said. Because it’s not core Apple functionality, Haddad said, “it doesn’t run in the background,” which makes it far less appealing to him. Even with iOS 7’s improved background functionality, Haddad said, Dropbox won’t be able to match the ubiquitous omnipresent syncing that iCloud affords.

Haddad also pointed out that with each successive iOS release since the introduction of iCloud, the under-the-hood mechanics and functionality for its syncing have improved. He’s optimistic that the trend will continue with iOS 7.

Rich Siegel of Bare Bones Software sees the Datastore API as unattractive to many developers in the Apple ecosystem for another reason entirely: “There is no SDK for OS X,” he pointed out, “which makes it an instant nonstarter for any developer who needs to synchronize data between desktop computers, whether or not mobile devices are involved.”

That’s not the only downside for Datastore, either. All three developers mentioned that iCloud doesn’t require users to sign up for a new account, and Dropbox does. That said, “Dropbox has become ubiquitous enough that it is highly likely that someone who downloads your app will already have a Dropbox account and will only need to authenticate with it,” said Pierce, but that’s less assured—and less seamless—than an iCloud-backed option.


“In theory at least, iCloud used with Core Data offers … powerful tools to work with relational data, an extensive query language, [and] tools for working in multi-threaded environments,” Pierce said. Datastore can’t match that functionality. It can’t perform sorted queries, queries that require joining bits of data from multiple datasets, or paginate results—all fairly basic database functionality that’s (at least currently) beyond the scope of what Dropbox offers.

Such features, Pierce said, are a must-have for “larger datasets that cannot all be held in memory.” But he added, “I think the Dropbox Datastore can really shine for apps with small datasets.”

Siegel seemingly concurred: “The question of which service a developer chooses should, I think, revolve around what meets the technical needs of the developer on the way to shipping the product that best suits their customers’ needs.”

If Apple has cause for concern, Perry says, it’s all that cross-platform support that Dropbox offers. “iCloud represents [Apple’s] attempt to lock users into their ecosystem … If Dropbox catches on as a mainstream sync solution, it makes it easier for users to pack up and take their data to other mobile platforms like Android, or even other desktop platforms like Windows.”

“I can imagine a developer will find the Dropbox Datastore API worth a look,” Siegel said, “if their product is not on OS X and they have an interest in structured key/value/record/table database syncing and/or need a solution for both iOS and Android.” If a developer is instead targeting the Apple ecosystem exclusively, Siegel said, iCloud “is the platform-vendor-sanctioned solution, offers integration with the existing platform document and data storage APIs, and is available as part of the stock OS install at no charge.”

Siegel continued: “Dropbox does provide valuable services in the SDK, but these additions, while intriguing to some and potentially useful to many, do not represent an alternative to iCloud.”

Of course, if you want your app to sync to any non-Apple device, or to sync to your service’s website, iCloud won’t work. Said Pierce, “[Dropbox’s] additional flexibility of being able to access that data on Web or Android-based clients is attractive for many apps as well, and not something Apple offers.”

Siegel added: “Anyone who’s been working on iCloud thus far has either made it work, is in a holding pattern waiting for developments, or has gone on to devise and implement an alternative strategy. Although the Datastore API may look promising, in none of those cases do I expect a developer to drop what they’re doing and try to adopt it if they already are in the process of executing an existing plan.”

If your app’s needs can be met by (and synced with) Datastore, added Perry, “then I think you’d be crazy to not at least consider it. The integration won’t be as seamless as iCloud promises to be, but the Dropbox Datastore API opens up all kinds of business opportunities that aren’t possible with iCloud.”

“Ultimately,” Pierce said, Dropbox Datastore “will be judged on how reliably and efficiently it can deliver sync data”—especially because “iCloud Core Data [sync] sounds great on paper, but it practice has not delivered on its promises. If Dropbox can deliver and continue to build on this platform, I think they can become a real player in the database sync arena.”

Hands-on with OS X Mavericks: Safari and iCloud Keychain

OS X Mavericks With more than 200 new features coming in the fall, OS X Mavericks brings Maps and iBooks to the Mac, introduces Finder Tags and Tabs, and enhances multi-display support for power users.


Sure, Safari is its own app, but new OS X versions tend to bring new versions of Safari, and Mavericks is no exception. Safari 7 offers a new sidebar, plug-in management, a redesigned Top Sites page, performance improvements, and a new feature designed to remember your passwords without compromising security.

The Mountain Lion version of Safari offered three features that could be accessed via buttons on the far left side of what it called the Bookmarks Bar: Reading List, Bookmarks, and Top Sites. Safari 7’s newly rechristened Favorites Bar features only two: Sidebar (which somewhat confusingly still uses the Bookmarks icon of an open book) and Top Sites.

The new Sidebar is the new home of Bookmarks, Reading List, and the new Shared Links feature. It’s a gray bar (minimum width: 300 pixels) that lives on the left side of the browser window. To open it, click on that book-shaped Sidebar icon on the toolbar, or choose Show Bookmarks Sidebar, Show Reading List Sidebar, or Show Shared Links Sidebar from the View menu. (There are also keyboard shortcuts—Command-Control-1, 2, and 3, respectively. You can toggle the Sidebar on and off by pressing Command-Shift-L.)
Safari's sidebar, full of Bookmarks
In previous versions of Safari, going to the Bookmarks view replaced the contents of your browser window with a bookmark editor, where you could drag and drop bookmarks and rename them. That window is still there if you choose Show Bookmarks from the Bookmarks menu, though it’s now a hierarchical view full of folders, instead of the weird old interface where different folders were in a separate sidebar of their own. If you want to do organizational work on your bookmarks, this is still where you need to go.

But in parallel there’s this new Bookmarks tab in the Sidebar, which gives you one-click access to your bookmarks. Just click on a bookmark in the Sidebar, and Safari loads that page on the right side of the same window. Click on a folder to show or hide its contents. You can drag items around can edit them by Control-clicking on them and choosing Rename Bookmark or Edit Address. You can change the name by clicking and holding for a few seconds. There's also a search box above the top of the list, if you need to find a specific bookmark.

The new Bookmarks tab seems like a nice approach for people who want one-click access to more bookmarks than will fit on the Favorites Bar, or as an alternative for people who simply prefer the Sidebar to the Favorites Bar. And it's a much more accessible way to organize your bookmarks than the old view. As for me, my Favorites Bar handles my most important bookmarks just fine, and the Bookmarks menu does a decent job with the rest. I’m not sure I’ll be spending a lot of time in the Bookmarks tab of the Sidebar.

The second tab in the Sidebar is Reading List, and it’s not that different from the Mountain Lion version. This is still the place where you can collect pages on the Web that you want to read at a later time, even if you’re offline. The big difference in Safari 7 is that the Reading List scrolls endlessly. Once you’re at the bottom of a Reading List story, just keep scrolling down and you’ll be taken to the next story in the list.
Hold down the plus button to quickly file away a page.
In previous iterations of Safari, there were toolbar buttons to add stories to Reading List and add links to your Bookmarks. In Mavericks, Safari no longer provides those buttons. Instead, there’s a big plus (+) button integrated to the Address and Search bar, just to the left of the page’s URL. Click the plus button to add the page you’re on to Reading List; click and hold to see a menu of options, including adding the page to Reading List, Top Sites, or filing it as a bookmark in any of your bookmark folders.

Now to the third (and most interesting) addition to the Sidebar: the Shared Links tab. Once you’ve logged in to a Twitter or LinkedIn account via the Internet Accounts (formerly Mail, Contacts and Calendars) system preference pane, any posts that contain hyperlinks are displayed in the Shared Links list. If you truly use your Twitter stream as a replacement for RSS feeds, Shared Links is a concentrated burst of Twitter linkage that eliminates the middleman.
Shared Links in the Safari sidebar.
In the Shared Links sidebar, posts are displayed with the most recent item at the top. They aren’t bare links, either—you see the avatar of the person who posted the link, their name, an icon representing the service the post came from (just Twitter or LinkedIn are supported at this point), and the text of the post itself. Click anywhere on the post to display it in the browser window, and like Reading List, if you keep scrolling to the bottom of the story, you’ll be able to scroll right on to the next story in the list.

As you read a story, the original post that spawned it remains at the top of the screen, so you can quickly find the answer to the question, “Which one of my friends thought this was worth Tweeting about?” There’s also a Retweet button, so if you do approve of the story, you can pass it on.

Shared Links is a great idea, and I’ve been using it a lot. I am one of those people who uses Twitter as a source for many of my links. That’s not to say there aren’t issues: The light-gray-text-on-darker-gray-background color scheme makes the text of individual posts hard to read, and there are no timestamps. You also can’t “pull to refresh” in order to see new posts, à la Twitter’s own client app, and Safari itself doesn’t appear to update content rapidly. If I want to see new links, I need to open and close the Sidebar or choose Update Shared Links from the View menu. It’s also too bad that Facebook links aren’t an option, though given the junk littering my Facebook feed these days, maybe it’s just as well?
Shared Links includes the source of the link at the top of the page.
Next to the Sidebar button is the Top Sites button, and of course there’s a new version of the Top Sites interface, which presents you with six or 12 or 24 of your favorite sites in a grid. (It’s now a proper Hollywood Squares/Brady Bunch style grid, with none of the curved-wall effects of the previous iteration of Top Sites.) I admit I never use Top Sites (my default window: Empty Page), but the look seems more modern and drag-and-drop reorganization of Top Sites items is a no-brainer addition.
A blocked Flash element on a page.
When Apple unveiled Mavericks at WWDC, it said that it would deliver the fastest JavaScript experience around. The browser certainly feels fast, though when I ran the synthetic SunSpider benchmark it was slower than Chrome. However, it beat Chrome on the JSBench suite, which plays back real-world JavaScript functions. We’ll see how performance is in the final, release version, but I’m optimistic.

Apple also says that Safari has a bunch of new under-the-hood features that improve speed, reliability, and security. Separate pages run in separate processes and there’s improved memory efficiency, and the browser takes advantage of power-saving features of Mavericks to run more efficiently. I haven’t been able to test any of these claims yet.

One major source of stability, speed, and energy-consumption issues in Safari isn’t actually Safari itself—it’s browser plug-ins such as Adobe Flash. Third-party tools like ClickToPlugin have let users manage whether webpages can load those plug-ins, and in Mavericks, Safari has a similar feature built right in.
Set your plug-in preferences in the Security tab.
The feature lives in the Security tab of Safari’s preferences window, under the Manage Website Settings button. From here you can see every browser plug-in being used by your system and a list of sites that have loaded it. You can turn access on and off on a per-site basis, as well as set a default for what happens on your first visit to a website that’s trying to load a plug-in. For example, you can set YouTube to always load Flash, but all other sites to block Flash on first load.

Safari’s also got a Power Saver feature that will sometimes prevent plug-ins from loading until you click, emulating ClickToPlugin’s approach. I wish that Safari went further, though, and allowed the Manage Websites Settings option to set certain plug-ins to only load on a click, somewhere between a pure block and actually loading the plug-in.

And when Safari’s blocking a plug-in, the browser replaces the space occupied by the plug-in with an empty box. This happens because Safari’s reporting to the web server that it has the plug-in, but doesn’t show the content. Some sites offer non-Flash equivalents if a device (such as an iPhone or iPad) doesn’t have Flash, but Safari doesn’t see those if Flash is installed but disabled.
iCloud Keychain suggests a password.
I’ve been a user of 1Password for a few years now, and I love it. I remember a single password, and 1Password remembers my passwords, personal information, credit-card numbers, and enters them into my web browser when I tell it to.

The moment the new Mavericks feature called iCloud Keychain was announced, plenty of wags (probably including me) suggested that Apple had “Sherlocked” 1Password. I’m not sure I agree with that; iCloud Keychain does some, but not all, of what 1Password does. In typical Apple fashion, it will probably satisfy a large group of casual users while the more advanced users turn up their noses and continue to use 1Password instead.



In any event, iCloud Keychain stores your passwords, credit-card numbers, and personal contact information and syncs them between devices running Mavericks or the also-forthcoming iOS 7. Since it’s all synced via iCloud, it should all stay in sync, so if you save a password on your Mac, it’ll be there when you next visit that site on your iPad. Pretty cool. (This is an optional feature—nobody's forcing you to put your stuff in the cloud. You turn it on by checking the Keychain box in the iCloud system-preference pane.)

Apple’s got some major advantages over utilities like 1Password, in that it can integrate directly in the browser (rather than via an extension) on the Mac. Passwords and user names fill in automatically when you visit a page, so you don’t have to click around like you do with 1Password. On iOS, the situation is even starker, since there are no such things as iOS browser extensions. 1Password is, as a result, a lot less convenient on iOS—and presumably iCloud Keychain will work seamlessly inside of Safari on iOS.

Safari’s been able to remember your password for ages now (only the syncing part is new), but it will now also suggest a random password for you when you’re prompted to create one. (This is good, because simple passwords are insecure.) Then Safari will save the random password in the keychain, so you never have to remember it. Safari can also remember your credit-card information and automatically fill it (well, most of it—it won’t store your card’s security code, which Apple says “is in accordance with industry practice” and I say is a silly practice) when you want to buy something.

I’m also a little concerned about the fact that, when my Mac is on, every password is available to anyone who uses my Mac. If you’re concerned that other people will have access to your passwords and credit-card numbers (but not the credit card's security code!), you'll need to set your Mac to automatically lock when it goes to sleep or when the screen saver activates, and set a very low timeout before that happens. I think I'd prefer an option to have to enter a password to unlock my iCloud Keychain. You can set the Mac’s normal keychain to lock after a period of inactivity, but the iCloud Keychain can’t be set to auto-lock. That seems like an oversight to me. Is the iCloud Keychain so secure that it doesn't need its own separate password lock, or so insecure that it can't be trusted to hold your credit card's four-digit security code?

I can quibble with some of the details, but I have to say that I'm impressed with the Safari update for Mavericks. Shared Links is a good idea that I keep finding myself using, and iCloud Keychain adds a level of convenience (especially once it's paired with iOS 7) that's hard to beat. Plus, any tool that discourages the use of passwords like "password123" makes the world a better place.

Monday, 24 June 2013

Collaboration is the missing ingredient of iWork for iCloud

Perhaps the most surprising announcement at Apple’s Worldwide Developers Conference last week was also the most underwhelming. After not releasing any substantial updates to its iWork productivity suite since iPhone versions in 2011, Apple announced that it would be bringing the office apps to yet another platform: the Web.

 

No, you’re not having déjà vu. Back in 2009, the company also launched a public beta of what it then called iWork.com. Our own editor, Dan Miller, began his first look at that venture by saying:

 

Let’s make one thing clear up front: iWork.com (in its current pre-release form) is not a collaborative online productivity tool like Google Docs or Zoho.

 

Unsurprisingly, iWork.com fell flat, and last year it died an ignominious death. And yet, with the announcement of iWork for iCloud, it seems like Apple is poised to make the same misstep all over again.

 

iWork for iCloud is an impressive technological achievement—everyone I spoke to last week at WWDC more or less agreed that wringing that level of performance out of browser-based apps is pretty slick, assuming they work as demonstrated.

 

But none of that matters a whit if the apps don’t address users’ actual needs. The main selling point of iWork for iCloud seems to be bringing the ability to read iWork documents to Windows—Apple even gave rare stage time to a demo on a Windows computer at last week’s keynote. “No more reason to give into your colleagues’ demands that you use Office at work,” the company seemed to be suggesting.

Apple's Roger Rosner demoed iWork for iCloud running in Chrome on a Windows machine.

To me, that’s only a hat tip to a much larger issue: collaboration. It’s great that Windows users can collaborate more easily on documents made with iWork, but what’s missing is any mention of real-time, simultaneous collaboration. It simply didn’t come up. At all.

 

Which, when you think about it, is a bit shocking when the company is demoing an office productivity suite that lives on the Web. Back in the early 2000s, when you got nifty apps like SubEthaEdit, collaboration was still a novelty. But when we all email, tweet, update our status, and share our lunch plans over the Internet, how can you ignore the fact that we, yes, sometimes even work together?

 

These days, if you don’t have some form of collaboration built into your productivity apps, you’re shooting yourself in the virtual foot. Take Google Drive: It certainly isn’t the best-looking office suite out there, but its collaboration features are second to none in ease-of-use and reliability. That functionality means that it’s picked up a lot of traction from folks who don’t want to deal with Apple’s paltry sharing options or wrestle with Microsoft’s 800lb gorilla.

Microsoft, meanwhile, has been demoing real-time collaboration across its Web and native apps.

Speaking of the folks from Redmond, Apple’s demo of iWork for iCloud on a Windows machine seemed like a pretty blatant shot across Microsoft’s bow. But that’s kind of like the old bit about the aircraft carrier vs. the lightouse. Just this week, Microsoft showed off the new collaboration features it’s bringing to Office on Windows, Android, iOS, and the Web, which make Apple’s productivity announcements ring a bit hollow, despite the lackluster nature of Office for iPhone.

 

To Apple’s credit, iWork honcho Roger Rosen did say before his demo of iWork for iCloud last week that the company would have “awesome” updates for iWork for Mac and iOS this fall, so there still exists the possibility that collaboration features are forthcoming. And given that it’s been more than four years since iWork received a substantial upgrade (the current version is still iWork ’09), a rebuild from the ground up to feature collaboration features could be one explanation for why we’ve been waiting so long.

 

The earlier iWork.com failed because it was tone deaf. People weren’t awed by a service that let you post read-only documents to a website, because it was so far behind what competitors were offering. While the weight of Apple’s ecosystem is usually a powerful swaying point, Google especially has a big lead on—and, more to the point, an affinity for—the Web.

 

This isn't the first time I've dinged Apple for its lack of collaboration features, and though I hope it might be the last, as the old saying goes, those who ignore history yada, yada, yada. Apple’s always had trouble sharing nicely with the other kids, but there’s hope: The improvements to Shared Photo Streams and addition of AirDrop for iOS signal that perhaps the company has realized that its users don’t reside in a vacuum. If it can bring that realization to the productivity realm, well, then maybe we can finally all work together.