A comprehensive, professional Go backend engineering curriculum that takes you from absolute beginner to production-ready engineer. This repository contains 12 weeks of intensive learning material including lessons, code examples, exercises, solutions, and real-world projects.
go_for_newbies/
βββ mkbook.py # Professional PDF generator script
βββ requirements.txt # Python dependencies
βββ Go_For_Newbies_2026.pdf # Created professional PDF book
β
βββ src/
βββ book_cover.png # Professional book cover
βββ font.ttf # Fraunces font for beautiful typography
βββ README.md # Book introduction
β
βββ 00_start_here/ # Chapter 1: Getting Started
βββ 01_fundamentals/ # Chapter 2: Go Fundamentals
βββ 02_core_go_language/ # Chapter 3: Core Go Language
βββ 03_structs_interfaces/
βββ 04_concurrency_deep_dive/
βββ 05_standard_library_mastery/
βββ 06_backend_development/
βββ 07_system_design_go/
βββ 08_real_world_projects/
βββ 09_advanced_patterns/
βββ 10_interview_preparation/
βββ 11_capstone_project/ # Chapter 12: Capstone Project
Each module contains:
- lesson.md - Core concepts and theory
- examples.go - Runnable code examples
- exercises.md - Practical challenges
- solutions.go - Reference solutions
- mini_project.md - Real-world project
| Week | Chapter | Topics |
|---|---|---|
| 1-2 | Getting Started + Fundamentals | Setup, variables, loops, functions, error handling |
| 3 | Core Go Language | Types, methods, packages, interfaces basics |
| 4-5 | Structs & Interfaces | OOP patterns, composition, polymorphism |
| 6-7 | Concurrency | Goroutines, channels, synchronization, patterns |
| 8-9 | Standard Library | IO, networking, HTTP, database, JSON |
| 10-11 | System Design & Backend | APIs, architectures, microservices, deployment |
| 12 | Real Projects + Interview Prep | Capstone project + technical interview questions |
- Python 3.7+
- Go 1.20+ (for running examples)
- 100MB disk space
A professional PDF book is already Created: Go_For_Newbies_2026.pdf
Just open it and start learning!
pip install -r requirements.txtpython mkbook.pyThis will create a professionally formatted PDF with:
- Beautiful typography using Fraunces font
- Proper markdown formatting (no broken characters!)
- All 12 chapters with code examples
- Table of contents
- Page numbers
- Professional book layout
β
Go_For_Newbies_2026.pdf Created (1.3 MB)
- Read the Lesson - Understand concepts and theory
- Study Code Examples - See practical implementations
- Complete Exercises - Apply what you learned
- Check Solutions - Compare your approach
- Build Mini Project - Create something real
Read concept β Type out examples β Solve exercises β Build project β Repeat
- Variables, constants, functions
- Error handling patterns
- Packages and modules
- Type system and interfaces
- Concurrency patterns (goroutines, channels)
- Struct composition and interfaces
- Memory management and optimization
- Building REST APIs
- Database integration
- Microservices architecture
- System design principles
- Real-world project combining all concepts
- Interview preparation
- Best practices and production deployment
β
12-Week Intensive Curriculum - Progressive skill building
β
Real-World Projects - Build practical applications
β
Code Examples - 300+ runnable Go examples
β
Hands-On Exercises - 100+ challenges with solutions
β
Professional PDF - Beautiful, book-like formatting
β
Custom Typography - Fraunces font throughout
β
No Unicode Issues - Perfect character handling
β
Interview Prep - Dedicated preparation section
The mkbook.py script creates a professional PDF with:
- All heading levels (# through ####)
- Bold (text) and strikethrough (
text) - Inline code and code blocks
- Lists (bullet and numbered)
- Blockquotes
- Horizontal rules
- Custom Fraunces font for typography
- Proper code block highlighting
- Justified text alignment
- Consistent spacing and margins
- Page numbers
- No broken unicode characters
- Perfect special character escaping
- All Go syntax preserved perfectly
- Professional PDF output
# Generate PDF with default settings
python mkbook.py
# Output: Go_For_Newbies.pdf (1.3 MB)START (Week 1)
β
Beginner: Variables, loops, functions, error handling
β
Mid-level: Interfaces, concurrency, HTTP APIs
β
Advanced: Microservices, clean architecture, production systems
β
PRODUCTION READY (Week 12)
You'll be able to:
β
Build production-grade REST APIs
β
Design and implement concurrent systems
β
Architect scalable microservices
β
Pass technical interviews at top companies
β
Deploy real Go services to production
β
Optimize Go applications for performance
β
Implement best practices and clean code
Foundation and environment setup
Core language features and basic patterns
Advanced language features and best practices
Object-oriented programming in Go
Goroutines, channels, and synchronization patterns
IO, networking, HTTP, database, JSON handling
Building production REST APIs
Microservices, architectures, and deployment
Practical applications and integrations
Performance optimization and advanced techniques
Technical interview questions and strategies
Comprehensive real-world project
- Language: Go 1.20+
- PDF Generation: Python 3.7+ with ReportLab
- Typography: Fraunces font
- Format: Markdown for content
- Start with Chapter 1 in the PDF or README
- Follow the 12-week roadmap
- Complete all exercises before moving forward
- Build each mini-project
- Review solutions after attempting exercises
- Generate the PDF for distribution
- Use modules as weekly content
- Assign exercises as homework
- Review solutions in class
- Have students build projects collaboratively
- Use the PDF as a Go reference guide
- Look up specific topics using table of contents
- Review code examples for syntax patterns
- Check solutions for best practices
Edit mkbook.py to:
- Change colors (PRIMARY_COLOR, SECONDARY_COLOR, etc.)
- Modify fonts (BODY_FONT, CODE_FONT)
- Adjust margins and spacing
- Add custom styling
reportlab>=4.0.0
Install with:
pip install -r requirements.txt- Official Go Documentation: https://golang.org/doc
- Go Effective Style: https://golang.org/doc/effective_go
- Standard Library: https://pkg.go.dev/std
- Go Community: https://golang.org/community
- Tech with Tim (some concepts inspired by his Golang tutorial): https://www.youtube.com/watch?v=V-lI7AmusGs&t=2s
This curriculum is provided as-is for educational purposes.
To improve this curriculum:
- Test all examples and exercises
- Report broken links or incorrect code
- Suggest additional topics or projects
- Improve explanations and clarity
- Review the README in each module for specific help
- Check solutions when stuck on exercises
- Reference the Go documentation for language details
- Review real-world project examples for patterns
- Install Go 1.20+
- Install Python 3.7+
- Run
pip install -r requirements.txt - Generate PDF with
python mkbook.py - Start with Chapter 1
- Complete one chapter per week
- Build all mini-projects
- Do all exercises before checking solutions
- Complete the capstone project
- Review interview prep section
Happy Learning! Let's master Go together. π
Go for Newbies, 2026 - From Beginner to Production-Ready Engineer