Roommates (Story of my first real App)

Posted by Gjermund Bjaanes on February 7, 2015

I have just launched my new app on App Store and Play Store. It’s an app for organizing shared housing. Living with Roommates made easy - basically.

I want to share the story of the app, and how I got to this point.

 

The story

The idea for this app came to life during the last year of computer engineering school. We either had to come up with a final project for the degree ourselves, or be handed some teacher-made stuffy project. I knew right away that I needed to come up with an idea for myself, because I really wanted to mould a large project from start to finish.

I wanted to make an mobile app. Because its fun to do mobile. I wanted to make software made for users - I like that much better than stuff nobody really interfaces with. I also wanted to do sync, cloud, users - there were many things I wanted to do with this app - just to learn it (I love learning new things!). And cross-platform. I need to think cross-platform. In this case that meant iOS and Android.

I had lived with many different kinds of people on many different occasions and knew what a pain it could be and the struggles with keeping things organized. So I though that might be a cool problem to solve - with an app. So thats what I did. Or I should say we. Because while the idea originated from me, the project group developed it from basic idea to a functional product as a team.

After the project was finished, we all graduated with fine scores and all was well. I did however feel a bit sad that our awesome project was going to die. So I got back into the code and started to clean it up. Both the iOS and the Android app had some bugs and minor design issues, so I went right away and cleaned those up.

After 6 months or so doing some after-hours work on the polishing of the app, I only had the hardest part left; getting the thing up on the stores (arguably, I now think getting people to notice the app is a much harder problem to solve). I should really say Store (SINGULAR). Because Play Store was a breeze compared to App Store. All the certificates and this and that, all of it has to be in all the right places for everything to be OK. But, I did it, and now it is available on both.

App Store: Roommates for iOS

Play Store: Roommates for Android

 

How the app is built

Roommates has four main areas (or screens. or scenes) to keep things organized within your household. Its Feed, Me, Tasks and Expenses.

 

4.7feed4.7me4.7tasks4.7expenses

Feed is household notes (think of Post It’s on the fridge or a physical bulletin-board) and household events.

Me is the user and household management section.

Tasks are for task lists (todo’s and such).

Expenses is for splitting up expenses between roommates.

 

This app is built with an BaaS (Backend as a Service) product called Parse. It allows all the data to live in the cloud, managed entirely by them. They provide an SDK with an easy-to-use API that is fast to get started with. It made the syncing and data management part extremely easy. All that was left to do was design the architecture, app and data. And code the clients. So lots of work really, but it was nice to not manage our own backend all the way.

Parse provides a feature called Cloud Code. It’s Javascript code that lives in the cloud that can be called from the clients. It also provides some hooks for specific events (like delete and create for different classes). Not everything is implemented in Cloud Code, but the most critical logic lives nicely up there in this cloud.

The app is made for iOS and Android, and each application is built with the native tools, instead of using some cross-platform SDK. Both apps have the same feature set and work together (both sync with the same data from Parse).

 

I am very happy to have made this release happen, and I hope someone will find it useful. All the code is also available on Github:

Roommates for iOS: https://github.com/bjaanes/Roommates-For-iOS

Roommates for Android: https://github.com/bjaanes/Roommates-For-Android

Roommates Cloud Code: https://github.com/bjaanes/Roommates-For-CloudCode

 


Follow me on Twitter: @gjermundbjaanes