Skip to content

Adaptive Go learning playground: a diagnostic-driven curriculum with progressive exercises, table-driven tests, progress tracking, and milestone projects (CLI, REST, concurrency) — designed to reduce AI-dependence and build real competency.

Notifications You must be signed in to change notification settings

warlock016/Go-Exercises

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Go Learning System - Your Path to Mastery

Welcome to your personalized Go tutoring system! This curriculum is designed to build genuine programming competency through deliberate practice and adaptive learning.

🎯 Your Learning Journey

Current Level: Transitioning from Beginner → Junior Gopher Time Commitment: 20 hours/week (full-time dedication) Target: Mid-level Go proficiency in 16-24 weeks

📚 Curriculum Structure

Each module contains 15-17 progressive exercises ranging from simple to complex:

Phase 1: Foundation (Weeks 1-8)

  • 00-diagnostic/ - Initial skill assessment ⬅️ START HERE
  • 01-fundamentals/ - Variables, types, control structures
  • 02-data-structures/ - Arrays, slices, maps, structs
  • 03-functions-methods/ - Functions, methods, receivers
  • 04-error-handling/ - Error values, wrapping, custom errors
  • 05-testing/ - Unit tests, table-driven tests, benchmarks

Phase 2: Application (Weeks 9-16)

  • 06-interfaces/ - Interface design and composition
  • 07-packages-modules/ - Code organization, modules, packages
  • 08-http-apis/ - HTTP servers, routing, middleware, JSON

Phase 3: Concurrency (Weeks 17-24)

  • 09-concurrency/ - Goroutines, channels, sync primitives, patterns

Phase 4: Advanced (Weeks 25-32)

  • 10-databases/ - SQL integration, transactions, migrations
  • 11-performance/ - Profiling, optimization, memory management

Milestone Projects

  • projects/01-cli-tool/ - Week 4 capstone
  • projects/02-rest-api/ - Week 8 capstone
  • projects/03-concurrent-processor/ - Week 12 capstone
  • projects/04-microservice/ - Week 16 capstone

🚀 Getting Started

Step 1: Complete Diagnostic Assessment

cd 00-diagnostic
cat README.md  # Read instructions

This 30-60 minute assessment will:

  • Identify your current skill level
  • Reveal knowledge gaps
  • Create your personalized learning path

Step 2: Review Your Results

Check PROGRESS.md after completing diagnostic to see:

  • Your strengths and areas for improvement
  • Recommended starting point
  • Customized exercise sequence

Step 3: Begin Daily Learning

Follow the 4-hour daily structure:

  • Hour 1: Review previous concepts (spaced repetition)
  • Hours 2-3: New concept + guided exercises
  • Hour 4: Independent practice + journal reflection

📊 Progress Tracking

  • PROGRESS.md - Your detailed skill metrics and advancement
  • JOURNAL.md - Daily reflections and learning insights
  • Each exercise directory contains progress.txt for module-specific tracking

🎓 Learning Principles

Anti-AI-Reliance Protocol

To build genuine competency, AI usage is structured in phases:

Weeks 1-4 (Current Phase):

  • ❌ No AI for code generation
  • ✅ Documentation and Go.dev lookup allowed
  • ✅ Compiler error interpretation help

Weeks 5-8:

  • ✅ AI for debugging hints after 20min independent attempt
  • ✅ Must explain all code in your own words

Weeks 9+:

  • ✅ Gradual AI integration
  • ✅ Mandatory code explanations with every submission

Every Exercise Requires:

  1. ✅ Working code that passes all tests
  2. EXPLANATION.md with line-by-line breakdown
  3. ✅ Alternative approaches you considered
  4. ✅ Why you chose your specific implementation

Spaced Repetition

  • Day 1: Learn new concept
  • Day 2: Practice exercises
  • Day 4: Quick review
  • Day 7: Combined exercise
  • Day 14: Refresher
  • Day 30: Integration with new concepts

🏆 Advancement Criteria

Beginner → Junior (Target: Week 8)

  • ✅ Complete 15+ exercises per module with >75% first-attempt accuracy
  • ✅ Build CLI application independently
  • ✅ Explain all code without references
  • ✅ Debug simple errors within 5 minutes
  • ✅ Write basic tests for your code

Junior → Mid-Level (Target: Week 16)

  • ✅ Complete HTTP API project with >70% test coverage
  • ✅ Review code and identify issues
  • ✅ Implement design patterns appropriately
  • ✅ Handle errors consistently
  • ✅ Write comprehensive test suites

Mid-Level → Senior (Target: Week 24-32)

  • ✅ Design system architecture independently
  • ✅ Implement concurrent systems without race conditions
  • ✅ Optimize code using profiling
  • ✅ Make informed trade-off decisions
  • ✅ Write production-ready code

📈 Weekly Milestones

Week 1: Diagnostic + Fundamentals foundations Week 2-3: Data structures mastery Week 4: CLI Tool Project (Capstone 1) Week 5-7: Error handling, testing, interfaces Week 8: REST API Project (Capstone 2) Week 9-11: HTTP and web services Week 12: Concurrent Processor Project (Capstone 3) Week 13-15: Concurrency deep dive Week 16: Microservice Project (Capstone 4)

🛠️ Resources

The resources/ directory contains:

  • Curated articles and documentation links
  • Common Go pitfalls and how to avoid them
  • Worked examples with explanations
  • Spaced repetition review sets

💡 Tips for Success

  1. Write code daily - Consistency beats intensity
  2. Explain your thinking - If you can't explain it, you don't understand it
  3. Make mistakes - They're your best learning opportunities
  4. Debug systematically - Don't just restart; understand the error
  5. Review regularly - Spaced repetition prevents forgetting
  6. Build projects - Apply concepts in real contexts
  7. Ask "why" - Understand the reasoning behind patterns

🆘 When You're Stuck

  1. Read the error message carefully - It usually tells you what's wrong
  2. Check the exercise README - Hints are provided
  3. Review the concept documentation - Linked in each module
  4. Attempt for 20 minutes - Struggle is part of learning
  5. Use debugging techniques - Print statements, delve debugger
  6. Consult Go.dev - Official documentation is excellent
  7. After genuine attempt - Ask for guidance (post-Week 4)

📝 Journal Prompts

After each session, reflect in JOURNAL.md:

  • What concept did you learn today?
  • What was challenging? Why?
  • What "clicked" or made sense?
  • How would you explain this to someone else?
  • What will you review tomorrow?

Remember: The goal isn't to accumulate hours or complete exercises quickly. The goal is to build deep understanding through thoughtful, deliberate practice. Quality over quantity, always.

Let's begin! Head to 00-diagnostic/ to start your assessment. 🚀

About

Adaptive Go learning playground: a diagnostic-driven curriculum with progressive exercises, table-driven tests, progress tracking, and milestone projects (CLI, REST, concurrency) — designed to reduce AI-dependence and build real competency.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages