The-DevOps-Daily / The-DevOps-Daily/devops-daily
New feature: DevOps Challenges (learn by doing, submit PRs)
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 1.1k
- Forks
- 392
- Avg merge
- 5h 8m
- Merged PRs (30d)
- 121
Description
Overview
Add a new "DevOps Challenges" feature where users learn by completing real-world tasks and submitting solutions as PRs, rather than following step-by-step guides.
Concept
Unlike our guided exercises (step-by-step instructions), challenges give users an open-ended task and let them figure out the solution. This simulates real-world engineering work where you get a ticket, not a tutorial.
How it Works
- Each challenge has a template repository on GitHub (DevOps Daily org)
- User forks the template repo
- Template includes a README with the challenge brief, acceptance criteria, and hints
- User implements their solution and submits a PR to their fork
- Automated CI checks validate the solution (tests, linting, infrastructure checks)
- Optional: AI-powered code review on the PR
- User earns a badge/certificate for completed challenges
Challenge Examples
- "Fix this broken CI/CD pipeline" (template has a failing GitHub Actions workflow)
- "Containerize this application" (template has a raw Node.js app, no Dockerfile)
- "Set up monitoring for this service" (template has an app but no observability)
- "Write Terraform for this architecture" (template has an architecture diagram, no IaC)
- "Debug this Kubernetes deployment" (template has broken K8s manifests)
- "Secure this application" (template has intentional security issues)
- "Optimize this Docker image" (template has a 2GB image that should be 200MB)
Difficulty Levels
- Starter: single-tool tasks (write a Dockerfile, fix a YAML syntax error)
- Intermediate: multi-step tasks (CI/CD pipeline + deployment + monitoring)
- Advanced: architecture-level tasks (design and implement a full solution)
Technical Implementation
On devops-daily.com
- New content type:
content/challenges/*.jsonwith metadata (title, description, difficulty, repo URL, acceptance criteria) - Challenge listing page at
/challenges - Challenge detail page showing brief, hints, submission link
- Progress tracking (which challenges completed)
- Leaderboard (optional)
Template Repositories
- GitHub org repos named
challenge-* - Each repo has:
README.mdwith the challenge brief.github/workflows/validate.ymlthat tests the solutiontests/directory with acceptance tests- Starter code (the broken/incomplete thing to fix)
Automated Validation
- GitHub Actions in each template repo
- Runs when a PR is opened
- Checks if the solution passes all acceptance criteria
- Posts a comment with results (pass/fail per criteria)
Integration with Existing Features
- Challenges can reference related exercises, quizzes, and blog posts
- Completing a challenge could unlock achievements in the (future) DevOps Daily Pro platform
- Social sharing: "I completed the Kubernetes debugging challenge on DevOps Daily"
Implementation Phases
Phase 1: Foundation
- JSON schema for challenges
- Challenge listing and detail pages
- Create 3-5 template repos with CI validation
-
/create-challengeskill for content generation
Phase 2: Engagement
- Completion tracking (localStorage initially, then user accounts)
- Badges/certificates for completed challenges
- Social sharing
- Difficulty progression (unlock harder challenges)
Phase 3: Community
- Leaderboard
- User-submitted challenges
- AI code review on submissions
- Team challenges (group submissions)
Why This Matters
Tutorial hell is real. Engineers watch videos and follow guides but struggle when faced with a blank editor and a real problem. Challenges bridge that gap by providing the problem without the solution, forcing active learning.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by defining the schema in content/challenges/.json and mapping the /challenges and challenge detail pages. Then review the proposed challenge- template repositories, including README.md, .github/workflows/validate.yml, and tests/. Done requires the Phase 1 foundation: schema, listing and detail pages, 3–5 validated template repositories, and the /create-challenge skill.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, github-actions, json, kubernetes, node.js, terraform, typescript, yaml
- Domain
- ci-cd, content, devops
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100