One of the kids’ soccer coaches sent over a list of YouTube drill videos to practice at home. A list of links is hard to use from a phone, and it doesn’t tell you which one to pick when you want to work on your weak foot, so I turned it into a small drill finder:
Get Your Touches at sean.horgan.net/drills
- Find a drill by skill: dribbling, passing, shooting, attacking, defending, weak foot, first touch, ball mastery, juggling and turning, with a count on each
- Dedicated videos first: pick a skill and the videos that are all about it are listed first, ahead of general workouts that only touch on it, so the kids don’t sit through a ball mastery session looking for the weak-foot part
- Filter by players and gear: solo or with a partner; just a ball, cones, a wall or rebounder, or a goal
- Share a filtered view: the filters live in the URL, so /drills?skill=weak-foot&players=solo is a link you can send
- Find new drills: every skill links to a YouTube search, and any skill without a dedicated video is flagged
How the extra drills were picked
The coach’s list had nothing for shooting or defending, and weak foot only came up inside general ball mastery workouts. To fill those gaps I searched YouTube and shortlisted videos dedicated to each skill, then ranked them by likes and like-to-view ratio (YouTube has no reviews, so that is the closest signal to “well reviewed”), preferring established coaching channels and family-safe videos. Whether a drill is solo or needs a partner, and what gear it uses, was checked against each video’s preview frames rather than guessed from the title. Juggling was added later the same way, ordered from the basics for kids through to exercises for players who can already keep the ball up.
Adding a drill
The list lives in quartz-site/data/soccer-drills.json, one entry per video: its YouTube id, a short name the kids will recognize, the skills it practices, focus (the skills the whole video is about, if any), players (solo, partner or both), the gear it needs and a one-line note. The thumbnail comes from YouTube, so nothing else needs to change. Push and the page rebuilds.