I am involved with the performance analysis of racing teams, mainly sailing. I am looking to develop an application which will help gather data about team performance (notes taken by coaches, numerical logs of timestamped data, photos, video) in one location where coaches and team members can share comments a create a debrief on performance.
I have a background in computer science, and work with python daily, so I would like this app to be built in Django to aid in future support. I am also a big believe in TDD. Project whould have code on GitHub and deploy to PythonAnywhere. I believe this project could be broken down into several phases. Emphasis on all phases is functionality, not design or appearance.
Build basic Django application with models for Users, Teams.
Actions to provide:
* Create new user (prefer simple login rather than OAuth, email validation required)
* Create new team
* Invite user to a team
* Invite non-user to a team (send invite to email)
* Ask to join a team
* Delete user account, Delete team
Goals: Setup a flexible network of users and teams. Users may be coaches or team members. Important to figure out how teams operate independently of users, in other words: the team has to survive the creator leaving the system. So teams should have multiple admins, with a bias towards openess and control, with most users having permission to perform most actions.
Add support for events and files.
Actions to provide:
* Create events during which the team performed. This could be a match, tournament, race, multi-day event, or even long. Could consider a hierarchy of events Year->Season->Tournament->Match->Game for instance.
* Allow team members to upload documents such as Audio, Video, Textfiles, timestamped logs. A log for instance might be data such as the speed of a car captured once a second.
* Document upload should use Amazon S3 as a backend, with the potential to link to Dropbox or Google Drive for automatic file syncing.
* Allow files to be matched with Events. For instance, a GoPro video recording might cover several games and be related to all of them.
Synchronization and Merging
* Line up all data available according to time. Photos have timestamps, timestamp logs, video etc.
* Provide a dashboard to review an event. The coach might have one or more videos, synchronized by time, photos as they are available. A chart of certain data. Text or audio notes that they made at certain points in the event. This would be a user configurable dashboard, saved to the user, shareable to the team.
* Using the Phase 3 dashboard, coaches can mark certain period, perhaps one play in a game, and send the video.
* Allow users to comment on specific times in the debrief.
* Coaches can mark multiple timeperiods to review to create a full event debrief.
* Highlight/mark certain times based on information in all of the data available. For instance, using a timestamped log, every turn by a car could be tagged, or every pitch of a baseball [url removed, login to view] would allow the app to create a highlight reel of all events of a specific type.
* Allow users to filter and search through automatically tagged events to create a short list of instances to review and use for a debrief.
Mobile app to support data entry and creation during events.
The overarching goal is to make the gathering and analysis of performance data more efficient. This can either benefit teams by reducing the number of people needed to do analysis, or shorten the amount of time needed between the end of an event and a debrief.
25 freelancers are bidding on average $3247 for this job
I can create for you a software for management of team performance data Relevant Skills and Experience Waiting for your message to discuss further. Proposed Milestones $1833 USD - 1