Guidance Getting Started - A Golf League App

Now retired, my career was developing end user software (MRP's), hence, familiar with DB based solutions.

I have been using Excel to manage a golf league and getting tired of all the steps involved. Part of tasks list - updating player status, putting together weekly teams and creating Teams sheet and scorecards. Weekly Results. (Not a complete list)

Wondering if writing an app will make life easier in the long run, plus, some day I will need to pass the coordinating to someone else. It would be easier for them to learn an app versus all the steps in Excel.

Questions... Do I develop using Swift (and deal with finding future replacement with a Mac), or do I develop using a cross platform (MacOS/IOS and that other familiar GUI OS?

Where do I begin? Where are resources for learning?

Any suggestions or recommendations are welcome.

I have a couple of big picture points for you to consider. The first is about your reason for doing this. If your goal is primarily to have fun while you make something, let that guide your technology choice. For example, there might be good reasons to implement this as a website (see below) but if you’re not enamoured with web development and really want to make a native app then… yeah… that’s what you should do.

OTOH, if you want to ship and maintain a product then it makes more sense to follow a technology path that’s appropriate for that product, even if it’s less to your taste.

Second, the one up-front decision to make is whether this program needs to share data between multiple users. If it does then you’ll need some sort of server technology. It might be possible to use an existing service — in the Apple ecosystem that’d be CloudKit — but that comes with its own set of constraints. If those constraints don’t work for you then you’ll end up needing to build your own server. And if you have to do that anyway then… well… maybe you could build this as a website rather than an app.

OTOH, if you intend for this to only be a single user thing then there’s nothing stopping you from shipping it as an app.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

What Quinn said, plus

Wondering if writing an app will make life easier in the long run, plus, some day I will need to pass the coordinating to someone else. It would be easier for them to learn an app versus all the steps in Excel.

It depends on the complexity of the app, but, by experience, reworking on a sophisticated Excel sheet written by someone else is really tricky and error prone.

So, if your application is a little bit sophisticated, Excel is not the way to go (IMHO). In addition, native app will let you add features that cannot be implemented in Excel.

An app appears well adapted and SwiftUI would probably make it pretty easy to develop.

 

Do I develop using Swift (and deal with finding future replacement with a Mac)

What is your concern with Mac ?

BTW, SwiftUI makes it easy to be cross platforms (Mac, iOS, iPadOS…)

Don't forget to close the thread once you have made your mind.

DTS Engineer.. Thank You! I appreciate your spending some time and giving me feedback.

This will be single user. (Phew - no server issues. (ha ha)

This is intended for our use. One day I will retire from organizing the group and pass the torch, and that person may not be computer savvy. You should see my documentation of all the steps taken using the Excel solution. Most others would balk and feel overwhelmed just seeing them. Hence, an app solution to pass to the next person. BTW... I loved developing solutions - figuring out the algorithms and creating code.

An app versus website... Can I do a native app that contains everything, nothing else is needed for the database aspect. To be clear, there would be an app and a (database) file. Same question if it is website based. I did not write web based code for my job, although I did dabble with PHP at one time.

Thanks again, Ed A

Claude31... Thank you for feedback.

I was given an Excel file with some "tasks" in place. BUT! I have enhanced it and am very familiar with the formulas and procedures. I created documentation for all the steps on every task - they would overwhelm someone else just looking at them, unless that person was "tech savvy".

Yes, the Excel is limited. I have to do numerous manual steps to complete tasks.

Personally, no concerns about the Mac. The concern is finding a replacement when I pass the organizer job to someone else - they would have to have a Mac, versus Windows. I am tempted to use Swift, easiest for me, but the above is the concern.

Thanks again, Ed

New to this forum.

What is the purpose of "Accept this answer"? When should I click it?

What is the purpose of "Accept this answer"? When should I click it?

It’s mostly just a social thing. I talk about it in tip 12 of Quinn’s Top Ten DevForums Tips.

One day I will retire from organizing the group and pass the torch

Fair enough. That raises two questions:

  • Will your successor be able to use your solution?
  • Will your solution keep working in the long term?

And there’s a bit of a balance to be struck. Your spreadsheet solution may not be easy to use, but you can be reasonably sure it’ll keep working. OTOH, the app you create will have a really nice UI, but someone has to maintain it. Apple strives to keep existing apps running, but only up to a point.

For example, we’re in the process of transitioning from Intel to Apple silicon on Mac, and we’ve announced that macOS 27 will be the last version of macOS with general-purpose Rosetta support. If, back in the day, you had created a Mac app for this task, you’d have to rebuild it for Apple silicon. That’s not a hard task, but it relies on you being around to do it (or your league finding someone else).

So, yeah, trade offs (-:

Regardless of what you choose to do, I strongly advise that you build a way to get the data out of your solution (so, export to CSV or something like that). So no matter what happens in the future, your league can at least access its historical data (-:


If you decide to create an app, Apple has a bunch of resources available to help. A good place to start is the ‘pathway’ docs for your target platform. For example, macOS Pathway.

If you want to get started with Swift, you can find a bunch of info on the Swift website. Given that you have programming experience in other languages, it’s reasonable to jump straight in to The Swift Programming Language doc.

There’s also a world of third-party resources available. I’m not really the right person to talk about those, so I’m hoping that others chime in.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Guidance Getting Started - A Golf League App
 
 
Q