Building a scalable, cost-effective cloud platform
Wes Wilson, CTO and Co-founder of YukonBaby, comments: “From a technical perspective, the top priority was to build an app that could be used both online and offline. The Yukon doesn’t have great mobile data coverage, especially in remote areas, so we didn’t want users to have to be connected to access information—particularly since a lot of the information we provide doesn’t change much from day-to-day.”
The traditional relational database that YukonBaby had used for its prototype app was not a good choice from this perspective.
“SQL databases aren’t good at synchronizing data, which made us think about a NoSQL approach,” says Wilson. “IBM Cloudant® offers Cloudant Sync, which gave us exactly what we needed—an ‘offline first’ approach which lets our users work offline and just sync data when a connection is available.”
The Cloudant Sync capability also helps to keep costs low for users—instead of constantly re-downloading the same information, it only updates data that has changed. This minimizes the app’s consumption of mobile data, saving on phone bills.
“Low-income families are one of the groups that we particularly want to reach out to,” says Naylor. “We don’t want people to be discouraged from using the app because they’re worried about the cost of the data. With Cloudant, we’re able to significantly mitigate that risk.”
Cloudant also makes the app easy to manage, develop and extend—a key consideration given YukonBaby’s limited resources.
Naylor comments: “Our team has grown a little bit recently, but for most of the two years that we’ve been working on the app, Wes has been our only programmer—and it wasn’t his full-time job. To deliver a viable product with these resource constraints, we couldn’t afford to have Wes spending his time on database administration—we needed a platform that would look after itself. The fact that IBM offers Cloudant as a fully managed service was key.”
Wilson adds: “From my perspective as a developer, the fact that Cloudant doesn’t have a complex relational data model to manage is a big benefit. If you make a bad design decision, you’re not stuck with it—you can reorganize your data very easily and adapt your data structures as your needs change.
“Also, since the rest of our architecture is built on AngularJS and Node.js, it’s very natural to handle data in Cloudant’s JSON format—the whole stack is easy to understand, develop and debug. As an example, we had a situation where users were experiencing a lot of lag in part of the interface. I was able to fix the problem over the course of a weekend, without even touching the database—whereas with a SQL database, if you’ve got lag, you’re almost certainly going to end up spending hours optimizing and indexing.”
The JSON data format also allows other members of the team to contribute to the app, without any need for programming skills.
Naylor says: “We can compile new content for the app in spreadsheets, then simply save it in JSON format and upload it to Cloudant. That’s incredibly useful because once again, it allows Wes to focus on application development while other people handle content creation and management.”
Supporting communities in Yukon and beyond
With the app now launched on Android and iOS, YukonBaby is bringing information, resources and tools to a new generation of parents across Yukon.
Users can read about how their baby is developing over the course of their pregnancy, learn what to expect in the coming weeks, and consult detailed FAQs about every aspect of antenatal and neonatal health. They can also easily locate relevant resources in their local community, such as doctors, clinics and hospitals, and view local events such as classes and workshops where they can learn and socialize with other expecting parents.
Wilson comments: “We’re adding new features all the time to make this the best possible app for expecting parents in our communities. And as user adoption increases, we can be confident that Cloudant will scale up to handle the demand.”
Naylor concludes: “The flexibility of Cloudant also means that the app could have benefits beyond Yukon. We’re seeing a lot of interest from health organizations in other cities and territories, and we could easily re-skin the app to deliver similar services for different places, or even different clinical topics, such as diabetes or cardiovascular health.”