I can't believe it's nearly 6 weeks ago that I posted my first post on this topic! Wow, time flies when you're having fun! Quick recap: I'm interested in learning PowerApps, but as of the moment, I don't have a good handle on a business application for it in my company. So, it's going to be a personal project I'm going to tackle to get a sense of what it can and can't do.
Previous Posts
My only post so far covered a bit of the registration in the Community (free) Plan. I intend to see what I can do within the confines of the free plan until I feel I have to move over to my Office 365 subscription which includes more "things" with PowerApps (data sources most notably).
Project Background
As I mentioned above, this is a "business" post but with a personal project in mind. I'll be posting this under my business feed as it's the business audience and capabilities I'm interested in ultimately.
First, the background to this project. I'm a golfer. I used to golf a lot more than I do today, and played in a lot of provincial-level championships over the years (Ontario Women's Amateur, Ontario Women's Mid-Amateur, Toronto Star Amateur etc.). I fall into the category of nowhere-near-the-top-of-the-leaderboard and good-enough-to-qualify-to-play. My handicap is still in the single digits, but barely, as I've lapsed in playing and practice time over the last 2-3 years. Next year I will qualify for the Seniors' versions of the provincial events and perhaps I will get my butt in gear and start competing again.
Why build when I could buy?
I've always been searching for a program to track my golf stats. I track my scores via the Golf Canada handicap system so I don't need that, but I want to track stats. At times I could track that when I posted scores for Golf Canada, and last I checked, with the mobile app I can no longer post hole-by-hole scores, hence no stats either. I could wait until I'm in front of a computer to track that on their system (full website) but I mostly update my scores right after playing via the mobile app. (Edit: the Golf Canada app has since been redesigned and users can post hole-by-hole scores with stats again.)
I haven't found a software or system that I *love* yet, or it's been a paid subscription and costs more money than I am interested in spending. The closest I've seen to what I want to track is the "shotbyshot.com" system, but I'm not interested in spending $100 USD a year. I like some of their "non-lite" stat tracking techniques combined with other things I've done over the years and that is roughly the model I will be following.
How long have I been thinking about doing this? Back in 2008, I started this "project" by trying to follow a proper development process which was to start by scoping the project out, identifying my "requirements", doing some technical specs on the table structure and UI design etc. Back then, PowerApps didn't exist and I was going to use it to further my development skills. I have done some very rudimentary programming in the past, slightly more complicated than "Hello World!" but not by much! I had mapped out a spec for this where it would be using Visual Studio and SQL as the back-end. Then, it sat, for years, and every so often I'd re-read it and then set it aside again.
Project Plan
Roughly, here is how I plan to tackle the project. The most likely data source for this is Microsoft Excel since I can connect to that easily with the free Community Plan. The final application will resemble the following structure:
- Main screen - a choice of Enter Score or View History
- View History will consist mostly of a list of previously entered rounds and ideally some visuals, perhaps from PowerBI.
- Enter Score will consist of first creating a "round" which will include things like:
- A course list with the option to add a new course
- A list of tees at that course and the option to add a new tee to an existing course
- An entry screen, likely one hole at a time, for a selected Course + Teebox with various stats.
- Par should be coming from the Course/Teebox setup
- Scores will be input and used in conjunction with # of putts to determine if I hit the green in regulation
- Fairway stats I'll use something like the shotbyshot method - a numeric indicator of the quality of the tee shot. This will be a drop-down list so I don't have to remember the number scale and of course, it will default to "Fairway hit" since I always hit it down the middle. LOL… ;)
- Length of my first putt on the green in feet
- Sand Save or Up & Down indicator (which I want to enable only if the math says I didn't hit the green in regulation).
- The number of penalties, hopefully, is zero!
- There will be an option for skipping a hole as there have been times when I may not play all of the holes in a round if it's getting dark or too slow for my liking.
My initial test was to set up a course list and that was successful but rudimentary. As I walk through this exercise I will want to spell out how to do some of the most basic things because if I don't know how to do it, others may not either! My first example of the course list was already flawed from a data integrity perspective: no validation or control on things that should be pre-defined like Province/State and Country. I haven't figured that out yet so I will be starting from scratch and documenting my journey!
Stay tuned… I suspect most of my progress may be over the winter when I'm not outside as much and have more time to hibernate inside in front of a computer!