Amazon Cognito

In this episode of the App Business Podcast, Chris and David covered Amazon Cognito.

An offline first no back end architecture by Amazon that is quite similar to Hoodie which is covered on a previous episode. Listen in as:

David gave an overview on what Amazon Cognito is about and what it does

Comparison of Amazon Cognito and Hoodie

Plus a little bit of side story about Chris and David’s new app business venture together

Sponsors:

App Business MBA – build a REAL mobile apps business with access to 100’s of video tutorials, proven SOPs and designs to help you get started using advanced gamification – along with best practices for building a scalable business.

Resources and Links Mentioned in this Episode

Transcription:

Chris: Hi and welcome to another episode of the App Business Podcast joined by David Hey David, what’s up man?

David: Hey Chris, how you doing?

Chris: Good. Just got back from a little break. It was a little bit of work. But no wifi, internet access so that’s always amazing. It’s like electricity. You need internet to get things done. But it’s nice to come back and kind of like hit the ground running again. Were gonna talk about one of this future episodes. Well it’s not future, this is current actually. Were gonna talk about Amazon Cognito. But it’s one of this things that I think David is really good at and the audience seems to appreciate which is kinda like new tech, new developments, new services that are worth keeping an eye on. So yeah we wanted to dig in to Amazon Cognito. David do you wanna give a quick intro to what this thing is?

David: Yeah, yeah totally and it absolutely is something that I would say new and current but definitely not future anymore. We keep seeing this services popping up so this is an offline first kind of no back-end thing and if you recognize this terms then that’s because you probably listened to the Hoodie episode. And this is yet another competitor you would say to a service like Hoodie. So what does this mean? Usually you have an app and let’s say you know our usual example it’s a game. And it’s a game where you can play it on your iPad, you can play it on your iPhone and maybe there’s also an Android version of it. What all this things do, it’s Amazon Cognito what Hoodie is the same idea and also CloudKit is that you want your app to be able to save all the data locally whether you have an internet connection or not. But then automatically without thinking about it sync it via the cloud and have it available on all the device where you use the same account. So we have seen this with CloudKit which will be available with iOS8. And we have seen it Hoodie which is independent open source. And now we have Amazon Cognito and it is an offline first no back-end architecture. So you can save data to their SDK. They will do the synchronization for you to AWS services and then they will make sure everything, your data is in sync across your apps and it will also work offline so you don’t have to think about the back-end anymore.

Chris: Does Facebook have an offline first back-end like this?

David: Well that’s a good question. So Facebook certainly works very well offline. So I can certainly say that for the Facebook desktop website, so I often had the case where I wanted to check whether my connectivity was there, whether my internet was there and I went to Facebook and thought well everything’s fine. I see everything here but then you go to another website and you notice your internet is actually down and Facebook is just showing you cache content which is pretty amazing. Facebook is doing something similar so Facebook will work whether you have an internet connection or not. Know what of course in a limited way because you can’t talk to your friends or leave a post or anything like that. At least not actually leave them. You can maybe schedule them for whenever you have connectivity. But Facebook has a system like this in place but I’m not aware of any service they created or make available to others, they just use this internally.

Chris: Yes. So Parse is the closest thing to Facebook has to a back-end as a service. But it is online, meaning the only way you can connect with the data that’s being – the only way you can synchronize with Parse whether it’s pulling your push and data is it has to be online. Right? That’s how it works?

David: Yes and also it’s a really difficult thing to create really good sync. So syncing sounds really easy when you explained it to someone, everybody get’s it. All the data works across all devices but when you have the problems of connectivity gaps and several people manipulating the same data, etcetera. Then you have really really problems on your hands and it’s not easy to solve that. So it’s not like okay now you have also an offline cache and the rest is Parse. It’s really much more difficult than that. And the amazing thing about the Amazon Cognito thing in comparison to CloudKit of course is that it has an iOS and an Android SDK. So when you want to rate it in terms of SDK’s available or at least SDK’s plan, iOS comes with iCloud and it will only work on iOS as far as we know right now and I wouldn’t expect Apple to change that. And we have Amazon Cognito now which has SDK for iOS and Android. And then we have Hoodie which is the most open and most independent of all which has an iOS SDK, it has a JavaScript web SDK and will soon get an Android SDK as well.

Chris: And that means that it could eventually work via websites or Facebook apps or other, you could connect to Hoodie via multiple SDK’s where as Amazon Cognito is limited to the mobile operating systems, right?

David: At least currently. I mean we don’t know what Amazon is trying to do here but certainly you would have to admit that it’s much much harder to do this on the web with JavaScript etc than doing it natively in iOS or Android.

Chris: And this is gonna matter the direction both Apple and Google have announced with iOS and Android is that iOS is gonna work on Macs, like you can use iOS apps for your Mac and Android’s gonna have a deep integration with Chrome. So it’s almost like does Amazon even need to build connections to different operating systems or different whatever Chrome is considered?

David: Well Amazon is in a very different situation. I mean they have their own version of Android, they have Kindle devices but they aren’t in a real comparable position to something like Apple or Google is. So Apple really wants to tightly integrate their ecosystem but they’re already running into problems with that. So for example, the new iCloud Drive feature is confusing, very confusing for Windows users because a lot of iPhone and iPad users have a Windows PC. And it will work on Windows as well but will they get how things work together and will they have the same experience that the Mac users get or will it be second class kind of thing. So that’s really a question how Apple is going to do that. And then the second thing of course is that you might have an iPad bought and an Android phone. And that happens a lot as well. So then you’re totally lost between this operating system war basically. Amazon is a very different position here because they are basically made to provide such a service I have to say.

Chris: Yeah, yeah.

David: They have the capability with their AWS services with the Amazon Web Serves which power so many services on the web for example Dropbox. They can do this and they have integrated them. So if you use Cognito to share, to sync data from your app between devices, then that’s not the only thing you can do. You get access to other AWS resources like S3 and other of the cloud services and you can communicate with that as well. So tha will open whole new world of possibilities and I must say this is much more interesting to someone like me than something like CloudKit where I’m even more and more binding myself to Apple and as a developer have all my business in their, all my eggs in one basket.

Chris: I don’t really understand the usecase for CloudKit for any serious development shop, you know like publisher or anything because why would you, unless the performance is so much better on CloudKit, why would you duplicate your efforts, one on CloudKit and then one on Amazon Cognito or whatever Android’s offering is. I don’t understand it.

David: Especially you can use Amazon Cognito on iOS as well, right? So why would you just use this? And that’s why I’m still in love with Hoodie right, because not only can I extend it to my will but also I can use it on the web as well. And I know that a lot of people think, in our audience focus on apps. And that really means iOS, sometimes means iOS and Android. But for most of the listeners it might not mean anything connected to web. But I’m convinced that we’ll be seeing much more web services coming up and our new service Optin Mobile is an iOS app and will be an Android app as well. But it’s also a web back-end and that’s where we use Hoodie for.

So all I’m saying is you know if you think you’re not going to need web applications, web services, then you’re probably making the same mistake as if you set 2-3 years ago. I am not going to need Android, I only pay attention to iOS. So it’s gonna be the same development their where we’ve seen the value decreased for apps that are only available on iOS. And we’ve seen the value decreased for apps that are available on both platforms but only do something only with the phone. The real value is in connected services. That’s where everything’s heading and that’s where we have the service layer apps and all that kind of stuff. And this connectedness needs to come from somewhere.

And something like Amazon Cognito is a good step in that direction. And if it covers your usecase completely and you know you’re not going to meet for a certain app, you’re not going to meet anything else, then I think it’s a great service. It comes with 10 gigabytes of free storage and a free tier that you can get for 1 year and I think a million transactions or something like that like sync operations so it’s quite a lot. So if you’re working on your first app or of it’s something small and you probably won’t get into any need for web services, something like that, you know go for it. That’s great but we have seen that a lot of apps are actually bonus web apps and then later get a mobile app client and for those it’s certainly more interesting to think about owning their data than getting it into Apple or Amazon data centers.

Chris: Yeah I think it’s certainly a user friendly way to go because the real usecase is people have mix devices. And while their aware this is an Apple device or this is an Android device, probably they understand the difference. They don’t wanna have to deal with well why doesn’t it sync? Why do I have four different instances of the same thing happening? So this is a huge user friendly direction and I’m a big believer – you know Apple makes sense. Apple wants you to be like as connected and what is it?

David: Tied to..

Chris: Yeah tied to their stuff as possible. Not as a developer, right? So they’re gonna provide you everything you need so you don’t have to go anywhere else. But if you’re thinking what your users want, they don’t wanna be tied to anything, they want as much choice as possible. So this is definitely enables that or helps us get there.

David: Yeah and again I mean we are working on very sophisticated – I mean I would call it at least for my level of previous apps that I’ve done a sophisticated service with Optin Mobile and for that we need a service like that. But I think simpler maybe like the Macromania which we’re still working on but get kind of in backlog because of Optin Mobile but for that, I mean if that’s a game, and you’re playing and you make it through the levels and get achievements and all and you get a new phone or you get another phone, an Android phone and you wanna play the same game there, you kind of expect your progress to be transferred over there. So how are you going to do that? And you know again, that’s where this systems come in and the thing like the event that Amazon goes into this market and presents the same solution of pretty complex problem actually really validates the need and yeah also the want of people to have this kind of service.

Chris: So a couple of comments. Amazon’s too awesome, right? They deliver cool stuff all the time, don’t they?

David: Yeah you’re the Amazon fan boy I guess.

Chris: I don’t think there’s a name for that but I am like – there’s an article on TechCrunch about them trying out at $9.99 like all you can read Kindle thing, like a Netflix for Kindle. And I’m like, oh my gosh, I want it so bad. But so I’m definitely an Amazon fan boy. But as a developer, I mean they just bust out amazingly cool stuff that I mean if in 20 years when we look back on this entrepreneur startup revolution that I think is just kinda starting although there’s definitely a bubble on certain types of startups. The ability for people to go and independently create something without a huge chunk of capital. Amazon is like 50% of it with their web services that they offer that allow companies to start very small. They can start free and test things out which use to cost hundreds of thousands of dollars to get started on. I’m such a fan of what they’re doing.

Okay that was one point I want to make but second is we kinda just glossed over this, but Optin Mobile is what we’ve talked about as the persona framework. We talked about it in various episodes all throughout probably with this podcast. And it’s gonna make a great case study. In fact we just dedicate a week of episodes to the case study at some point because it really has gone along like a textbook. I’m surprised at how well, it’s like fit in to exactly what I was trying to do. But I got to a point where I have shared this elsewhere but I got the point where I absolutely felt – like I couldn’t get pass the 6-figure mark to the 7-figure mark without a technical partner, like a real partner. Not someone I’m hiring but someone that has skin in the game as a founder.

And I’ve long thought about David and Stefan as an option and I thought of other guys and I even went as far as to go to founder dating and I’ve started filling up my profile there. But David and I talked a lot about it, and it was a perfect match with everything David and Stefan are working on together. And so David’s coming on and Stefan are coming on to the Optin Mobile project. And it’s already like taking the next step big time but you’ll hear us talking more about that like as a partnership because David’s fall in the you know got equity and everything. But we thing this things got some real legs and it’s both from a marketing perspective and like how we went to market which David wasn’t totally involved in but he knew what I was doing the whole time. And then now to how were like developing it now is really good case study for people out there who want to hear instead of making apps for like making a Flappy Bird or a quiz or even a Macromania, but building out more of a framework that you can then go sell. I mean we really attacked this opportunity at a cool modern way and I think it’s gonna be a really fun story to share at some point.

David: Yeah totally and I’m totally with you that we should at one point really prepare it and go from start to finish but from time to time there will be lessons just why were doing this that we’ll share. Things we’ve learned and we can already see how it impacts the performance of our developer working on this when I’m communicating with him or as when you were telling him to do things and that’s gonna be interesting for our listeners as well, right?

So the value of having a technical partner or someone who can speak technical is pretty high I think from what we’ve seen now and I wasn’t thinking that actually. I wasn’t surprised by that that this would make a real difference because you have done so many apps before but now when it gets really complicated or when there’s some complex issues or bugs I think where the developer gets stuck, and it’s turns out it’s really interesting to – yeah just talking to them in their own language can help them sometimes find the solutions themselves or sometimes you just need them to give them a little nudge in there and they get unstuck and can keep going, right?

Chris: Yeah. You know with VA’s and SOP’s and different marketing campaigns that I, or marketing strategies or whatever, I really make a big point of hey I probably won’t be doing it, but I wanna understand it. I wanna understand what I’m hiring this person to do. If it’s a VA and an SOP, absolutely I need to know it better than anyone and then have someone else to do it. But like even for things like if I were to hire someone to do an SEO campaign for me, I wanna read the three most important books on SEO to make sure that I can evaluate the person that I’m hiring and their work and ask them intelligent questions. So I do that across stuff like SEO or marketing stuff, or you know that kind of stuff.

With development it’s the learning – there’s just too much to learn. And there’s nothing I could do, well besides for taking a couple years off and just doing something that I’m not good at and don’t really enjoy to talk the same language. There’s nothing I can do to check to make sure he’s doing it the way I would do it because I don’t know how to do it. So I knew it was gonna be an impact, you’re gonna make a huge impact. I didn’t know how obviously and quickly it would be. Like once like oh finally I have someone that can tell me what the hell was going on because yeah it’s really hard for someone that doesn’t know to do it to communicate it. And I wouldn’t understand what were missing and how do I explain it the way I’m talking and so it’s been even just sharing that, you know like you’re saying the impact on communication will be an interesting story.

I’m sure people will be laughing because I know there’s a lot of people like me out there. And they’re some like art dudes that can make things happen but man they just can’t talk the language. And just having you on make a big difference and even in the app business mba, like how you make a real business. I mentioned finding the ying to your yang. And if you’re a developer finding a business partner which is harder I think than if you’re a business partner finding a good developer because there’s so many like business guys that don’t really have the chaps but it really makes a big difference. Dude I think this is gonna be the 7-figure partnership that I’ve been looking for. Coz I’m ready to move past 6 figures. You know what am I, 37 years old, it’s time to move to the 7-figure lifestyle, not lifestyle, just I wanna invest in other companies and I wanna do all that stuff and that’s how it works. And so this might be one of the vehicles to get there. But having you on is gonna make a big difference. It’ll be a really fun story to share I think.

David: Just one last bit there is like yeah sometimes the general mindset is totally awesome like I need to learn everything and do it myself once and then I can outsource, that works great at the beginning when the tasks are small and when everything is still learnable. And I think it’s not limited to development but it’s such a big chunk that it’s something that you notice very early but it would be the same with accounting. You don’t do your own accounting for you just so you have learned everything about it and then outsource it, you just get an accountant. And it can be many areas of your business where when you just have outgrown your own ability to keep up with the learning curve, that’s where you just need to hire other people to do the job that are qualified and that means they might be very expensive or they might need a partnership. But that’s the way to grow a business then is to hire when it’s just “cheaper” to hire than to climb the learning curve yourself basically.

Chris: Yeah and all of it’s are a live base right? It’s gonna be like okay I expect the business to be a hundred times more successful with David and Stefan involved so to give them a percent of equities no big deal because it’s gonna be – it’s almost like it just becomes a math problem you know.

David: Totally. Okay back to Amazon Cognito. That’s why we used Hoodie in Optin Mobile is because we need this web service and that’s why we’ll probably be using at some point Hoodie in our app series as well because we think that it’s a good idea to be friendly to your users and provide them with a nice service and if it’s not games or something like that, if it’s some real business application developing, that could also be a source of revenue where you’re just charging for this connectivity, for this service that you provide for them especially if you can also get a desktop web app for them or something like that. So think something like Basecamp where your project management, then you have a mobile app, all that needs to save and sync and that’s where this kinds of things are really useful. So yeah were still using Hoodie but Amazon Cognito is really nice validation for the Hoodie guys and if you know you’re only going to use iOS and Android then check it out. It seems pretty awesome.

Chris: Let me ask , I know were kind of deep into this one but let me ask you some questions from like a non-technical perspective. Can you do calculations on this?

David: I’ve no idea. What do you mean with calculations?

Chris: Ah let’s say instead of trying to do a bunch of – let’s use my terrible face compare app. And you’ve got maybe some advance calculations that you don’t wanna do on the app but you wanna send all the inputs over to the server and let the server do it.

David: Yeah I don’t know if that’s Cognito.

Chris: Okay.

David: I don’t know but I don’t think that’s what Cognito is particularly made for. Maybe you can integrate that like Cognito has some integrations for some AWS services but it’s really just renting computing cycles and that’s other AWS services can do that for you already.

Chris: Got it okay. Yeah Parse has something where you can, it’s like Cloud Code.

David: But there’s not really a data sync process involve here. Just attack this data, do your computing and give me the result.

Chris: Got it. Okay this is an API based thing, right? So any developer that understand – most developers should be able to work with Amazon Cognito right? You don’t have to hire a separate Amazon Cognito guy, right?

David: No I mean at first everybody needs to – it will take someone a little bit more time than integrating Twitter SDK because they have probably have done that 20 times before. And Cognito SDK, they haven’t seen before but it’s just an SDK. It has documentation, it has pretty good documentation as you can imagine and so it’s just an SDK that you drop in and you’re good to go.

Chris: Okay. Yeah so this seems like a pretty , I mean like a really good option. I use Parse for everything but if I started it all over, I’d probably be using Amazon Cognito just because one I think highly of Amazon and two, Parse works across both but I like the ability for like the offline access and management because really if you open an app and there’s no content which is how my apps are setup now. They can download some assets but there’s nothing like an offline way of accessing data let’s say. You know and another thing that Amazon Cognito does is it manages all your logins right?

David: Yeah, it does that as well.

Chris: So David’s a fan. What’s the pricing on this thing? Do we know?

David: Well I think it’s really cheap. Again you can get on the free tier for the first 12 months. It’s like 10 gigabytes and a million requests. But you know they have a numbers example here where they say, you do one million monthly sync operations and that cost you like 15 bucks and using stores base that you use like 4.77 gigabytes and that’s 72 cents.

Chris: Yeah. Their example for pricing is $15 bucks.

David: Yeah unless you’re like ridiculously big and then you should be able to monetize it, it’s cheap.

Chris: Good promise to have, right?

David: Totally.

Chris: Alright. Do we hit that pretty well? And a nice little side story?

David: Yeah. Probably too much of a side story but why not, it’s the app business podcast. Let’s talk a little bit about our business as well.

Chris: Yeah. Alright David thanks for the overview man. This is good and keep bringing this things. I think everyone really appreciates this kinds of stuff and your perspective as well. Parting thoughts?

David: Thanks. It was a pleasure and thanks for listening and talk to the listeners next time.