Introducing the Parse Windows 8 SDK
blog.parse.com
blog.parse.com
EDIT: Please don't get me wrong. My proposition was in terms of how many serious apps will adopt Parse. I currently use parse for 3 of my apps and love it. But I am a free user and never bother paying for their service coz there is no need for it.
A team that is deeply invested in mobile might want to engineer their own solution. If you're a mobile-only company or even a mobile-first company, I would expect you to have a full backend team. Otherwise, contracting out the bit you don't have resources for just makes sense. That's where I see Parse sitting in the world, and with the client list you mentioned, it seems to fit perfectly. I wouldn't expect Home Depot to have a complete mobile team.
I'm writing a pretty complicated application using parse. It's been great so far. I've been a very vocal non-fan of their iOS SDK though, so much so that I'm actually dropping it in favor of a custom written job using their REST API instead. But besides that one thing, it's been fantastic.
The new Cloud code stuff they just added is awesome.
I spent 10 years doing heavy backend shit until about 5 years ago when I switched back to native front-end development. I still am having to write a service here or there to cover some holes that Parse doesn't cover for this application, but those are pretty small holes.
A+++ would use again.
I don't like the lack of client side persistence. There is caching with PFQuery but it's caching the json response from the server. For example, let's say I have a message board with 1000 messages. If the user posts a message, I can't simply add the new post and have it cached, I would have to query and pull down all 1001 messages.
Now, I've written all the boilerplate around the parse SDK to do all of this, but it was kind of hacky. So now I'm ripping it all out and just using the REST API with my own custom digs. Much smoother. I'm slowly moving it over to it's own static lib at: https://github.com/jawngee/CloudObject
Don't get me wrong though, their SDK is definitely usable, but after a certain point it becomes a little cumbersome.
2) Why would developers stick with Parse? Well, because the price is just negligible for what you get - there will never be a good ROI to switch away. You can use Parse at the Pro level for literally years, and it doesn't cost as much as a week of effort from an A-level developer.
Parse = $4800 for two years
Awesome Developer = easily $6000 for a week of work
3) I love Parse for how easy it is to whip up server-side stuff, where I'd like some flexibility in how it's implemented. Before, I would write features and have to ship new versions if I wanted to make a change. Now when it occurs to me to make something server-configurable, I don't heistate to use Parse - it just doesn't add any time over using strictly client-side stuff. And the web interface makes it simple to "admin" and tweak the features.
Don't even get me started on how easy Parse makes it to do Push notifications and how well that works.
We use Parse for some apps and roll our own Rails backend too. Of all the MPaaS providers we've investigate, Parse seems to be getting things right: SDK's are solid & the documentation is up-to-date, 3rd party integration with Twitter / FB / S3 work great. It's a joy to get started.
The biggest problem we've seen so far are on caching, user models, analysis and emails:
- Local native caching on devices seems capricious, and we've often reverted to writing our own caching schemes on top of Parse (had to do the same for server-side, too, but maybe that's a given...)
- User data model is pretty basic, and although the ACL capabilities are nice, it's not easy to build (FB invite requests work, but outside of that framework you have to roll your own invite / accept / reject / exit logic)
- Custom emails on User model CRUD / password are supported, but not for any other user interaction (ie., weekly roundup emails, status updates, etc.)
- API introspection is tough, it's not easy to optimize (ok, minimize) API calls and some form of introspection & analysis would be helpful (eg., just when do the SDK libraries synchronize, and how often?)
All that being said, I don't think any of their competitors have done a better job on these topics and certainly Parse seems to be pulling away from the MPaaS pack.
Buddy has had a Win SDK available for months [1].
[1] http://www.buddy.com/documentation.aspx#SDKs_and_Samples