You are on page 1of 25

1

Hey Did You Go To The Gym?
Cisc 492- Final Report
Jordan van der Kroon & James Bortolus

2

Executive Summary
Hey Did You Go To The Gym is a simple app that helps users keep on top of their gym dates. Users set their GPS location of their gym and the times they want to go and if they don’t we annoy them.

Development
We’ve completed mock-ups, prototypes, and beta testing. We’ve released our app to the Google Play Appstore and we’ve released our first patch update. So far there have been 12 paid downloads at $2.99 from across the world (5 from Canada, 4 from Australia, and 3 from US). The next large technical steps we need to take include adding GPS ability, Facebook integration, and backwards compatibility with older versions of android. These should all be finished by December 22nd. We have also brought on Andrew Heard (an experienced app developer) onto the tem to help get the IOS Version of the app out by December 22nd in time for the New Year’s Launch. In addition to changes to coding we are working hard to develop another 100 cartoon characters and a bank of 200 sayings to match with our positive and negative notifications.

Customer Acquisition
New Year’s Resolution; Possibly the one time of year when there is a huge movement by the general population to try and get fit and keep on top of their fitness goals. This is the huge deadline we are trying to line up all of our milestones to hit. If we are successful, the New Year could be the point of time that will maximize our apps virality. The trick will be if we are successful to make sure user experiences are amazing so it doesn’t become a “fad” download and peak once and never again. We have put together a multi-medium marketing plan that can be seen later in this report including: PPC/Preroll advertising, Facebook, YouTube, Twitter, Blogs, and media coverage. (See the sections marked “Marketing” in the report for further information. We hope to break 2000 users by the end of January.

3

Table of Contents
Exec Summary Table of Contents Development
Next Large Coding Milestones Feedback and Changes We’ve Made IOS Port

Page 2 Page 3 Page 4
Page 5 Page 6 Page 7

Customer Acquisition
Marketing Overview and Goals Marketing- Facebook Marketing- Twitter Marketing-YouTube Marketing- Blogs Marketing- Reddit

Page 8
Page 9 Page 10 Page 11 Page 12 Page 13 Page 14

Additional Material from previous Reports
Value Proposition Customer Segments Original Projections The Team Technology Breaking down the Code Risks

Page 15
Page 16 Page 19 Page 20 Page 21 Page 22 Page 23 Page 25

4

Development

5

Next Large Coding Milestones
Create LocationActivity
The next coding milestone is to give our app GPS capability. This means being able to handle both cases of user setting and checking their current location. This portion needs to be tested and tweaked quite a bit as we have little experience dealing with gps location, we hope to have this working by the 2nd week of December which will give us 2 full weeks of intensive testing before our main release.

Facebook integration
Having the Facebook API integrated into our app will be one critical factor of our app’s virality. Similar to how the Nike Plus app allows people to post their running progress and distance our app will make posts if the user has streaks of good or bad. This functionality will be programmed straight into the main activity. We will make the Facebook integration an Opt In- and we will be sure to ask for permissions on what the user wants us to post about.

GymPoints or Stat tracking
We are looking into using parse.com to store our users fit points for tracking and rewards. This will also allow us to create things like friend leaderboards and get good data analytics about user’s gym habits. Another piece of functionality we would like to add to the stat tracking functionality is the ability to check in and out of the gym. This way we could measure not only if they went to the gym or not but how long they went for.

Improvement of Scheduling UI
We are currently using the default android date and time picker. We are looking at other options to give our scheduling UI a unique and simplistic feel that we can also port over to iOS and have the same look and feel there. Another feature we want to add to the scheduling functionality would be whenever a user completes their last scheduled gym date (i.e. they don’t have any future gym dates planned) the app will prompt them to schedule their next gym date.

Adding More Unique comedic lines and art assets
By adding more positive and negative lines and custom art assets for the screens in out app that correspond with users Going or not going to the gym, it will make their experience seem unique and original every time they use the app. We hope to have 200 phrases in the app by January 1st.

Compatibility issues
Lastly, we are working hard to make the app backwards compatible with android devices 2.0 and higher. We’ve had a few people who have wanted to purchase our app but couldn’t, and

6

Iterations and Customer Feedback
Although the first version of the app we released on November 19th had the majority of the functionality of our current app, it had minimal visual appeal and a number of bugs. These are the primary changes we have made since then: Patch 1.1 notes       Added colourful backgrounds Added vibration on alerts Added fit point system Disabled landscape mode Fixed some UI elements Added next gym time functionality and alarm tracking

Since then the feedback has been relatively small and mostly positive. We have 2 5star reviews on Google play. We have tried engaging in a discussion with users on reddit who said they had downloaded the app for constructive feedback. So far it seems difficult to get any customers to give us any sort of constructive criticism on where to improve. The number one complaint we have had that we are working on fixing right away is compatibility with devices before 4.0 OS. This is something we were working on releasing with version 1.1 on November 20th. We were running into issues that were cau sing the app to crash on all devices which is why it was not included in that patch and effort was instead put into fixing other bugs/bringing key features in for that version. Along with porting our app over to iOS the compatibility issue is our number one priority so we are able to reach as many customers as possible.

7

IOS Port
In our technical analysis we mentioned a potential move for the future would be to have an I-phone version of our app. Upon releasing our first app on the android store we didn’t realize how important this was. Out of the 75 people James approached in the arc in 2 hours to pitch the app, only 2 had an android phone. Over 75% were on IOS. Now this could simply have been the time and place I was at the gym. (Around 1 pm and at Queens) but it did open our eyes to the huge need to create a IOS version of the app. As such we have recently brought Andrew Heard onto the founding team to help develop the IOS version and manage some of the PPC advertising. Andrew has released 2 apps to the apple app store (Tunesify and Vidsify) with great success and user adoption. He has also developed a proof of concept WebSphere e-commerce application for IBM while working there last year. He is an absolute baller and we’re excited to have him on the team. We have decided to split revenues equally 33% across the board unless someone stops contributing to the app in the future if the company moves into perpetuity. In this case the persons share would be reduced in accordance to a defined list of pre-set criteria.(we will figure out at a later date once we actually start making some real money) Andrew has released multiple apps to the Apple Store and has strong experience in programming apps. With his help we aim to have a fully functional version of the IOS version by December 22nd on the apple app store (i.e. just in time for the new year’s push)

8

Customer Acquisition

9

Marketing Overview and Goals
Our main goal right now is to have a huge amount of PR and Buzz prepared going into the New Year to take advantage of the huge New Year’s resolution goals. To achieve this we have set some goals for ourselves. Our Goals Sales Facebook Twitter YouTube Blogs Reddit PR 2000 app sales by January 30th. 1000 likes by the New Year, 5000 by the end of January. 1000 Followers by the New Year. Demo Video Up, and 3 Mini Commercials by New Years Contact 48 previously identified fitness blogs, get featured on at least 10 Up voted to top of main page, dominate 10 motivation/fitness related sub-reddits Gotten in contact with 4 major news centers about covering our story

The Strategy The ultimate goal is virality. We want to execute our plan in a way that our app will spread quickly and widely across the world. To do this, we have set the above goals in an attempt to co-ordinate one “big swing” at the marketing and PR side. Similar to how six pack shortcuts grew from 1000 subscribers to 800,000 we plan to use a lot of online advertising and social media to push our app into our users hands. We realize that although we have to pay specific attention to customer acquisition costs (due to the low price of our app) this is not as important for the first wave of users, because of the viral affect and word of mouth we hope to realize through social media, buzz, and referrals.

10

Marketing- Facebook
Address: http://on.fb.me/YdolnP

Managing the Facebook Group
Creating Content The key to any good Facebook group is a continuous stream of high quality content. To manage this we have put together a plan to use a combination of inspirational/funny fitness related videos, contests, questions, and polls as well as a daily blog. Posting People’s Successes Another thing we want to use our Facebook group for is to share people’s successes. Our fit-points and Facebook API give us a great opportunity to do this. Sending users personalized messages when they stay on top of their fitness goals can be a nice personal touch that could give us some positive PR.

Advertising
Goal 1000 Likes by December 1’st and 5000 by the end of January. Copy Writing and A/B Testing This is our next beg step in our advertising campaigns. To do proper A/B testing on different copy writing in our ads with rapid 3-5 day iterations. Current Advertising Statistics In our current social media marketing campaign we have achieved a total of 8,634 impressions for $9.76. This has brought us 7 likes and 20 clicks or put another way a 0.9% click through rate. This has been to an extremely limited target market (i.e. targeting only Queen’s Students) so it is possible these numbers could change as we go for a wider audience (global) on a narrower scope of interest (fitness etc.) Budget Facebook ads have a general cost of $0.06 to $0.2 per 1000 impressions and are known to have varying levels of success. Currently we have only put $25 into testing Facebook ads, but we plan to put a budget of $500 in preparation for the new year.

11

Marketing- Twitter
Address: https://twitter.com/HeyDidYouGo This is a medium we definitely have to get more comfortable with, and fast.

Learning the Medium
Goal 1000 followers by New Year Our goals are to spend some time in the first week of December to study the best Twitter groups/streams (most followers, most actively engaged, funniest, best ranked) and examine how they interact with their user base. We are specifically looking to answer 3 questions: What are they tweeting? Why are people following them? And what can we take from their strategy to implement into our own.

Content Strategy
Aside from what we learn in December some strategies we have considered using include: Inbound Content Curators Things like RSS feeders and Google alerts that pull together new articles and blog posts on fitness or motivation that we can simply tweet the bit.ly link to with a small description. This will give us a continuous stream of high quality information we can pass along t our target market at little to no additional stress. Twitter Activities Re-tweeting and Tweet-backs are common practices in the twitter-verse, both of which engage our current audience and helps us grow our new audience. Re-tweets allow us to piggyback on the success of others and allow them to be indirect spokespeople for us. We will be aggressively tweeting back and looking for opportunities where people are saying their lazy or don’t want to go to the gym. We also plan to get a jump start on #newyearsresolutions and prepare tweets to respond to people saying how they are going to stay on top of them. Other Social Media We will have a wealth of other content at our disposal between our Facebook, blog, YouTube Channel, Points system, and Web Site. We want to use twitter as one way to disseminate this information.

12

Marketing- YouTube
Address: http://bit.ly/U5Ztpt

YouTube Strategy
Our YouTube Channel has 3 main types of videos that we will be showing; Promotional This includes our pre-roll ads, interviews we’ve hosted, product demos, and interviews we’ve been part of. These are simply look at how cool we are videos. These are to show legitimacy to our target market. You can watch our preroll ad here: http://bit.ly/YfP4Aa. Fitness Regimens An idea we have for building some consistent traffic to our site is to bring guest fitness instructors in to teach a workout routine. The idea is to get the big names in the YouTube fitness world to teach a workout regimen for us and in exchange we will both get more traffic. Inspirational Videos User success stories and motivation videos like Nike’s How Much Do You Want It: http://bit.ly/pW8f9N is another potential way for us to build traffic for our YouTube Channel.

Advertising
Goal: Get our ad in front of 30,000 people by New Years. Budget YouTube preroll advertising is bid on similar to how a Google PPC would be. Cost per impression is much more expensive though at approximately $0.06 per view up to $0.25 per view. Similarly to Facebook ads we have only put $25 into testing, but we are budgeting between $500 and $2000 for advertising in preparation for the new year. We have chosen to place these ads on the top 25 fitness channels on YouTube. (i.e. Six pack Abs, Athlean-X, Insane Home Fat Loss, BeFit, Live Strong, EHowFitness, Ask the Trainer.com, Runners World, Turbulence Training, Diet Health, Vince Del Mante, etc.)

13

Marketing- Blogs
This is another large part of our Go-to-Market strategy. We have identified the top 48 fitness blogs by volume, subscription, and reviews and have begun contacting them for a review of our product on the 1st or 2nd week after New Year’s. Of the 12 we have contacted in the past week, 3 have responded. 2 of the 3 said they’d be interested in featuring us while the third said he charges a $300 fee for any sort of review post. (He was one of the larger blogs though). In the next week, we hope to contact the remaining 36 and line up at least 10 guest blog posts for the first few weeks. The goal being, if we have traction, buzz, and PR it will be much easier to get some coverage in print media (given were university students) and really make a name for ourselves. One thing we wanted to make sure though is that each blog doesn’t have the same story about us. These are 10 potential blog post ideas we could use to get some sort of coverage for our app: Top 10 ways to stick to your new year’s resolution 5 ways you wouldn’t think of to Stick to your new year’s resolution Hey Did You Go To The Gym- A fitness app you should check out The mobile Age of Motivation- When an app can be your gym buddy Review of top 10 fitness apps for the IOS A New Fitness app that has us Whipped Losing those last 5 pounds- a few tips and tricks Mobile Insults and GPS Locating- The new era of Gym Buddy New Player in the Mobile Fitness world Can your phone keep you fit? A fitness app that keeps you going to the gym

The other thing that’s important in contacting these bloggers is to offer a story and an excerpt of the blog post so it’s easy for them to feature you. As such we are going to take the first week of December to write these up as we approach more bloggers.

14

Marketing- Reddit
On our big release he had made 3 separate posts to reddit in different fitness and motivational subreddits. From here we were able to engage in a back and forth conversation with users who expressed interest in the app. It also gives us a chance to gauge interest as users can vote up or vote down a post and all 3 of our posts received a positive score. On the sub-reddit /r/getMotivated our post did the best with a net score of 30 (36 upvotes, 6 downvotes) which had our post sitting in the top 10 for over 24 hours. We received lots of positive feedback on the concept and the idea of the app from users on this sub-reddit as you can see here:

Out of our 10 total sales so far, 4 of these sales have come from Australia! I think this proves that the 0 cost advertisement strategy on reddit lets us reach customers worldwide that otherwise would be very hard to reach. It is also a great chance to get feedback or bring early adopters into our social network community. As the app continues to grow we could reach out to these reddit users about possible opening up our own sub-reddit /r/heydidyougotothegym. A community of people who are motivating each other to go to the gym and give us feedback on the app would be a very strong asset to us moving forward.

15

Additional Material From Previous Reports

16

Value Proposition
1.1 The Pain
Getting fit is hard; not particularly because its complex (thousands of studies have shown eating better and consistent exercise will lead to muscle gain and weight loss) but because keeping yourself motivated to go to the gym is hard. Here’s a scenario nearly as old as time itself. Joe Shmoe comes off his Christmas break. He’s stuffed his face for the past 2 weeks and has put on some “love padding” around the waist and he makes a new year’s resolution to go to the gym twice a week for the rest of the year.What happens next probably doesn’t even have to be explained. For the first two weeks Joe’s on top of his shit. He’s excited about his “to-be” new sexy bod. He buys new shoes and a workout bag. He marks his calendar. He preps his gym bag the night before. And he goes to the gym! For two weeks everything’s going great! Unfortunately the following week something comes up and Joe has to cancel one of his gym dates. It’s not a big deal right? Joe’s been so good so far! Joe justifies that it won’t happen again. Unfortunately 2 weeks later, it does. Perhaps it’s the series premier of Gossip Girl Joe so avidly follows or a big assignment assigned by “the man” that gets in the way, but Joe doesn’t go. The rest of the story is downhill. Weeks go by. Joe gets less and less motivated and within 2 months he stop going entirely. What did Joe do wrong? Why is he still chubby? Why can’t he get a girlfriend? Why are millions more like him? One simple fact of human nature- Although people want to be attractive, they are inherently lazy. As a result, keeping to a gym schedule is hard without some external reinforcement.

1.2 The Solution
We are the swift kick in the arse that keeps people like Joe on top of their shit. How? We give Joe an app that hounds his ass if he doesn’t go the gym. Through the app Joe sets the times he wants to work out and the location where he will work out and locks it in. If he doesn’t show up to his gym location the app will remind him. But it doesn’t stop there. Each hour on the hour, after Joe misses a gym day, Joe’s phone will vibrate and buzz and ask “Hey. Did you go to the gym?”. Unfortunately for Joe, if he wants to make the messages stop he has to copy a paragraph word for word on his phone and if he makes a mistake it will erase everything he wrote and make him start over. So he has to be really committed to not going to the gym.

17 But why would Joe put himself through this misery? Won’t he get pissed and just delete the app? Possibly, but we want to try and walk the fence. We want to play the role of a good best friend and be a little smart-assy about reminding him about his gym goals. Phrases like, “Really? You’re not going to the gym?” progressing all the way to, “You might as well get some cake too, because at this rate, you can kiss your fitness goals goodbye. Enjoy your extra hour of Facebook, I hope it’s worth it.” The goal is to be more than a glorified alarm clock. We want to give our app a personality. And we want our customers to know what their buying. We want Joe to commit to getting in shape and understand the potential harassment he’s going to inflict on himself. We also understand this has to be balanced against creating barriers to exit so the person although feeling slightly pestered or insulted sticks to the program and in fact does get fit. Humans at our rudimentary nature are no different than Pavlov’s dogs, they can be conditioned by positive or negative reinforcement. Consequently, if we can get Joe to keep the app, it will only take so many buzzes for him to get it and eventually he will go to the gym.

1.3 The Gain
The REAL value we provide is in the comedy and annoyance factor of the app. The idea is to lock someone into barriers to exit within the app so they can’t cancel their workout times without significant annoyance. By having a constant reminder that travels everywhere with you in your pocket, we hope our customers will act upon our nagging (as It’s most likely at some point they will default) and go to the gym. By using technology such as GPS tracking and Facebook integration we hope to give users the extra nudge in the right direction to encourage an active lifestyle and discourage laziness. What we are really selling is confidence. We give people confidence that they can stick to their gym schedules (an extension of their quest to make themselves more attractive). We solve their pain by being a constant reminder to go to the gym. Putting it off can result in facebook posts being made on your wall. Snide comments being made. Going to the gym will result in supportive/funny comments. The app is to be seen as a funny/pain in the ass gym buddy that is always encouraging you to get off the couch and go to the gym.

18

1.4 Competitive Analysis
Direct Competitors Gym-pact is an interesting program that takes a different spin on encouraging users to go to the gym. It allows users to make a pact, they specify a gym schedule and a monetary amount of how much they should pay if they fail the pact. All of the money paid out from people not going to the gym is pooled and paid out to each person who did go. The issue I see with this is it is quite open to exploitation, if there is 5 dollars on the line every week I am sure not going to feel very guilty about lying to my phone app about going to the gym or not. There have also been quite a few reports of the “Run-Keeper” function being buggy and actually costing the users who did complete their allocated distance runs because it did not track the distance properly. I would assume users who have issues like this drop the program immediately. Gympush instead shows users how much money they are wasting based off the cost of their gym membership. Regardless of going to the gym or not you are still paying for that membership and now this app shows you just how much money you are throwing out the window! I think the key difference between our app and this approach is we would rather be encouraging or use comedy to encourage people to be active as oppose guilting them into it based on money. Indirect Competitors Personal trainers or similar programs that a gym would offer to encourage or motivate people. It would normally be a service provided by people to create a schedule for you and make sure you stick to it. Gym buddies tend to serve the same purpose. People tend to go the gym together to encourage and motivate each other. We are hoping to provide a similar service to a gym buddy for people who may not have that option. Competitive Advantage We are looking to bring a solution to people that is based on a small (0.99-2.99) one-time fee. The idea behind charging for the app is to add some value to the reminder. People are much likely less to fall off the wagon or delete our app if they purchased it. Our solution is also to provide a comedic but encouraging element to their gym going experience. It should be easy to setup and use. By incorporating the Facebook element into the app we are hoping there will be enough social media exposure to allow the app to become popular.

19

Customer Segments
2.1 Addressable Market size
There are 107.4 Android and IOS users in North America. 16 Million of which are in Canada1 and 91.4 of which are in the states.2 Of these 46.3% reside in our target demographic of 15-34 years of age.3 On average 21% of all phone and tablet users pay for apps for their devices.4 We will assume this holds constant across all demographics of smartphone users (although it is likely it’s slightly higher for our demographic given their engagement with technology). Finally 15-20% of the people in the USA work out on a somewhat consistent basis5. We will assume this is constant at approximately 17% across all of North America. This Computes to: 107 Million * (46.3%* 21% * 17%) =

1,757,154 potential app sales from people who work out on a somewhat consistent basis who might buy
fitness related apps in North America.

2.1 Target Market
Our customer wants to get in shape but either 1) in the past has failed and wants want’s something to keep them on track or 2) Is trying for the first time and heard our program works. Our primary market (at least initially) will focus on university students because of the higher engagement with mobile technology and potential for viral expansion. These customers are inclined not only to be more likely to pay for the app, and be more engaged but to tout its usefulness to their friends when it works. This group is not to be confused with the aspiring athlete who has more motivation either internally or externally and is already has some success in their gym ventures. These people feel less pain from the problem and probably done have the same level of social pressures that would warrant a binge buy of an app as easily.
1

http://mobilesyrup.com/2012/08/28/there-are-16-million-ios-and-android-devices-in-canada-amongfastest-technology-growth-in-history/ 2 http://ansonalex.com/infographics/smartphone-usage-statistics-2012-infographic/
3 4 5

http://www.readwriteweb.com/mobile/2012/10/sorry-samsung-iphone-is-not-your-mothers-smartphone.php http://techcrunch.com/2010/12/30/pew-65-percent-pay-digital-content/

http://www.bls.gov/spotlight/2008/sports

20

Original Projections
Our first customers will be purchasing the app because they are looking for some sort of support to keep them going to the gym, but the vast majority of people will see the app as an aid to help keep them on track through their fitness goals. We want our first customers to be what Steve Blank describes in the Startup Owner’s Manual as “EarlyVangelists”. An EarlyVangalist is a person who is not only willing to pay for your minimum viable product, they are so excited about your idea that they are willing to champion it and tell their circle of influence. Generally this crowd pertains to avid bloggers or techies but it can refer to “casuals” who become passionate about the idea who have large social networks. To discover these first customers we have conducted a primary experiment to test initial demand for our product. Over the course of 2 days we distributed 1000 flyers (seen on the right) that had a call to action to download our app either through the use of a QR code or by visiting the website. We printed equal portions of 3 different flyers that each redirected to a different website: www.heydidyougotothegym.com, www.heydidyougotothegym.net, www.heydidyougotothegym.info. Each site hosted a launch rock landing page and vouched a different potential price for the app. (.COM was 99 cents, .NET was $2.99, and .INFO was $4.99). We did this to separate our two hypothesis tests, the first hypothesis we wanted to test was with regard to the demand for our app. We wanted to ensure we could get at least 1% conversion on our 1000 posters. I.e. 10 hits to our 3 sites over the 1000 posters. We felt if we couldn’t hit at least that, we have a serious issue with either our basic value proposition or our targeting. The second hypothesis we wanted to test is if people who thought they might be interested in the app would pay for it. For this reason each of our landing pages included a price, this way we could have a general idea if the pain was large enough that people would pay for a solution. Fortunately, our findings were very promising. Over the course of the 2 days of our promotion we had 151 unique visits to our site from the postcards and of those 17 left their e-mails to “download” our app after knowing it cost money. Below is a summary of our conversion rates and throughputs

.Net Conversion Rates
6, 17% Bounced Visitors 30, 83% Converted to Sales

.Com Conversion Rates
5, 8% Bounced Visitors 56, 92% Converted to Sales

.Info Conversion Rates
6, 13% Bounced Visitors 39, 87% Converted to Sales

21

The Team
James Bortolus
James Bortolus is a 4th year commerce student enrolled at the Queens School of Business. Through working in the Queens Business Consulting Firm and running his own start-up businesses, James’ experience lies primarily in Entrepreneurship and the strategic/financial analysis of start-up ideas. In 2011 James was awarded Vaughan’s Youth Entrepreneurship award for the and was chosen from over 650 of the Ontario Governments Summer Company program to be featured as one of the top 16 student entrepreneurs in Canada. James is a Shad Valley Alum, and has also received first place for both the Queens Advancing Entrepreneurship Case Competition. In addition to HeyDidYouGoToTheGym, James is currently compiling a course on the best practices on Startup businesses which will be online in late December. James’ experience in past marketing campaigns and cold calling will be key in the success of developing a strong user base and finding key aspects missing in the app that can be passed along to Jordan for implementation. With regards to this project James will be focusing on the marketing, and customer development for the app.

Jordan van der Kroon
Jordan van der Kroon is a 4th year SODE (Software Design) student enrolled at the Queens School of Computing. Jordan just came off his 16 month internship at Research in Motion doing mainly software development on the BBOS Middleware team. After working for and seeing some of the issues of a big corporation like RIM, Jordan is excited to explore the possibilities of working for a smaller startup and having more creative control. While working at RIM Jordan had quite a bit of experience writing apps in the still underdeveloped BBOS development kit. As well as learning new languages/app SDKs such as adobe air and cascades. Bringing that experience to the forefront in this project will allow him to quickly pick up and learn all that is necessary to build an android app. Jordan is responsible for development of the app as well as any technical responsibilities that may go along with releasing an app to the public. Jordan will also be working closely with the initial customers to debug and add functionality where needed.

22

The Technology We Are Using
NotificationManager
http://developer.android.com/reference/android/app/NotificationManager.html NotificationManager handles any outgoing notifications for our app. It sends or cancels any notification, this is useful if we run into the situation of handling overlapping notifications. This could occur when a user has scheduled a gym appointment and has snoozed a previous appointment to conflict. Rather than spam the user with multiple notifications from one app we will give priority to a scheduled appointment over a snooze. Since we give each notification a unique id this is easy to do. Also if a user has not checked their phone for a week we do not want to fill their notifications. So before a notification is sent out we always cancel any previous unchecked notifications that are pending.

AlarmManager
http://developer.android.com/reference/android/app/AlarmManager.html The AlarmManager handles kicking the notificationManager into action at the correct time a user has set. We use store the time a user wants an alarm to go off in a calendar object and use the function getTimeMillis to get the correct input for the alarmmanager. After that this process takes care of the rest to make sure the notification will fire at the correct time.

LocationManager
http://developer.android.com/reference/android/location/LocationManager.html LocationManager is an API that handles retrieving and comparing GPS location data. This will be called whenever a user is confirming their location is the gym. Need to make sure to clean up and stop once we are done as constant pulling of GPS data can be draining on the battery.

Facebook SDK
https://developers.facebook.com/docs/mobile/android/build/Software Once we have signed our app we can give facebook our app’s signature so that it can ensure that the app is accessing facebook securely. We will be using the Single-Sign-On functionality which actually signs the user on through their authentication already stored

23 in the android facebook app. This is the preferred method over OAuth 2.0. Once we have authenticated we will need to ask the user for permissions such as posting on their wall.

Programming Languages
Java (JDK 7u9), for the Android application XML, for the Android interface

Development Tools
    Eclipse Juno Software Development Environment with Android SDK Android Development Tools [(ADT) (Advanced Development Tools),] plug-in for the Eclipse integrated development environment Android Virtual Device (AVD) Manager, for emulating device configurations Samsung Galaxy S3 Personal Phone and test device

Breaking down the Code
About Activities
In android activities help break down the user experience, when a user enters a new activity which is normally accompanied by a new view or screen of the app they always have the option to use the native android “back” button to return to the previous activity. By having key transitional activities we can have our app look and feel like most other android apps out there.

Activities
MainActivity This is the home screen of the app. From here the user can see when their next scheduled gym appointment is. By having a centralized main activity we allow the user to use the native android back button to return to this screen from any of the other accessible screens. ScheduleActivity ScheduleActivity is started once a user presses the button to modify their schedule. This is where the AlarmManager and the Calendar API come into effect. When a change on the schedule is evented out we create a new Calendar object for the given day

24 and time. We then use calender.getTimeMillis to get the correct parameter to be used in Alarmmanager.set. The AlarmManager needs intent, we give each intent a unique id so multiple alarms (and snoozes) can be set and tracked. We set our intent to our NotificationActivity, which is where we use the notificationManager.builder to create the notification. Once we have our calendar object with the set time in milliseconds and our intent object pointing at our notification builder activity we can set the alarm manager to build and fire the notification at that given time. NotificationActivity This is where we create Notification objects and handle our NotificationManager. We build each notification with a Title, text and an icon. We only enter the NotificationActivity and build a notification when the alarmManager has evented to do so. For now all notifications are built the same way. We could look at customizing the text to keep the experience fresh. The ID and intent are handled by the scheduling activity so this is a dumb activity only meant to build and fire notifications when it is told to do so by the alarmManager.

NotificationReceiverActivity The user enters this activity when they select the notification on their phone. They are brought to a screen that allows them to confirm their location being at the gym. Or hit snooze/cancel gym appointment. This is more of a transition activity. If the user confirms they are at the gym we move into the locationActivity to check their GPS location. If the user wants to snooze we call that function from the scheduleActivity in the background without changing views to create a new calendar object 30 minutes from the current time and set it as an alarm.

LocationActivity A user can enter a location activity in two ways. From the MainActivity a user can set their current GPS location and store that location as their gym. From the NotificationRecieverActivity we call a get function on the previously stored location and compare it to the current one. If there is no stored location we prompt the user to set one now.

25

Risks
Competitors The two competitors mentioned above (gym-pact and gympush) already have an established system for encouraging people to go to the gym. It hardly seems likely they would do a quick 180 on what they already have to go to a reminder based system. It is possible that gym-push could add a scheduling/reminder system to their app, but it seems unlikely that they would compete with us in the comedic encouragement angle. By taking this angle we have secured ourselves against anyone who doesn't come out of the gate this way as it would seem too much of a drastic shift from the serious money saving point of view of the other two competitors. With that being said we are not ruling out the ability for anyone else to come out with a scheduling app that offers reminders in a comedic way. The barrier for entry in this sort of thing is very low. To execute well we need to hit the market hard and fast. Reaching Our Customers Effectively There are two major potential risks with regard to reaching our customers effectively. One is that we can’t reach them. There is a potential that our viral push won’t work nearly as well as our physical roll out, in which case we will have to focus on starting promotional activities across Canadian universities. The second issue is with regards to cost. With so little margin on each sale, it is easy to spend away your bottom line in promotion and marketing. To mitigate this we will be sure to do much A/B testing using smaller budgets before we spend any significant amount on advertising. Market Risk As with just about any new product, there is risk there won’t be a demand for our product. This risk of lack of demand can be minimised through proper agile development processes and lean customer focused development on the front end. Pivoting and iterating as needed. There is also risk with regards to the virality of the app, both with regards to it not catching on at all as well as sustaining growth and sales past the initial “takeoff” if it does. The real key is establishing ourselves as the top app for fitness and keeping ourselves there.

Choosing the Appropriate Revenue Model There is a chance this app would do better as a freemium model (to increase the virality of the product) or as a multi sided market using Ad based revenue. Alternative revenue models will be explored during the customer focused development phase.