20 Go programming excercises in 20 days
I've been picking up Go and recently discoverd Jon Calhoun's Gophercises. If you're not familiar, it's a free course containing some really interesting programming excercises along with solutions in the Go programming language. The projects are nontrivial and get right into concepts like
- Channels
- Mutexes
- Goroutines
- Functional Options
- Chaining Interfaces
- Various parts of the standard library (io, time, and many other packages)
- Reading input from the command line
I was able to learn goroutines, channels, and a bunch of standard library stuff from just the first project for example.
Good project-based learning material is hard to come by. To make the most of the course, I've decided to complete it as a 20 day challenge. Specifically, I'll try to complete one gophercise per day for the next 20 days according to the schedule/checklist below.
- Quiz Game - 9/15/22
- URL Shortener - 9/16/22
- Choose Your Own Adventure - 9/17/22
- HTML Link Parser - 9/18/22
- Sitemap Builder - 9/21/22
- Hacker Rank Problem - 9/21/22
- CLI Task Manager - 9/22/22
- Phone Number Normalizer - 9/25/22
- Deck of Cards - 9/27/22
- Blackjack
- Blackjack AI
- File Renaming Tool
- Quiet HN
- Recover Middleware
- Recover Middleware w/ Source Code
- Twitter Retweet Contest CLI
- Secrets API and CLI
- Image Transform Service
- Building Images (png & svg)
- Building PDFs
As always it's about the journey and not the destination. This is a pretty ambitious pace but I'm thinking I can make it happen. Either way I'm looking forward to learning from successes and failures! Check here for updates and feel free to reach out if you're also working through Gophercises!