Skip to content

Utils to streamline attendee/speaker/staff reporting stats, and prior responses to help reduce work to PSF.

License

Notifications You must be signed in to change notification settings

pybay/pybay-post-conf-psf-report-helpers

Repository files navigation

pybay-post-conf-psf-report-helpers

Utils to streamline attendee/speaker/staff reporting stats for the PSF post-event survey.

Project Structure

├── src/                        # Scripts
│   └── fetch_current_survey.py # Download survey questions → draft response file
├── results-and-reports/        # Output files (draft responses, analysis results)
├── data-input-has-PII-not-committed/  # Source data (Pretix, Sessionize) - gitignored
└── docs/                       # Reference documentation

Draft Response File

The draft_response_YYYY.txt file serves three purposes:

  1. Working document - edit over multiple days
  2. Copy/paste source - easy to select each answer
  3. Question reference - see the actual question to ensure your answer matches

Workflow

This may take multiple sessions, so the process is designed to save work as you go.

  1. Get current year event survey link from PSF
  2. Run src/fetch_current_survey.py to download questions and create draft response
  3. Edit and save the draft file as you answer questions
  4. Download source data from Pretix/Sessionize for analytics questions (e.g. attendee demographics)
    • Note: These files are gitignored. Do NOT save PII into text files.
  5. Run Pandas scripts for demographic analysis (may need modification if questions change)
  6. Copy Pandas output into appropriate response sections
  7. When done, open the survey URL and copy/paste responses from draft file
  8. Commit changes and push to PyBay GitHub repo

Usage

# Generate a draft response file from a Google Form URL
python src/fetch_current_survey.py "https://docs.google.com/forms/d/e/.../viewform"

# Output goes to results-and-reports/draft_response_YYYY.txt by default
# Or specify a custom output path:
python src/fetch_current_survey.py "https://docs.google.com/forms/d/e/.../viewform" -o results-and-reports/draft_response_2025.txt

The script dynamically extracts questions from the form, so if PSF updates their questions year-over-year, just run with the new URL.

Planned Feature: Prior Year Response Matching

Use rapidfuzz to reduce manual work by pre-populating responses from prior year:

  1. Load prior year's results-and-reports/draft_response_2024.txt
  2. Parse each ## section to get question + response pairs
  3. For each current year question:
    • Fuzzy match against prior year questions using rapidfuzz
    • If score >= 95% AND question is not analytics-specific (Attendees, Speakers/Coaches, Staff)
    • Pre-populate with prior response, prefixed with:
      [DRAFT - COPIED FROM 2024 - REVIEW AND UPDATE]
      

This saves time on recurring text responses like Venue (if same location), Sponsors (if similar), Retrospective boilerplate, etc.

About

Utils to streamline attendee/speaker/staff reporting stats, and prior responses to help reduce work to PSF.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages