-
Notifications
You must be signed in to change notification settings - Fork 1
l8gravely/tk-score
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
tk-score - a tool for setting up, scoring and reporting on a soccer league and the weekly results. I wrote this after spending way to much time trying to manage and update a spreadsheet that the previous league secretary had used. After running into all kinds of problems, I decided to write my own GUI tool using perl/tk since I'm familiar and comfortable with it. After several successful years of using this with our league, purely for my own benefit, we suddenly dropped from four games a week to three games (six teams) which threw a huge wrench into all the hidden assumptions I had made. Turns out it was quicker to hack the code base into a purely six team, three match per-week script, than to do the full on Object Oriented re-write you see in the master branch now. Ooops. But I'm still committed to changing over to a purely OO based setup, since it will lead to cleaner code, easier updates in the future, and makes me learn new perl features. A win all around! This is a huge work in progress, and has lots of built-in assumptions that are slowing being addressed: - all data structures are globals, moving slowing to a more Object Oriented setup. - It's hard coded for an eight or nine team season using round robin so that every team plays each other twice, and at both the earlier and later times. - hacking into a six team, three games-per-week was easy to do, but also means I have to keep multiple scripts around. Blech. - all games are scheduled once a week at two times across two fields. - For outdoor seasons, we have teams lining the fields, which impacts the schedules, since we like to have teams line for two weeks in a row, then pass on the equipment to a team starting at the first time slot(s) the next two weeks. - In the process of updating code to support only six teams, with three different time/field combos on a night. - Scheduling is all hard-coded into some templates. Really needs to move into it's own module, and then hopefully be expanded into a more generic tool which can do generic double round-robin scheduling. Like I have time to do that... but hopefully I can steal/borrow some existing CPAN code to do what I want. - Really need to think about data structures before I get too deep into the OO re-write. Am I doing it right? Is there an easier way to do what I want? Branches: - master is where I'm doing most of my work lately, oops! I need to get into the git way to doing all work in a branch and then merging to master. - six_team_hack: this is a branch hacked from the old pre-OO code base to quickly support a six team season with only three games per-week. works, but its a total hack. Wishlist: - automatic schedule generator, instead of hard-codeds ones used now. - complete move to object oriented perl for data structures. - better documentation of the data structure used to store data. - support for versioned data files. Not too important. - automated testing of modules. Author: John Stoffel ([email protected]) License: GPL v2.0
About
Perl/Tk based Soccer League Scoring and Reporting tool.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published