Parse and who can you trust?

Parse and who can you trust?

On Thursday, Facebook dropped a bomb. They announced that they were shutting down Parse, the Mobile Backend-as-a-Service (MBaaS) platform that they acquired in 2013.

Parse is one of brainCloud’s competitors, and arguably the biggest and most established player in the BaaS industry. Even so, brainCloud doesn’t run up against them that much because we have a richer, more specialized featureset that works better for our customer base.

In the wake of this event, it is inevitable that people are asking “What happened?” and “How can we trust any BaaS to build our business upon”. To that end, I thought I’d put together a few thoughts.

Why was Parse shut down?

The internet is a-buzz with comments that the business must have been failing.

I don’t buy that. The business case for the Backend-as-a-Service market is very strong, and Parse had a good product for the space they were aimed at. By all accounts, they had plenty of customers and an overall strong business. So why close it?

The answer is that Parse no longer aligned with the goals of it’s parent company, Facebook.

At the time that Parse was acquired, Facebook was floundering. They had recently IPO’d, but hadn’t figured out their mobile and advertising strategy. The stock was down, revenues were down – and they made a series of acquisitions hoping to strengthen and diversify their portfolio. Parse, well positioned as a platform for enabling mobile apps, seemed like a smart play to help them build up their mobile presence. And I’d say it was.

But now, almost three years later, things have changed. Facebook has totally turned it’s ship around. It is now a juggernaught in mobile, has advertising sales through the roof, and is more focused than ever on building out its core product. In managing everything it is doing, Facebook needs to continually ask itself: “Is <x> strategic to our overall success?”

And I think that’s where Parse failed the test. Parse’s business was probably $50-$100M per year. Healthy, for sure – heck, we’d take it! But that’s just a drop in the bucket to Facebook (less than 1% of revenue!), which will net close to $20B this year. And yet, I’ll bet that division had some of Facebook’s best engineers!

And that’s what it comes down to – Facebook said as much in their blog post. They are going to “focus their resources elsewhere.” I don’t think this is the normal generic excuse that a company makes when they announce bad news – in this case, I believe that it is very literally what they are doing.

 

Who can you trust?

In the wake of the Parse shut-down, a lot of people will be wondering how they can put their trust in any Backend-as-a-Service. After all, a ton of people probably chose Parse specifically because it was run by Facebook – a huge, incredibly successful organization, that was guaranteed to be around for years to come.

Here is my suggestion on the evaluation criteria to consider:

parse_and_who_can_you_trust_

  1. Feature Set – always start with the features – there is no point in going for a solution that doesn’t meet your needs.
  2. Organization – consider the organization that develops it. Are they a long-standing, established business, that has earned a solid reputation in the marketplace?
  3. Funding – how is the company/product funded? Beware of purely VC-funded companies. A lot of BaaS vendors are early stage VC-funded – this makes for splashy million dollar announcements and marketing materials, but the funding comes with strings attached, in terms of “You must succeed by <x> or you will be shut down.”
  4. Business Model – does the business model make sense? Is it easy to understand how the business would make money for the organization? If not, be wary – a “too good to be true”business model is often a sign of a last-ditch “hail mary” throw for success.
  5. Alignment – Does the product align with the strategic goals of the parent organization. No matter how good the product, Facebook has just proven that you are in danger if a clear alignment isn’t there.

Given this critera, how does brainCloud rate?

  1. Feature Set – we pride ourselves on our features, and the rapid pace at which they are evolving. With brainCloud (especially in comparison to a lower-level offering like Parse), you spend less time building features and more time using them. And we match each new feature with a visual tool for configuring and managing it.brainCloud goes over-and-above the classic BaaS capabilities with support for Gamification (xp, milestones, quests, achievements, leaderboards, etc.), Segmented Push Notifications, Scheduled Cloud Code, Auto Promotions, Mobile Multiplayer, Shared User Accounts, External Authentication, Server-to-Server APIs, a dynamic DataStream Architecture, and much much more.
  2. Organization – brainCloud is built by bitHeads, a 20-year old technology software developer based in Ottawa, Canada, in conjunction with playBrains, our game development subsidiary. bitHeads has earned a reputation as one of the top software development companies in Canada, and through the years has built award-winning products for Microsoft, Sony, Blackberry, Canada Post, Samsung, E*Trade, Nortel, Mitel, and hundreds of others.
  3. Funding – brainCloud is privately funded by bitHeads, its parent organization, with some assistance from various Canadian government programs. We are privately controlled, and thus no ultimatums.We started building brainCloud over four years ago, well before the term BaaS or MBaaS was a thing. We saw the value and opportunity in this market back then, and are determined to build the best product for it.
  4. Business Model – we don’t give brainCloud away, but we do work to keep the cost of the service as low as possible. brainCloud is free for development (maximum 100 dau), but you pay starting at $30 / month once you go live. This minimal charge ensures that every brainCloud customer is pulling their weight and paying their share of the costs for the service. This allows us to offer lower prices than our competitors, while at the same time ensuring that bitHeads can operate brainCloud indefinitely.bc_parse_modelContrast that with the models of some of our competitors, and ask yourselves how they can possibly be successful in the mid-to-long term? They have to charge their paid users more, and are basically betting that they will have enough high-volume customers to pay for the inevitably huge number of low-volume customers (that they subsidize for free). And some models are even crazier! These are the sorts of bets that you make when you are desperate for your next round of VC funding, or looking to be bought.
  5. Alignment – brainCloud arose because bitHeads was constantly building custom backend solutions for our customers. And we were building them over-and-over again, with largely the same features. For online casinos. Retail networks. Telecommunications. Mobile/Social games. For twenty years.Four years ago, we finally said, wait – what if we did this once, and productized it, so that we (nor anyone else) has to keep re-inventing the wheel? And thus brainCloud was born. It started as a small, separate team working within the company to build the core server system. We released the first apps on the platform almost three years ago – before we had a design portal with which to design and manage things (configuration was CSV and JSON back then).Today the team consists of twenty-ish people within the larger bitHeads/playBrains organization, together with the support teams to make that work. All services teams at bitHeads are aligned to delivering products and services around brainCloud. The custom apps and games that we build today are built upon brainCloud – it’s our competitive advantage. And we continue to productize and evolve the platform based on the feedback of our great community of developers.There’s no fear of alignment here – bitHeads is brainCloud.

 

And there you have it – my take on Parse, and how bitHeads and brainCloud rate as a Backend-as-a-Server that you can trust. To our brainCloud customers today, thanks a bunch – rest assured, we are in this for the long haul.

And if this is your first exposure to brainCloud, please sign up and take a look for free. If you take a good look at our features and tools, we think you’ll realize the power of the system we’ve developed, and the passion of the folks building it.

Oh – and if you are looking to move from Parse, please check out this survey. Filling it out will help us to prioritize the tools and support processes that we’re developing to assist Parse migration.

Happy coding folks!

Paul.

(PS – And for all you Parse-based folks looking to move, feel free to reach out. Our services teams would be happy to help you move over to our platform!)

Release 2.20.0

We hope the holidays were good to everyone. The brainCloud team took a few days to relax and regroup with family, and now we’re back at it.  Release 2.20.0 delivers some key customer-requested features, and sets the stage for a bunch more.

Without further ado, here’s what we’ve got.

Release Highlights

  • Multi-team Accounts – brainCloud now allows your Team Member (i.e. Developer) account to be associated with multiple Teams (i.e. Companies). This is a much-requested feature, and will be especially useful to developers working on apps for multiple client companies, those with developer-publisher relationships, etc. You will immediately notice the new Team Selection dialog that displays after logging into the portal.

SelectTeam

  • Team Administrators – As part of the Multi-team feature, we added the concept of Team Administrators. Now, only team administrators can perform team-level operations like Manage Users, Manage and Publish Apps, Edit company billing info, etc. Note – this does not affect the access of data within individual apps – all team members still have full privileges. This is the first step towards the Role Security feature that is currently in development. Note that all existing users have Team Administrator access by default – you’ll want to go to Admin | Team Members and adjust this permission accordingly.
  • User Files – this release brings support for storage of User Files – that is, binary files that are associated with individual apps (as opposed to our Custom Files, which are global). User Files can be organized by path (directories), can have shareable URLs, and can be up to 20 MB in size. The C++, C# (.Net/Unity), and Objective-C libraries have all been updated to support our new File APIs – which include support for uploading, listing, retrieving and managing files. Support for the other libraries will follow soon. Note – User Files are not yet visible in the Design Portal – that feature will be in an upcoming release.
  • New Segment Criteria – we’ve added support for two new pieces of Segment Criteria: timezones and AB Test ID. Timezones are as you’d expect – the timezone that a user is in. The AB Test ID is a random number between 0 and 99 that gets assigned to every new user when they are created. If, for example, you’d like to try a sales promotion with half of your user base (to see if it effects their monetization) you could define a segment for AB Seed values of 0-49, and then associate the Promotion and any push notifications with that Segment. Note that AB Test IDs are also included in the Identity data that gets passed through our DataStream Architecture – so you can hookup any number of back-end tools to analyze the behavioural results of such a test.

Portal Changes

  • Team is the New Company – given the new Multi-Team feature, the portal is now largely using the word “team” in place of “company”, which will now be used primarily for billing purposes.
  • Team Selection – you’ll immediately notice the new Team Selection page that displays immediately upon logging into the portal. Just choose your team and you’re into the same portal interface you’re used to — you are only ever logged into a single team at a time. But never fear, switching active teams is quick and easy – just click on the team name from the right-hand-corner menu.

Switch_company

  • Team Members Screen – has been revamped to show whether a member has Team Administrator privilege, and who how many apps they have access to. Currently all users have access to all apps, but that will change when we add our Role Security feature in the near future. Also note that you no longer Delete team members, you Remove them from your team. The user’s TeamMember account will continue to exist – allowing it to still be used to log into other teams.
  • Edit Team Member – Users may now change their e-mail address, as well as their password. Team Members (even Team Administrators) may no longer change another Team Member’s password.
  • Reporting | API Usage – File Storage stats are now reported in the section with File Transfer stats. Note – we don’t currently extrapolate the amount of storage that we think will be used by the end of the month.
  • Timezones – we’ve expanded the list of options in the Timezone selector of the portal. You are welcome Newfoundland! 🙂

API  Changes / Additions

  • New User Files API – A robust API for uploading, listing, and managing files. Supports files up to 20MB in size. See the BrainCloudFile api docs page.
  • Update Picture URL – now that you can upload files, it makes sense that users can have custom profile pics. So just upload the file (with a shareable URL), and then set the picture URL accordingly.
  • Session expiry – the Client Libraries have been enhanced to better handle session errors (session expired, invalidated due to login, etc.). This includes fixing heartbeats so that they no longer get sent if the session is gone.
  • Client libraries have been updated for this release. As always, if your app is currently live, we recommend that you test thoroughly before releasing on the updated libraries.

Miscellaneous Changes / Fixes

  • New, clearer error message returned when apps “in development” have reached their daily active user limit.
  • System now returns better error information if Google Push support has not been properly configured.
  • Additional data integrity checks when deleting dependent items in the portal – i.e. deleting an Achivement that is referred to by an XP Level, etc.
  • Apple and Android device tokens (for push notifications) are now deleted if they are reported as invalid by Apple and/or Google’s servers.
  • Miscellaneour fixes and performance improvements