Holmdel Golf League Software Guide

General Information

Registration

Tools

Flight Secretaries Corner

Flights

Individual Flights

Mailing List

Overview

Each flight secretary is tasked with the responsibilities of entering their flight's match scores, setting up the week 8 and week 16 bumper rounds, and maintaining the flight's schedule. The tools provided for this use are server-based, Linux command-line programs. In a perfect world, there would be web forms to manage the flights, but we're not there, at least not now.

General Guidelines for Match Entry

The main task for every flight secretary is the collection of match scorecards, and the entry of match data. Before we get to the description of the program used to enter match data, we need to discuss points to keep in mind while using the tool. We're putting this up front, because no one will read it if it gets buried any further down.
  • Never enter the same match more than once! Doing so makes a mess. If something goes wrong and you've committed the results, reach out for help.
  • Do not enter a match until you have all the scores, or a reason why someone was absent (subs, doubles, matching cards or forfeit). The program requires an outcome for all four players, it cannot be used to enter only one team's scores.
  • Enter scores promptly after each match. We have a not insignificant group of golfers playing in multiple flights, or sub'ing regularly. We need the scores entered quickly to correctly maintain their handicaps.
  • Enter the matches in the correct order. Which means your teams should play their matches in the correct order. This is important for a couple reasons. First, it insures your players are playing off the correct handicaps. It also allows the matching cards feature to work. You can't go back and enter a match-of-cards match after any of the following week's matches are entered, it makes a mess.
  • If the above advice (enter matches promptly, and in order) leaves you in a bind (because you don't have all the scores or a team didn't play), use the forfeit outcome. Changing the match data to remove a forfeit is an easy fix, though you'll need to reach out for help to get it done.
  • Don't get fixated on A and B player designations. Teams with A and B players with similar handicaps can flip-flop all season long. Have your teams play matches with the two lower handicap players opposing each other, and the two higher handicap players opposing each other. The exception to this rule is when a player doubles - in this case, the doubling player's main match is against the scheduled opponent, and the doubled match is against the missing partner's opponent.
  • However, who played whom was decided by the players when they played, and that decision should be respected, even if it was wrong. Admonish them later, if you need to! You can generally trust the program's suggestion regarding who played whom, but the last word is yours. You get one shot to change it, that's enough, because there are only two possible combinations.
  • The program handles lots of situations correctly, but there are some it can't. One common one is a match-of-cards match which was set up assuming both players would be present, but which eventually featured a sub or a player doubling. Go ahead and enter the scores for the match as it was played, then reach out for help to fix the match-of-cards match.
  • The standings computation messes up partial matches if one team completed play and the other didn't, or just one player in the match failed to finish. The problem isn't so much the match entry program, which does what you tell it to do. However, the partial match computation cannot implement the league rule. Here's our advice:
    • If dangerous weather has caused one team to walk off, the match is over at that point, even if the other team played on. Enter this as a partial match for both teams, through the last hole that everyone completed.
    • If one team walks off for pretty much any other reason, it's a forfeit. Enter the other team's scores as a full match if they completed it, or a partial match if they didn't.
    • If one player walks off without good cause, that player's team needs to forfeit the match, as we cannot do only a single player forfeit. Enter the other team's scores as a full match if they completed it, or a partial match if they didn't.
    • If one player walks off for cause (injury, emergency), get the team that completed the match to accept the remaining player as a double for the entire match, or as a partial match for both teams, through the last hole that everyone completed. It's not in the rules, it's part of the culture we want to create. If the team that completed the match refuses to do this, it's their right, but they're a bunch of pricks who should find some other outlet for their prickish behavior. We refer you back to the club's mission statement.
  • When entering hole-by-hole scores, the program doesn't prevent you from recording a score in excess of the league's defined maximum score on a hole, which we cap at double par, regardless of handicap. If the rule is working down in the trenches, you should never see a score higher than double par. Keep an eye out for this, anyway. If something slips through, you can always reach out for help.
  • The league rules feature a two-stroke handicap reduction assessed to a doubling player in a doubled match. The rules allow you to waive the rule in cases where a sub agreed to play but failed to show up. The program allows you to waive the rule. The rule was implemented to encourage the use of subs when a player is absent. In practice, finding a sub isn't all that easy, as many subs will only play in a single flight, on a single course, or a single night. Some flights waive the penalty in all circumstances. Use yor judgement.
  • Nothing is committed to the database until you say so. If you think you're about to make a mess, quit the program and reach out for help. If you discover you made a mess, don't sweat it, it can be un-done, just reach out for help.

The program to run for match entry, is entry. At any time you can type quit to quit the program, or restart to go back to the beginning and start over. Once you start messing up, one of these options is usually your best approach. The program will provide default answers to some prompts, inside square brackets ([ ]) - if the answers are suitable, just hit enter. You can shorthand y and n for yes and no, respectively.

You will need to know flight numbers (current 6/1/2023):

Flight Name Flight Number
Hominy Hill - Monday 1
Hominy Hill - Tuesday 3
Hominy Hill - Thursday 6
Howell Park - Thursday 9
Shark River Suneagles - Wednesday 12
Charleston Springs Colts Neck - Thursday 13
Pebble Creek - Monday 16
Pebble Creek - Tuesday 17
Pebble Creek - Wednesday 14
Pebble Creek - Thursday 15

You will likely need to know course numbers (current 6/1/2023):

Course Name Course Number
Hominy Hill 2
Howell Park 4
Shark River 5
Pebble Creek 7
Suneagles 8
Colts Neck 11
Charleston Springs - South 12
Charleston Springs - North 13

We've been tossed out of both Suneagles and Colts Neck.

Common examples follow. This is by no means exhaustive, but gives you some idea how to handle most conditions that arise.

A Normal Match

The following scenario assumes both players from both teams played the same day, same course, same nine, and were paired correctly.

Match Data

Enter the flight number, match number, the team number for one of the teams. The program fetches data for the flight, the match, and the players. If correct, confirm.

Scores

Enter scores, hole-by-hole. If the match wasn't completed, enter '0' for each hole not played. If you enter fewer than 9 scores for a golfer, the program notices, and makes you try again. If you enter more than 9 scores, only the first 9 will be used. Be careful, and quit or restart if things go wrong.

If everything looks good, commit the match.

Pairs Reversed

The following scenario assumes both players from both teams played the same day, same course, same nine, but were paired incorrectly. The program will use rounded handicaps to determine who the A and B players are for each match, and usually gets this right, even with subs. However, the match participants sometimes get this wrong, and the pairings they've agreed to should stand. Another common situation occurs when both the A and B players on a team have the same rounded handicap, in which case the program picks the first listed player.

Enter the flight number, match number, the team number for one of the teams. The program fetches data for the flight, the match, and the players. If the pairings presented is not how the match was played, enter n or no. It will not ask you if the new pairings are correct - there are only two possibilities, and you said no once, so it must be the other.

From here, enter scores, as above, and commit when correct.

Teams Play on Different Courses and Nights

While every effort should be made for matches to be played on the home course on the scheduled day, shit happens, and the program tries to deal with it. In the scenario below, one of the two teams plays a different course on the right day, the other plays the back nine on a different day.

Enter the flight number, match number, the team number for one of the teams, as usual. When we get to entering scores for the players, we need to indicate who played where, and when, and then repeat until all players are accounted for.

When all the scores are entered correctly, commit.

Additional scenarios are possible (but finite!). How the program deals with this is a bit complicated, and is a topic for another time, over at least a few beers.

One or More Subs Play

Prerequisite: The substitute must be registered in the database, and you must know his/her golfer id, before entering the match data.

In this scenario, a player from each team is a sub.

Enter the flight number, match number, the team number for one of the teams. The program fetches data for the flight, the match, and the players. When the player list is presented, enter n or no to indicate it is incorrect. When asked if subs played, enter y or yes, then indicate who they sub'ed for, and who they are. The program runs in a loop until all participants are correctly identified, so enter n or no to indicate it is still incorrect. On the second pass, add the second sub.

Once the player list is correct, and the pairings are correct, enter scores, as above, and commit when complete.

One or More Players Double

In this scenario, a player doubles for his/her partner.

Enter the flight number, match number, the team number for one of the teams. The program fetches data for the flight, the match, and the players. When the player list is presented, enter n or no to indicate it is incorrect. When asked if a player doubled for his/her partner, enter y or yes, then indicate which player doubled for his/her partner.

Once the player list is correct, and the pairings are correct, enter scores, as above, and commit when complete.

Note: By league rules, a player who doubles is assessed a 2-stroke handicap reduction in the doubled match, and this is the default behaviour of the program. The penalty can be waived via a prompt at the end of the dialog.

One Player Subs and Doubles

Prerequisite: The substitute must be registered in the database, and you must know his/her golfer id, before entering the match data.

In this scenario, a player subs for one player, and also doubles for his/her partner.

Enter the flight number, match number, the team number for one of the teams. The program fetches data for the flight, the match, and the players. When the player list is presented, enter n or no to indicate it is incorrect. When asked if subs played, enter y or yes, then indicate who they sub'ed for (hint: pick the A player), and who they are. The program runs in a loop until all participants are correctly identified, so enter n or no to indicate it is still incorrect. On the second pass, when asked if a player doubled for his/her partner, enter y or yes, then indicate the newly introduced sub also doubled for his/her partner.

Once the player list is correct, and the pairings are correct, enter scores, as above, and commit when complete.

Note: By league rules, a player who doubles is assessed a 2-stroke handicap reduction in the doubled match, and this is the default behaviour of the program. The penalty can be waived via a prompt at the end of the dialog.

Both Teams Match Cards

In this scenario, both teams are matching cards using next week's match.

Enter the flight number, match number, the team number for one of the teams. The program fetches data for the flight, the match, and the players. When the player list is presented, enter n or no to indicate it is incorrect. When asked if one team is matching cards using next week's match, enter y or yes, then indicate which team is matching cards. The program runs in a loop until all participants are correctly identified, so enter n or no to indicate it is still incorrect. On the second pass, when asked if a team matching cards using next week's match, enter y or yes, then indicate the second team.

Once the player list is correct, and the pairings are correct, go through the dialogs regarding when, where and who played (even though no one did!) and commit when complete.

One Team Forfeits

In this scenario, one team forfeits its match.

Enter the flight number, match number, the team number for one of the teams. The program fetches data for the flight, the match, and the players. When the player list is presented, enter n or no to indicate it is incorrect. When asked if one team is forfeiting the match, enter y or yes, then indicate which team forfeits.

Once the player list is correct, and the pairings are correct, enter scores for the team that played, and commit when complete.

Partial Match

In this scenario, both teams play a partial match (see the Guidelines above).

Enter the flight number, match number, the team number for one of the teams. The program fetches data for the flight, the match, and the players. When the player list is presented, cycle through the prompts until the players, course, nine, tees and date are all correct. Enter scores for each of the holes that were completed, and a '0' (zero) for holes not played.

Commit when complete.

Utilities

A second program, utilities, contains a variety of useful tools for the administration of flights. We'll cover two below that may be of general interest. Several others are essentially reserved for the database administrator, while still others - add golfer, find golfer and check match - are functionally obsolete since we have web-based tools providing the same capability.

If at any point you're not comfortable using this program, reach out for help.

Schedule Slips

The slip tool in the utilities program will slip your schedule one week - it works by moving every match in your schedule back by a week, beginning with the match scheduled for the date you provide.

This may not be what you want, as it will mess up any previously applied slips remaining in your schedule. Assume, for instance, you have used slip to block out the 4th of July. The match scheduled for that date is pushed out to 7/11, and all later matches are moved out a week. Now, you need to block out an additional match before 7/4, and run slip again. The match scheduled for 6/27 will be rescheduled for 7/4, and the open date at 7/4 moves to 7/11.

With this in mind, feel free to use slip to create your full 16 week schedule to block out known holidays and such. If you ever need to insert a new slip with pending slips still scheduled, reach out for help.

Bumper Pairings

Weeks 8 and 16 are bumper rounds where the teams placed first and second play against each other, third versus fourth, etc. The pairings for these matches aren't known until after weeks 7 and 15, and the database must be updated accordingly, before you can enter scores for the bumper round. Use the bumper tool for this purpose. You'll need to know the team placements in order to run this.

 

This page (sometimes) maintained by The Holmdel Golf League Webmaster.