Once I decided the app was viable, I began to polish the app for release. First I had to come up with my wish list and then trim that down into a Minimum Viable Product (MVP) list of features.
The MVP features I desire being:
- Stroke counting
- Real time workout stats
- Location tracking
- Upload to Strava
- Import into Health App
- Submit Samples for Stroke Detection Refinement
- View Past Workouts
- Delete Past Workouts
It has been a busy 2 weeks and I am into the final stretch before my wife and kids get back from a visit with family in Canada. With them away I was able to throw myself into creating the app.
Over the last two weeks I have put in about 65 hours over 5 weekend days. I have not tracked the weekday nights as well but needless to say, I have invested time on many nights researching, designing, and cranking out code.
All the work is paying off. Yesterday evening (9pm) I took Paddle Mate for a spin around the lake. I put in just over 2 km with the app over 28 minutes. Notes from that:
- Dark Mode for nighttime kayaking worked out very well.
- I need to add an option to not turn off the screen.
- I am missing an activity indicator during the sample submission file generation.
- Sample Submission
- User has ability to choose the data to send.
- Submission is through a Mail Compose view so the user can view what they are uploading and choose to cancel at multiple stages if they do not want to upload samples.
- Tweaked my use of the Realm Database to:
- Decrease write calls.
- Add delete.
- Improve use with tableviews.
- Initial hookup work for Past Workouts (WAKE view) is done.
- Submit to Strava
- Hooked up but my GPX data format is being rejected.
- More testing/tweaking needed here.
- Created converter and file writers for my location and sensor data models to support CSV and GPX output formats.
Yesterday's Commit List
- Updates to UI design in PaintCode.
Added tintColor constant.
- Refresh DOCK tableview when returning to view.
- Added Delete button to END PADDLE view.
- Switched navigation from push detail to push in PADDLE workflow to allow pop to root without animation warnings.
- Added PaddlingEffort enum for user submitted samples.
- Added logic for incrementing workout id.
Added stroke data to sample submission format.
- Added submit samples to Paddle Mate via email submission.
- Added convert location data to sample submission format.
- Fixed warnings in FRDStravaClient.
- Wrote converter from location readings to GPX output.
- Wrote converter from location reading to location CSV output.
- Wrote converter from sensor reading to CSV output.
- Improved use of Realm with Dock TableView.
- Improved MathController default configuration.
- Added Uploading activity indicator and dimmer view.
- Added upload to Strava method. - GPX file format issue at moment.
- Hooked up controls in WAKE view to workout values.
Today's List of Features
- Strava upload
- Fix GPX format
- Past Workouts
- Add Delete option
- Add Submit Samples Option
- Add Upload to Strava Option
- Enable Charts
- Enable Map with route from workout