Joyful Programming

Understand Your App - From Zero to Incident Superhero

Apply now

free · takes a few minutes

level
intermediate
language
english
you'll need
Laptop · No Rails Experience · 2-3+ Years Experience
the programme
1 sprint · 22 tasks
who reviews you
1 mentor from Joyful Programming

What you'll build.

1 sprint · 22 tasks · real sprint titles from the program

Fix Pattern Preview Defect 22 tasks
  1. Set Up Tools
  2. Trigger Defect
  3. Steps to Observable Software
  4. Cycle 1 / Step 1a - Question - Hypothesise
  5. Cycle 1 / Step 1b - Question - Ask
  6. Cycle 1 / Step 2 - Define Data
  7. Cycle 1 / Step 3a - Build - Add Structured Logging
  8. Cycle 1 / Step 3b - Build - Ingest Logs Into Dynatrace
  9. Cycle 1 / Step 4 - Use Logs
  10. Cycle 1 / Step 5 - Reflect
  11. Cycle 2 / Step 3 - Build
  12. Cycle 2 / Step 4 - Use
  13. Cycle 2 / Step 5 - Reflect
  14. Cycle 3 / Step 1 - Question
  15. Cycle 3 / Step 2 - Define Data
  16. Cycle 3 / Step 3 - Build
  17. Cycle 3 / Step 4 - Use
  18. Cycle 3 / Step 5 - Reflect
  19. Find Defect
  20. Fix Defect
  21. Summary - What You've Learned
  22. Next Steps
“Hello! I'm inviting you to my brand new observability course. So, you want to understand your app better, to debug issues faster, right? Right. This course teaches a systematic process that finds root causes in 15-20 minutes using data instead of guesswork. You'll debug a real Rails app bug through three complete cycles: * Add structured logging with targeted attributes * Query using filters and GROUP BY to reveal patterns * Find the root cause (missing landscape orientation config) in minutes The Five Steps to Observable Software framework works with any observability tool - Datadog, Dynatrace, New Relic, or basic logging. You'll learn to: * Form testable hypotheses * Add instrumentation in <10 minutes * Query for correlations generic logs miss * Stop reading code randomly hoping to spot issues Includes three bonus examples (API timeouts, batch jobs, cache issues) showing how the framework applies across different problems. This is the systematic approach I use daily. You can apply it tomorrow to your own bugs. John Gallagher Principal Engineer II Dynatrace / Joyful Programming”
JG

John · Principal Engineer II

How you'll work.

In sprints. A sprint is a set of tasks with clear acceptance criteria: you build each one and ship it as a submission.

build → submit → get reviewed → next task

Your work gets read. A mentor from Joyful Programming reviews what you ship - and so do cohort-mates walking the same sprint.

Live sessions run on the cohort's calendar. Real time with the crew.

You're never solo. Your cohort has a shared room, and a help room for when you're stuck. Sprints unlock on the cohort's shared beat - the pace inside each one is yours.

sprint 3 · your submission · 2 reviews

+ public class BoardService

+ Task<Board> Create(BoardDto dto)

O

Ola Classmate

Took me two tries to get this split right - yours is cleaner than mine.

reviewed

T

Tomek Mentor

Clean split between the service and the controller. One naming nit - see my note, then ship it.

approved

What you'll be able to do.

skills you gain

Structured logging implementation OpenTelemetry configuration Dynatrace log analysis Systematic debugging methodology Production incident response Rails observability best practices.
  • Set up structured logging in Rails using OpenTelemetry conventions

  • Integrate logs with Dynatrace for powerful analysis and visualization

  • Apply the 5 Steps To Observable Software process to any Rails app

  • Debug production incidents systematically instead of guessing

  • Transform cryptic error messages into crystal clear understanding of defects

The people who review your work.

Mentors from Joyful Programming - the people on the other side of your reviews, and the hosts of the live sessions.

JG

John Gallagher

Principal Engineer II @ Dynatrace

John is the founder of Joyful Programming and author of "Software Design Simplified." With 14+ years of Rails experience, John specializes in helping engineering teams debug production issues 20x faster. John has delivered observability workshops at conferences like Warsaw Ruby Conference and has guided hundreds of engineers through implementing structured logging with OpenTelemetry, Dynatrace and other observability tools. His practical approach combines deep technical expertise with real-world business impact—he's obsessed with delivering massive business value while keeping code simple. As a recognized observability expert, John has mentored engineers across different programming languages and system architectures. His students consistently praise his patient, hands-on teaching style that makes complex concepts click immediately. Whether you're drowning in cryptic logs or spending hours on production incidents, John's proven methods will transform how you debug Rails apps. Based in Belfast, John runs live coding sessions and writes a popular newsletter on software design principles. His mission: turn every engineer into a debugging superhero who can confidently tackle any production crisis.

LinkedIn ↗

Where you should be starting from.

Everything below is assumed on day one - the sprints build on it rather than teaching it.

  • Laptop
  • No Rails Experience
  • 2-3+ Years Experience

Ready when you are.

The cohort started October 6, 2025. Free, start to finish.

  1. 01

    You apply

    A few details about you - no CV, no essay.

  2. 02

    You're in

    No screening here - your place is confirmed the moment you apply.

No cohort open right now.

Join free and you'll be here - with the sprints, the rooms and the crew - the day the next one opens.

Join free

free · takes a few minutes