Announcing Learn Go the Hard Way, Draft 1
Announcing Learn Go the Hard Way, Draft 1
You can read this email at https://learncodethehardway.com/emails/21-learn-go-the-hard-way-draft-1-released/
After much research and months of development I've finally created my new course for total absolute beginners that's free for anyone to read. When I get videos up they'll be as low cost as I can make them ('cause video's expensive).
You can start reading Learn Go the Hard Way now and I'm looking for feedback on it. This course is completed up to Exercise 30 where you finish a miniature version of a game called Rogue in the terminal.
If you'd like to get the videos when they drop--or just want to help me keep the course up free-to-read--then I'd appreciate a purchase. It's $15 right now, but might go up slightly depending on the size of the video content when I'm done. Buy Learn Go the Hard Way for $15
Why Go?
Let's be honest, Python has become nearly impossible to install reliably on many computers. JavaScript has constant problems with npm and I mean, let's be honest again and ask, "Does any language actually need 20 different for-loops?" No.
I tried so many different languages and even though I hate to admit it, Go is easier than blowing your nose or stubbing your toe in the dark. It's a dead simple language, that installs anywhere, that is chock full of useful kit, and that produces good enough results. Is it perfect? No, but it gets the job done and is easy for anyone to access, learn, and use and that's huge for someone just getting started.
Go has a lot going for it as a total newb language:
- Stupid easy to install on any computer they'll use.
- Stupid easy to deploy what they create to anywhere they want. No more jank
package.json
and whatever the Python package manager of the week wants. - Great standard library with everything you need, and if they need more then Go's package manager is nicely distributed and easy to use.
- Almost everything written in Go is easy to use, easy to study, and easy to change.
- Lots of helpful tools from
go fmt
to extensive advanced testing APIs.
I could go on, but you get it. Go is dumb, but not stupid. It works, anyone can learn it, and I'm digging it quite a lot for what Go does well: Automating stuff, making websites, and network servers.
Pro-Webdev and Epic Supporters
If you had purchased Learn JavaScript the Hard Way then your purchase is now called Pro-WebDev and includes all of the content up to Exercise 30. I have to finish the last module before bringing it into the Pro-WebDev course but you should have enough to get started.
Keep in mind that Pro-WebDev will be receiving a FREE upgrade to teach Go web development, in addition to JavaScript, HTML, CSS, Tailwind, and a simplified process anyone can follow. You'll also be getting a stack of free to use starter kits I'm developing so you can just get started making sites when you're done.
And Epic Supporters, you already have it. Thank you so much for your support.
Course Outline
Here's the outline for the whole course, with exercises 0-30 complete and 31-46 on the way. You can view the outline (and the whole course) online at https://learncodethehardway.com/courses/learn-go-the-hard-way/:
- 00: Introduction
- 01: Gearing Up
- 02: Important Basic Information
- 03: Building a First Program
- 04: How to Write Code
- 05: Basic Syntax: Packages
- 06: Basic Syntax: Variables
- 07: Basic Syntax: Types
- 08: Flow Control: If
- 09: Flow Control: for
- 10: Flow Control: switch
- 11: Basic Syntax: Functions
- 12: Flow Control: defer
- 13: Error Handling
- 14: Reading Input
- 15: Project: Adventure Game
- 16: The Type System: Structs
- 17: The Type System: Arrays and Slices
- 18: The Type System: Maps
- 19: The Type System: Closures
- 20: Pointers
- 21: struct and Methods: Basics
- 22: Struct and Methods: Type Assertions and Switches
- 23: Struct and Methods: Interfaces
- 24: Reading and Writing Files
- 25: The Amazing Struct Tags
- 26: Processing Data
- 27: Rogue Part 0: The Screen
- 28: Rogue Part 1: Mazes and Enemies
- 29: Rogue Part 2: Pathing Enemies
- 30: Rogue Part 3: Finishing Touches
- 31: cat
- 32: od
- 33: wc
- 34: tr
- 35: date
- 36: numfmt
- 37: sha2sum
- 38: stat Then du
- 39: head, tail, and split
- 40: sort, and uniq
- 41: cut
- 42: nohup
- 43: ls
- 44: curl or wget
- 45: grep
- 46: find
- 47: Conclusion
You can read the entire course right now at:
https://learncodethehardway.com/courses/learn-go-the-hard-way/
Future Plans
I'm going to finalize the last module, and I'll be doing most of the development on my Twitch so if you want to come watch and drop suggestions come along.
My Go Projects
I should also mention that I don't do courses on languages I don't use, and if you want to see what I've made in the last few months then check out my repo:
Feedback Welcome
If you find flaws, errors, mistakes, or things that don't work, then let me know. Just hit reply and I'll get it fixed.
Thank you so much,
Zed
More emails we've sent.
Announcing Learn Go the Hard Way, Draft 1
Learn Go the Hard Way, Draft 1 Available
UPDATE: Your JavaScript Purchase is Now Pro-WebDev
UPDATE: JavaScript is Now Pro-WebDev
LCTHW Newsletter #9: The Go Course Has Begun
LCTHW Newsletter #9: Go Course Has Begun
LCTHW Newsletter #8: Curse You Rogue Python
LCTHW Newsletter #8: Curse You Rogue Python