This was the final push (changelog at bottom) before submitting to the App Store last Friday. I can say I stuck to my feature freeze and only fixed bugs and finished core features. At the time of writing this, still waiting for approval or not, and am purposefully staying out of the code! In the meantime, I updated to iOS 7 and am still forming an opinion on it. I have to say it upscales apps designed for iPhone to look much better on an iPad, and the interface from using default styles looks great to. I really pushed hard on getting this submitted on 8/17 as that is a symbolic end to summer for me and I go back to my rest-of-year occupation as a software development instructor at the technical college. So one last lone-wolf code-binge before I go back to school.
So on the hopeful assumption that Sterts is approved, what next? After much thought given to scaling (after all, I would like a million+ users) I've decided to rewrite the site and back-end in Ruby on Rails and possibly MongoDB on the data side. Currently I am using Symfony2 and SQLite, respectively. As much as I love Symfony the learning curve is just too steep when bringing additional resources on board, it's a rare skill-set and the ORM is just too fragile and doesn't lend itself to iterative development when you decide that you need another field on one of your classes. To add to it, SQLite and doctrine don't play well together when it comes to alter table commands so I had to write a SQLite DB copy utility (in C#, ironically) and run it every time I needed to add a field to one of the tables.
In addition to the back-end rework, I am planning on implementing the following features in the subsequent build:
- Latitude and Longitude data for each Stert.
- Better reporting - overlays on month/week/days with previous months/weeks/days.
- Push notifications for reminders on entering your sterts.
- Push notifications on friends updates.
- Search for friends by email or name.
- Averages for all users available/visible.
- Display feed of user updates on site.
- Display friends on profiles.
- Flag for if you are sick.
The following are ideas I am currently evaluating for future enhancements:
- Slider for "mood". Left would be something negative like "dark" or "morose" and far to the right would be "unsinkable" or "best day ever". In between would be "good", "fine", "been better" "sad", "anxious", etc. I want to keep the purity of vision that "body and mind" provides but you can be tired and still in a great mood.
- Ability to have sub accounts for paid users, and the sharing of sub accounts between users. These sub-accounts could represent patients, or children, or anything else that you'd like to track privately.
Changelog (what has been updated) for 8/16/2013:
- Persist Username on login screen,
- after login go to home screen
- history screen show username in navigation bar
- last stert not showing for logged in user after login
###8/13/13 - form validation 8/13 HTML5 browsers - password match, username exist, email exist - fixed month view and navigation to week/month buttons - check highcharts mana/hitpoints offset bug. - added contact us page - web change register to sign up - app Change "register" to "sign up" ###8/14/13 - stert class add note field - add latitude and longitude to sterts class (data mining, people are happy at this location,etc) - HAVE TO MAKE SCHEMA CHANGES BEFORE BETA EVEN IF NO NEW FEATURES USE THEM!! - contact us class - make functional contact us page - admin contact us page - change contact link to logged in path if user is logged in. create new route - contact populates user info when logged in ###8/15/13 - contact us submission page - on registration, need validation on username!!! - fix selected tab on charts page - message on add friends to sign in with twitter - message on twitter friend get failure - fix button style on settings page authorize ###8/16/13 - don't return twitter users already added as friends - Dont add same twitter friend twice
- friends page
- sign up, need validation on username, email and password match
- re-try on twitter api fail
- pull down on history screen
- Loading Indicator on History View
- changed new stert button to add from compose
- email sendout on user registration