I put myself into a feature-freeze until I submit the app to Apple, so am now tightening up a loosely-bound together web application that has thus far only served to fix the errors that the app introduced into the system. I take more enjoyment from this than I used to, probably has something to do with better design up front! Most of my refactoring has just involved reorganizing methods to be in alphabetical order, which is something of a first for me. Twitter deprecated v1 of their API which I was unabashedly using in some areas.. I thought this was going to be a struggle to update, but since I wrote my own Twitter oAuth client and forced myself to actually understand oAuth, it wasn't that bad at all. Most places it was just changing 1 to 1.1 in the url, and in one case a POST request turned into a GET.One of the bigger changes I worked on was the ability to display the Sterts history from a given week, as well as to force the chart to display a full range regardless of empty data in that range; for example, to force the chart to start on a Monday. Here is a sample of the past week, or click here . One thing I love about highcharts is the ability to export as a png:
In addition to the deeper reporting, within the app I replaced of the user profile image on the history screen. Instead of showing the profile, I subclasssed a view to display the difference between the Stert and the one before it. So, if Stert was "100 + 80" and the next was "50 + 90" there would be a long, red arrow pointing down and a short, blue arrow pointing up to illustrate the change from Stert to the next. Screen shot:
Oh, and a new splash image I am especially proud of:
If you're still reading, good. The first few paragraphs were to filter out the faint of heart. You're thinking, "wow! you really seem to know your stuff and this is the best idea I've ever heard! But how are you going to make any money to sustain the infrastructure required to support this insanely successful, world-changing technology?" There will be a ad-supported version of the app of course, and a ad-free version for $1 with some additional reporting and scheduling features in it. The main business model itself will be in-app purchases to change the nature of the measurements themselves. For example, the "Hitpoints and Mana" theme may be a bit too nerdy for a broader audience, so instead you might want to display "Health and Mind" in your app and on your profile. This would be unlocked through microtransactions. Conversely, the red and blue bars may not be nerdy enough, and you may choose to display 8-bit style Hearts instead to communicate your level of health that day. The default interface inside the app could be replaced with a futuristic-style interface with lens flares and animations and glowing buttons as an unlockable as well, or a soothing, neutral theme with subtle and responsive visual feedback. All of these in-app purchases will maintain a consistent presentation from the app interface, your account profile, your twitter posts and the badges that can be embedded on a blog or elsewhere. So, while the format of the Stert itself will remain "99 + 80" or "100 + 100" the graphical style and terms associated with them can be controlled by the user. My vision is around the measurements themselves and what can be done with them, and everything else will be aimed to enhance the experience for the user and encourage participation by actually entering the data.
Changelog (what has been updated) for 8/9/2013:
App Change Log
- Reverted to default styling.
- Hiding User Cell on no history data.
- Set Default values on Stert entry to 100.
- Moved rest of Twitter OAuth class to use v1.1 of the API since v1 is deprecated now.
- Added a shared static instance method to Twitter OAuth class, updated previous references to use now instead.
- Changed Stert status format to "100 + 100" from "100 and 100".
- Fixed issue with Posts to Twitter were failing on improperly encoded + in the base signature
- Replaced twitter profile pic with up and down arrows in history view.
- Removed notifications screen from app.
- Updated tab bar navigation.
- Store class cleanup, resolved build warnings.
- Login will now fail if user has not been granted beta access.
- Auth token expired message alert to login in again.
- Removed screen titles as labels and moved them into the navigation bar.
- Replaced gear image for account tab bar with a crown.
- New app icons and splash screen
Web Change Log
- Moved into Private Github Repo
- Added previous and next navigation to chart view.
- Added weekly view to chart.
- History will show by default when viewing from week or month link format.
- Added admin navigation page.
- Added ability to set beta status on user account.
- Login will now fail if user not granted beta access.
- Added ability to invalidate user authentication token.
- Updated landing page with image of Stert history.
- Added "broadcast" page that will send out push notification to all users