Moz’s Whiteboard Friday on IA and SEO I’ve always had a thing for site architecture and designing sites that are both user AND search engine friendly. However, it can be a bit challenging. Especially for those who have been doing SEO for a while. We all want to over-optimize every web page as much as possible. Well, stop doing that! In this video, Rand does a great job of explaining what you need to keep in mind when you’re designing a website that has both a good user experience and SEO. A Few Key Takeaways From The Video: Good information…
This week, I spent two jam-packed days at Unbounce’s fourth-ever Call To Action Conference. The one-track event featured some of today’s most influential digital marketing speakers like Mitch Joel, Kindra Hall, and Rand Fishkin.
Session topics ranged from integrity in marketing, to performance marketing success, to the marriage of SEO and conversion optimization. But most shared a common theme: Don’t forget about the real person behind that click.
Knowledge bombs were dropped, important conversations were had, and actionable insights were shared. So, in today’s post, I’m going to share some of my most important takeaways from CTA Conf.
If you attended the conference, please share your favorite takeaways in the comments below!
Unbounce Co-Founder, Oli Gardner, kicked things off on the first day.
Fun fact: Due to technical difficulties, Oli ended up acting out his entire opening video sequence (and most of the subsequent videos in his presentation). He handled the hiccup like a pro, of course, and launched into a great session on data-driven design.
One of the strongest points that Oli made was that digital marketing trends self-perpetuate, regardless of whether or not they are helpful to a user.
I know we, as data-driven marketers, ‘know’ this fact. We complain about ‘best practices’, and buzzwords, and yet we still get totally caught up in trends.
Remember when explainer videos became the end-all, be-all for homepages?
What happened? Hundreds of blog posts were written about explainer videos, and hundreds of explainer videos were produced to talk about how great explainer videos are. And then, every homepage on the internet featured an explainer video.
But…were all of those explainer videos really what customers needed? In some cases, but certainly not in all.
Instead, Oli spoke about the need to “mend trends”, and make design decisions based on data, rather than the most popular trend at the time.
We hold the same view at WiderFunnel. You can A/B test explainer video after explainer video. But to create truly impactful experiences, you have to go back to the research phase.
Use the data you have to drill into what you think are you most important business problems. And test hypotheses that attempt to solve for those problems.
2. Choose people, not personas
I’m not a big fan of personas. I’ve never kicked it with a persona.
– Wil Reynolds
But, without personas, how do I write the right copy for my customers at the right time?!
Conversion copywriter extraordinaire, Joel Klettke, spoke about how to read your customer’s mind. He emphasized the need to get past user personas and keywords, and focus on customer motivation instead.
We get stuck behind our screens, and start writing about ‘synergies’ and features that our customers really don’t care about.
– Joel Klettke
He outlined a framework for getting your customers to tell you about their pain points, anxieties, desired outcomes, and priorities, in their own words:
Note: I didn’t dig too deeply into the framework, here. But Joel put together a resource for CTA Conf attendees, and graciously gave me the green light to share it. Check it out here!
On Day 2, Claire Suellentrop built on this idea of the dated persona.
She explained that marketers collect many data points about our prospects, like…
Gender, age, location
Title, company, industry
Married, no kids, one puppy
…but asked whether or not all of that data actually helps us determine why a real human being just bought a new backpack from Everlane.
As an alternative, she suggested the Jobs To Be Done framework. JTBD refers to your customer’s struggle to make progress on something. When your customer overcomes that struggle, the job is done, and they have made progress.
The framework looks a little something like this:
“When ____________ (event that triggers the struggle), help me ______ (struggle / job) so I can __________ (better life / done).”
To identify your customers’ struggle, Claire suggests actually asking your customers. She outlined several sample questions:
“Take me back to life before [product]. What was it like?”
“What happened that compelled you to start looking for something different?”
“What happened when you tried [product] that made you confident it was right for you?”
“What can you do now that you couldn’t do before?”
One of my favorite speakers on Day 1 of CTA Conf was Kindra Hall. (Not surprising, as she is the storytelling expert).
Kindra dug into strategic storytelling in marketing. According to her, you should use a story every time you need to communicate value in your marketing.
Storytelling is powerful because real life humans are attracted to great stories. (And marketers talk to people after all).
Stories, according to Kindra, stick with us and make us do stuff because storytelling is a co-creative process.
“As I am telling you my story, you are creating your own in your mind. I am giving you my words, but you are meeting me half way, and we are creating a shared memory,” Kindra explained.
The most powerful moment in her talk came when she challenged the audience with the biggest storytelling mistake:
Too often, we allude to the story, but don’t actually tell it.
– Kindra Hall
She showed two example videos to illustrate her point. In the first, a company founder almost told her compelling story about losing both of her parents, but glossed over the details. The result was a pretty video, with pretty music that almost created feeling.
In the second video, the founder told her full story, explaining how losing her parents shaped her company and product. The difference in emotional impact was kind of incredible.
And making your customers feel is a huge part of making your customers act. Because we — consumers, people, humans — don’t buy products or services…we buy feelings.
Founder of Seer Interactive, Wil Reynolds, danced his way onto the stage, and delivered a really strong talk on SEO, conversion optimization, and the importance of people signals.
He didn’t mince words, explaining that marketers too often put conversions before customers. We ask “how do I get?” when we should be asking, “how do I help my customer get what they need?”
When you do an amazing job on search, you get to help people who are lost solve their problems.
– Wil Reynolds
Wil painted a picture of how we, as marketers, are letting our own wants override solving our customers’ problems. In the world of search, Wil pointed out that Google rewards pages that solve the searchers’ query. So solve the searchers’ query!
Much like we allude to stories, but often don’t tell them, we talk about listening to our customers, but often don’t really listen.
Instead of showing them product comparisons when they search “best CRM platform”, we pay to show them a landing page that claims “My product is the best! Get in my funnel!”
This isn’t just an issue in search or performance. In conversion optimization, there is an emphasis on velocity over user research. There is pressure to test more, and test faster.
But, we must take the time to do the research. To get as close to our customers’ problem, and tailor our marketing experience to their needs.
Building on Wil’s session on Day 1, SEO wizard, Rand Fishkin, gave the audience actionable tips around how to optimize for searcher intent.
Rand pointed to conversion optimization.
At its core, conversion optimization is about getting into your customers’ minds, and testing changes to get closer to the best possible customer experience. To give your customer what they need, you must soothe their pain points, and provide a solution.
You can apply this same concept to SEO: If you 1) gain a deep understanding of what searchers are seeking, and 2) determine why some searchers come away unsatisfied, you can optimize for searcher task accomplishment.
Unfortunately, Rand pointed out, there is still a conflict between SEO and CRO, because conversion rate and searcher satisfaction are sometimes in direct opposition.
For example, let’s say you want to get more blog subscriptions, so you add a pop-up to your blog post. This may lead to a higher conversion rate on the page, but lower searcher satisfaction. Some readers might bounce, which may lead to lower organic traffic.
But, Rand ended on a high note:
You can win with long-term thinking. By always asking, ‘are we building a brand that’s helping people succeed?’
One of the final speakers on Day 1 was marketing thought-leader, Mitch Joel, who shook things up a bit. Mitch spoke about what it means to be disruptive (and how to not fear disruption).
When I ask C-Suite marketers to define disruption, the definition is never consistent. In fact, I often don’t get a definition of disruption, I get a definition of destruction.
– Mitch Joel
He asked, if disruption is the big bad wolf, who are the heroes in this marketing story?
Well, like the three little pigs, Mitch discussed three ways to be disruptive rather than be disrupted:
Transformation: Business transformation is not your products or services, etc. It’s inside out. And it starts with technology. You need to be using the same tech, same form of communication that your customers are using.
Innovative marketing: Innovation is not re-allocation of resources. It isn’t investing more in Google Adwords versus another channel. Real innovation is about making and creating new products and experiences that we can use to market with.
Micro-transactions: Marketers and businesses get caught up in the macro transaction, in the purchase. But we live in a world of micro-transactions. This is the customer journey, and it is extremely important to understand.
Mitch Joel emphasized the fact that if you can apply these ‘three little pigs’ to your business model, you will be in a great place, though he recognized that it’s not always easy.
Senior Conversion Optimizer at Unbounce, Michael Aagaard, closed out the two-day conference. His message was a simple but powerful warning against the trap of confirmation bias.
We, as humans, are not interested in information, but confirmation.
– Michael Aagaard
Confirmation bias refers to our tendency to search for and recall information in ways that confirm our existing beliefs, hypotheses, and expectations. And it is a threat to data-driven marketing.
When you A/B test, you are searching for objectivity. You are trying to figure out which variation your users prefer, outside of your own opinions and beliefs about what works best.
But it’s rarely that simple, even if you are a pro.
Michael showed us a landing page that he analyzed for a client, featuring a stock photo hero image. He said he had railed against the photo, and shown the client examples of the hundreds of other stock photos featuring the same model.
But, when he tested the landing page, he found that the original version, featuring the ‘terrible’ stock photo, was the clear winner.
“Maybe,” he said, “users don’t spend hours scouring the internet for stock photo sinners like I do.”
He urged the audience to be bold enough to be wrong, to challenge our hypotheses, and get out of the marketing bubble when we are trying to solve problems.
If we don’t get out of the marketing bubble, we end up making assumptions, and designing experiences for ourselves.
– Michael Aagaard
Go hang out with your customer success teams and sales teams; get outsider input on your ‘great’ ideas. Go find your own natural skeptic, and challenge your hypotheses.
Were you at CTA Conf 17? What were your most important takeaways? Who were your favorite speakers, and why? Let us know in the comments!
Launching a new business idea or deciding to develop a new product for your company is not without risk. Many of the best business ideas have come from inspiration, intuition or in-depth insight into an industry. While some of these ideas have risen to dominate the modern world, such as search engines, barcodes and credit card readers, many fine ideas still result in bankruptcy for their company, due to insufficient demand or failure to properly research customer desire. If you build it will they come? Often smart business entrepreneurs can still make big mistakes. With new product, service or business…
I’d like to meet the person who goes into IKEA to pick up a new fridge and walks out with only the fridge. If you’re like me, you inevitably wind up with a car full of junk products, an ice cream in one hand and two hotdogs in the other.
That’s because IKEA stores aren’t designed to help you achieve a single goal.
They don’t care about the “optimal route” to the cash register — they want you to snake in and out of the showrooms. They want you to stop and fantasize about chopping imaginary vegetables on their impeccable countertops.
If you’re shopping for a new fridge and you know that’s all you need, you’re better off going to an appliance showroom, where the goal is clear: Get your gadget and get out.
This focus on a singular goal is the same focus that lies at the heart of our latest ebook:
Maximize Conversions Using Conversion-Centered Design
Download this ebook and become an expert at building delightful, high-converting marketing campaigns.
By entering your email you’ll receive weekly Unbounce Blog updates and other resources to help you become a marketing genius.
For a marketer, conversion means convincing a visitor to do one thing and one thing only. Not one of many things, not accomplishing it in under seven seconds, not successfully navigating from one point to another — just completing a single business-driven objective.
Conversion-Centered Design (CCD) helps you design experiences that guide the visitor towards completing that one specific action, using persuasive design and psychological triggers to increase conversions. In other words, it’s about persuasion.
And as you’ll learn, persuading your prospects to take the desired action you want them to take doesn’t have to be difficult (especially when you’re not distracting them with 99¢ hotdogs).
The theory behind each of the 7 CCD principles (Attention, Context, Clarity, Congruence, Credibility, Closing, Continuance) and how they affect conversion rates.
How to leverage the principles to create and optimize high-converting marketing campaigns.
Why landing pages are instrumental to improving the ROI of your marketing campaigns.
Traditional business logic dictates that you should outsource functions that aren’t core to your business in order to let the efficiencies of the market drive down costs. Let’s say you run a profitable magazine publishing company. You’ll probably have in-house editorial, marketing and finance teams. However, there’s little point in hiring your own cleaners because they’re not core to your business.
Digital services used to be seen in this way — as a cost to be minimized by hiring external agencies that would compete with each other on price and quality. Sadly, this attitude resulted in many large organizations spending less on their digital services than they did on their restrooms, which seems crazy considering how important digital channels have become. If you equate expenditure to value, this paints a stark picture of how some traditional companies valued this sector.
What if you could create an entire back end for your mobile applications that was feature-complete in data synchronization, push-notification support, user management and file-handling before you even started building the mobile experience? What if it was architected in such a way that you could easily create new cross-platform native and web applications seamlessly on this back end?
While this might sound like a fairy tale, it is exactly what providers of mobile back end as a service (MBaaS) are aiming to give app developers. It is up to you to determine whether that is true for the experiences you are creating.
Through this article, I hope you gain four key pieces of information: the way MBaaS providers fit into modern mobile application development, the process of evaluating MBaaS providers, the core functionality provided by MBaaS providers and the downsides of leveraging this type of solution. With this information, you will have the pieces to determine whether an MBaaS provider fits in your digital strategy.
Framing The Discussion
Normalizing the discussion around MBaaS is extremely challenging. While MBaaS is an accepted term, everyone defines it differently. Kinvey recently mapped providers of back-end-as-a-service enterprise solutions1. This map illustrates an extensive ecosystem, and defining different solution groups can be extremely challenging.
With the landscape changing by the minute, nailing down all of the players at any given point in time is hard. However, some key providers have proven themselves in the marketplace. Providers such as Parse102, Kinvey113 and Salesforce.com4 have built mature platforms that are currently relied on by many of the applications you use daily. Other more nascent solutions, such as Amazon Web Services’ (AWS) Cognito5, Microsoft Azure’s Mobile Services6, Apple’s CloudKit7, Kony MobileFabric8 and Pivotal CF9 still need time to be evaluated. Another key challenge in comparing MBaaS providers is that not all providers have feature parity.
Note: For this article, I will spend my time focusing on Parse102 and Kinvey113 because of their maturity and breadth of functionality. These two solutions could work for most uses cases, from an independent developer’s app to an enterprise solution across multiple digital properties.
MBaaS In Real Life
To help explain the purpose of MBaaS, I’ll use an example that we recently created out of our research and development group at Universal Mind12. All of our offices at Universal Mind have flexible work spaces. We wanted to examine how to track available work spaces using iBeacons13.
iBeacons are a class of sensors that follow Apple’s iBeacon specification. They utilize Bluetooth 4 low energy for communication, which allows an application to continually search for them without draining the user’s battery. They are ideal sensors for determining a user’s proximity (how close the user is to an object), which in certain settings (such as indoors) is more desirable than using GPS.
As a proof of concept, we wanted to create a quick cross-platform application prototype that illustrates how this idea could be leveraged on a large scale. The app itself was fairly basic. Here is a simplistic outline of the data relationships that describe how the application would function:
Users have accounts.
A user can be assigned to a work space if they are close enough to the iBeacon that is at a given station.
The work space can be occupied or vacant.
A work space exists at an office that has a specific location.
A user can get a list of vacant work spaces near them at that point.
In this application example, I’ll walk you through two different scenarios. First, we’ll see how we would have built this without an MBaaS solution. Then, I’ll contrast that with how we actually built it using an MBaaS solution. Through this, you will clearly see that the level of effort required to get something working is drastically different.
To create this cross-platform application, we need to put some core components in place:
I could probably fire up an AWS Elastic Compute Cloud15 (EC2) instance and run a Node.js server. I could even leverage Elastic Beanstalk or OpsWorks to handle some of the common deployment processes.
Because I am looking at AWS, I could leverage the Relational Database Service (RDS) or DynamoDB for the data store. There is also the option to deploy another solution on AWS, such as MongoLab.
I could create the entire integration with the database and then expose REST-based services to make it easy to perform CRUD operations on the data.
User management and security
I need to include a user entity as part of the data, and then tie permissions within the services to data that a particular user and/or group owns. In addition, I need to give users the ability to sign up, reset their password, delete their account and so on.
Within this Node.js application deployed on an EC2 server, I would need to integrate one of a handful of modules that allow for cross-platform notifications for both iOS and Android. While most of the heavy lifting would happen within these open-source modules, I would still need to integrate the application logic with the notifications.
iOS service integration
Because iOS is a target operating system, I would need to integrate with this server on iOS in either Swift or Objective-C. In addition, I would need to determine how to handle service caching, data storage, offline handling, push-notification handling, etc.
Android service integration
Because Android is a completely different platform, I would need to create the same server integration on that platform as well. I would need to handle all of the same concerns that I tackled on iOS as well.
With these items in place, I could begin actually building the views of the application and connecting them with the data. I could also begin handling iBeacon integrations and setting a workstation as “occupied” based on the user’s proximity. However, getting to that point and getting the infrastructure in place would take me a good deal of time and configuration. This is where the benefit of MBaaS is realized.
The beauty here is that the biggest items are taken care of for me: I never have to deal with configuring the server, setting up and configuring the database, setting up the service, managing users, securing data, setting up push notifications or integrating native services. All of that is provided as a part of MBaaS. My steps now look a bit different:
Create an app with the MBaaS provider.
Include the native SDK in each application.
With these items in place, I can tackle the two main service interactions with minimal code: fetching nearby work spaces and changing the state of a work space from vacant to occupied (and vice versa). Below, I have detailed some sample iOS Objective-C code with these samples, using Parse as the MBaaS provider:
// In header file or class extension
@property (nonatomic,strong) NSArray *workstations;
// Within the implementation
After the view loads, we can asynchronously grab the user's location
and then use that to query for a list of nearby workstations.
// Get the user's location as a Parse PFGeoPoint
[PFGeoPoint geoPointForCurrentLocationInBackground:^(PFGeoPoint *geoPoint, NSError *error)
This method asychronously fetches an array of the workstations
that are within two miles of the user's current location.
- (void)fetchWorkstationsNearPoint:(PFGeoPoint *)geoPoint
PFQuery *query = [PFQuery queryWithClassName:@"Workstations"];
[query whereKey:@"location" nearGeoPoint:userLocation withinMiles:2];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error)
self.workstations = objects;
In the code above, I’ve tackled the first challenge: fetching the data for workstations within two miles of the user’s current location. This starts with a call to grab the user’s current location after the application has finished loading. Parse provides a helper that gets this data, so that we don’t have to rely on CLLocationManager directly. Next, the fetchWorkstationsNearPoint method is called, which asynchronously queries Parse’ data store. Behind the scenes, the SDK is making REST calls to grab the data from Parse’s data store.
This method fetches a workstation data object given the iBeacon
identifier. Then, it sets the occupied property and saves the
PFQuery *query = [PFQuery queryWithClassName:@"Workstations"];
[query whereKey:@"beaconIdentifier" equalTo:beaconIdentifier];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error)
POWorkstation *workstation = [objects firstObject];
workstation[@"occupied"] = [NSNumber numberWithBool:isOccupied];
[workstation saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error)
In the code above, I’ve tackled the second challenge: setting the occupied state for a given workstation. This code is as terse as the first snippet. While you don’t see the iBeacon code that triggers this interaction, I wanted to capture all of the interactions with Parse. First, the specific workstation is fetched based on a beacon identifier. This string value is a property of the workstations in the data store. Next, I set the occupied property of the object and then save that value back to the data store in the background.
Very little code is needed to accomplish these tasks because a majority of the logic is happening within Parse’s iOS SDK. This handles things such as the service delegates, data translation and cached data storage, greatly reducing the code that a developer would have to write and maintain over time. While this isn’t a panacea, it provides a solid solution for the most common mobile use cases.
The Core Premise
Through this example, you can see that the core promise of MBaaS is that it solves the difficult challenge of supporting your mobile back end one time in such a way that it can be leveraged consistently across multiple projects. Instead of firing up a cloud-based database, push-notification server and user-management system, which you would have to manage, you can leverage an MBaaS vendor, which will provide all of this out of the box. In addition, you no longer have to be responsible for uptime and scalability of the back end, instead relying on the vendor for that.
While MBaaS certainly has its skeptics (which I will address later in this article), the focus on MBaaS over the last year has been undeniable. Early MBaaS provider Parse was acquired by Facebook; since then, Apple, Microsoft, Amazon and Google have emerged with their own cloud platforms. In addition, existing providers have thrived and are seeing a sharp uptake in adoption as their platforms have matured.
Distinguishing Between The Options
No two MBaaS solutions are the same, so knowing how to compare them is crucial. The key differences between providers lie in three areas: platform support, deployment methodology and feature focus.
A core benefit of MBaaS is the ability to support an application across multiple platforms. Some solutions, such as iCloud and CloudKit, do a great job of providing a deeply integrated data store (one component of MBaaS) on a single platform. While this works well for a single platform, it greatly limits the ability of an application to become cross-platform at a future time. However, if an application will only ever be on a single platform, this could be a good solution.
Some providers focus on native mobile platforms, while others support mobile web experiences and even desktop applications. At their core, most MBaaS experiences provide REST services, which allow for use on most any platform, but the technology-specific SDKs are a key benefit to developers. Picking an MBaaS provider that provides an SDK for all of the platforms you would like to support would be ideal.
In addition to cross-platform support, MBaaS solutions differentiate according to how they are deployed. Determining which options make sense for an organization will depend on several factors, including existing infrastructure, regulations on data storage (for sensitive data) and cost threshold.
Here are the most popular deployment methods for MBaaS solutions:
With a managed multi-tenant MBaaS solution, you don’t have to worry about deploying the environment on your infrastructure. In most cases, the provider will leverage an existing cloud provider, such as AWS, to deploy your application to a scalable environment. In this environment, your back end will run on servers alongside other applications for other users of the platform.
With a managed dedicated solution, the provider will still leverage a public cloud, such as AWS, but you will ensure that the MBaaS environment is deployed to servers that are dedicated for your use.
With an on-premise solution, the provider will deploy the MBaaS environment onto servers that you own. In most cases, this requires that you use a specific virtualization platform, such as VMware vCloud Air. For some organizations that deal with sensitive regulated data, this might be a requirement. In most cases, the provider will work together with an organization’s internal IT team to manage the platform.
With open-source MBaaS solutions (such as OpenKit and Helios), you will deploy and manage the solution yourself on any infrastructure you choose. This could be an on-premise or cloud-based solution. However, you will have to maintain and update the system yourself. While these solutions give you total control, they also negate many of the benefits of an MBaaS solution.
For most small organizations, the managed multi-tenant options will work perfectly. Larger enterprises could be facing privacy concerns, state and federal regulations and corporate mandates that dictate one solution over another. For example, financial organizations generally have tight restrictions on where account data may be stored. In such cases, a managed on-premise solution might be the only possibility.
Parse currently offers a managed multi-tenant option. Kinvey currently offers managed multi-tenant, managed dedicated and managed on-premise options.
Most every MBaaS solution has an area of focus. Some primarily target independent app developers, while other providers focus on the enterprise. Knowing where your effort lies will also help you determine which MBaaS solution is worth the investment of your time and money.
One good example of this is the focus that Kinvey has placed on the enterprise. Kinvey provides a data-connector specification that allows enterprises to hook outside data sources into the existing MBaaS data store, as well as an AuthLink to integrate with enterprise authentication and authorization. These features are fairly insignificant for most independent app developers, but they are absolutely essential for enterprises looking to integrate an MBaaS solution into their existing systems.
Parse has a different focus. It hasn’t focused as much on the enterprise since its acquisition by Facebook, but due to its integration by Facebook, it now provides a good deal of integration with the social juggernaut. Parse’s SDK now provide several utilities specifically geared to making it easier to access particular pieces of Facebook data.
Core MBaaS Functionality
Most core services offered through MBaaS solutions address the core needs of a mobile application. The main MBaaS providers share four key functions: user management, synchronized data with security, push notifications and file handling. Understanding these key areas of functionality will help you understand how a MBaaS provider could be a part of your digital strategy.
Most providers offer user management as a core feature. With this feature, you can give each user an account to which you can attach meta data. Some services take this a step further by allowing you to easily integrate email verification, password resetting, social login and support for anonymous users. This is a central facet of MBaaS functionality because it ties directly to the entire platform’s security.
For enterprise-focused MBaaS, this solution goes a step further. Vendors such as Kinvey offer integration with existing LDAP providers and even enable users to authenticate with Salesforce.com credentials. The key here is that very few enterprise customers want to reinvent user management and rather just want to integrate with existing solutions. Some enterprise-level MBaaS vendors fit this need nicely.
Synchronized Data With Security
In today’s digital landscape, a user will rarely interact with only one device or even one platform. While a solution such as iCloud enables developers to persist data for users with multiple devices on the same platform, it does nothing to address situations in which a user needs to access the same data from a website as they do from a mobile application. Synchronized cross-platform data is essential for any application that aims to expose itself to users in all areas of their lives. Because of this, synchronized data is the center of most every MBaaS solution.
Real-time push notifications are an essential element of many mobile applications. However, integrating with Apple Push Notification service (APNs) or Google Cloud Messaging often requires a dedicated server application. Many organizations have set up their own cross-platform notification server to manage these interactions.
Both Parse and Kinvey provide a basic level of push-notification integration for both Android and iOS.
File Storage and Delivery
From the uploading of user-generated content to the global delivery of remote application content, applications need to interact with files. Many applications work with existing services such as Amazon CloudFront to leverage a global content delivery network (CDN) for their remote content. Most MBaaS providers offer an abstraction of CDN solutions to enable application developers to work a network of edge servers in order to ensure that their content is delivered in a consistent and performant manner worldwide.
After this core set of functionality, MBaaS providers branch off into many different feature sets. For example, Kinvey has iBeacon integration, while Parse has third-party integration for functionality such as sending SMS messages. If you are looking to leverage particular functionality, finding a platform that fits the road map of your application is crucial. Evaluating solutions side by side here becomes difficult because the available options do not have full feature parity.
Downsides And Skeptics
While this functionality might seem like a dream for organizations that are looking to reduce the overall time to market for their apps and provide back-end consistency across their digital properties, consider a few things:
In most cases, MBaaS solutions are designed to provide a very low barrier to entry in regards to cost. However, as app usage grows, there is usually a fairly steep slope in the cost curve as well.
Because MBaaS solutions do not all correspond to a standard specification and because mass data migration is not always simple, applications are locked into the MBaaS solution that is initially chosen. This isn’t to say that it can’t be changed, but the cost and effort to do so is extensive in many cases.
MBaaS providers are hot commodities. You need look no further than Facebook’s aquisition of Parse to see that an MBaaS provider can certainly get acquired. Thoroughly review the terms of every MBaaS provider you are considering to understand how this could affect your application.
Nevertheless, the advantages in many cases outweigh the downsides. Because of the downsides, investigate potential MBaaS solutions extensively before incorporating one in the development plan for your application.
MBaaS certainly has its share of skeptics. I counted myself among that group in the early days of MBaaS. The main question among skeptics is, How can a single solution provide the flexibility needed for every application? The truth is that no solution has the flexiblity to meet every need. It is up to an experience’s owner to choose the solution that most closely maps to the functionality desired alongside the platforms that will be used to present the experience. In some cases, no match will be found and a custom back end would be the best approach.
In the particular use case that I mentioned earlier, this approach has probably saved me a few weeks of development. In addition, it has saved me from having to monitor and administer server instances as part of the overall solution. For me, the benefit was a reduced time to market for this prototype. However, as we’ll discuss in the next section, this isn’t the only benefit.
MBaaS And Digital Standards
I am a big fan of establishing digital standards within an organization (no matter the size of the organization). Digital standards do require foresight, but when done properly they yield a great degree of efficiency and consistency across an organization’s digital properties. Most organizations, however, focus on user interface standards only. In many cases, an organization using MBaaS across multiple digital projects could lead to a similar standardization of back-end interaction as well.
Adopting MBaaS across a single project obviously holds some benefit for organizations, but the shared learning and consistency derived from using it across multiple projects is where the most value lies.
Who Should Consider This Approach
MBaaS holds value for organizations of almost any size, but the advantages are different:
For a large organization, an enterprise-level solution (such as Kinvey) will set back-end standards for how the organization’s mobile applications perform common tasks. In addition, it standardizes how mobile applications access data outside of the MBaaS cloud (with solutions like Kinvey’s data connectors).
small and medium-sized organizations
For small organizations, MBaaS provides a completely unmanaged scalable infrastructure. Organizations can deploy experiences without needing a dedicated team to monitor the infrastructure 24/7. In addition, it can greatly reduce both the time to market and the amount of code to be maintained over time.
Many companies today are taking advantage of this approach. Cadillac, The Travel Channel and The Food Network are just a few of the companies leveraging MBaaS. Experiences like GovTribe16, Hipmunk17 and Timbre18 are all powered by MBaaS providers.
Both Parse19 and Kinvey20 provide several case studies that will help you evaluate successful experiences.
Final Thoughts And Next Steps
In my next article, I’ll walk you through the creation of a cross-platform MBaaS application. The article will highlight key areas where efficiencies are gained by leveraging an MBaaS provider instead of developing a custom solution.
If you are ready to jump into MBaaS now, then your next step is to check out some of the samples from the providers and examine the functionality and pricing of each platform. The following resources will assist you in your effort to determine the best solution for your experience.