Feedback on the "Couch to 5 km" App
The great thing about taking your app out for a run to test it - is that you can fix issues! I was delighted to discover that "Couch to 5km" app that I made in Flutter + Dart reset when the orientation changed.
The quick-fix is to set the orientation to portrait only. The better fix is to have a responsive app that adapts to different screen sizes and orientations. At some point I should also look at accessibility.
In any case - I'm on week 2 going on week 3 of "couch to 5 km" and it's been great using the app to learn TDD (test driven development) and actually using it to get fit.
"Modern C++ Programming with Test-Driven Development. Code Better Sleep Better"
I mentioned TDD above. It's something that I find divides developers. Some people think it's great and others active dislike it. As a project manager I do not enforce any techniques or methodologies or tools for the development teams that I work with. However, in order to better understand the possible tools and techniques - I have started mini-projects (such as "couch to 5 km") as a way to get a high level understanding.
My initial attempts at TDD were meant to be widget level tests but quickly morphed into Integration testing. You can find out more about the 3 levels of Flutter testing here: Testing Flutter Apps.
In order to dive a bit deeper into Test Driven Development, I have set myself the challenge to read and put in to practice via code examples the following book: Modern C++ Programming with Test-Driven Development Code Better, Sleep Better by Jeff Langr
Now you might be asking yourself: "Why are you trying to learn Flutter & Dart as well as C++ at the same time?" It's a good question and conventional wisdom online in the programming community encourages beginners such as myself to focus on just one language at a time.
Never the less I have had the C++ TDD book on my shelf a long time and it's got to the point where I either need to read and practice it - or give it away. The guilt of not reading it has reached a tipping point. Anyway, here is the project that I've challenged myself:
Project: TDD in 70 days
Duration: 70 Days. This is assuming 5 pagers per day for 67 days to reach 331 pages with a few days to spare.
Measure: Read the whole book and completed at least 50% of the exercises.
Notes: This might seem like a simple project, but I'm not very technical and my motivation fluctuates a lot within any given 10 minute time-span.
Future Project: Record My Route
Putting this here as a note to future me. Create an app in Flutter & Dart that allows the user to record their movement across either Google or Open Map. Simple record and stop button. The app will snapshot the locations every X seconds (X could be more or less than once per second). The app will stop the journey and allow playback of the route as either a continuous animation or step through it as if stepping through code with a debugger. The idea needs some polishing... this is the kernel of the app idea.