Rethinking Merit Badge Scheduling — Proof of Concept
If you’ve ever been a unit leader staring at your screen at 6:00 AM on merit badge selection morning, frantically clicking through Scoutingevent trying to grab Swimming before it fills up — while also trying to schedule 30 other scouts without creating time conflicts — you know the pain.
The current approach works, and Scoutingevent does a great job with camp registration overall. But the merit badge scheduling piece has always felt like a free-for-all. Larger units are at a real disadvantage, and by the time you get one scout’s schedule sorted out, three activities you needed for the next scout are already full.
Possibly a better way.
I built a proof of concept that takes a different approach: preference-based auto-scheduling.
Instead of leaders competing for slots in real time:
-
Each scout submits ranked preferences
“I want Swimming 1st, Rifle Shooting 2nd, Robotics 3rd” -
An algorithm assigns everyone at once
(respecting capacity limits, time conflicts, and preference priority) -
A buddy system keeps scouts from the same unit together at the same program area and time block
-
Leaders can review results, lock schedules, make adjustments, or re-run as needed
The app also includes:
-
Visual schedule grids
-
A “Where Are My Scouts?” roster report
-
A fill option for scouts who want a full schedule but don’t have strong preferences for every block
This is not meant to replace Scoutingevent — it doesn’t touch authentication, registration, payments, or anything else that platform already handles well. This is focused entirely on showing that the scheduling piece might work better with an algorithm-driven approach.
The whole thing is open source and runs with Docker (one command to start). It’s pre-loaded with the 2026 camp schedule from my Council Summer Camp at Heritage Reservation in the Laurel Highlands Council, and includes sample data so you can try it out immediately:
https://github.com/scott-hiemstra/ScoutCampScheduler
Feedback is welcome.