Skip to content

Latest commit

 

History

History
46 lines (28 loc) · 1.86 KB

README.md

File metadata and controls

46 lines (28 loc) · 1.86 KB

Portscan

Port scanning examples to teach Go concurrency and goroutine bounding.

New to Go? Start here

Browse the Go Tour

What to expect:

  1. Get a feel for the language syntax.
  2. Don't worry if some of it looks odd or complicated right now, you're just browsing.
  3. Relate as much of what you see to what you already know through other programming languages. Some concepts will just be syntax difference, others will be new.

Head on over to https://go.dev/tour.

Read Effective Go

What to expect:

  1. Now what you've done the tour, Effective Go will give you a foundation for building Go programs
  2. You'll learn everything from how Go code is organized to the idiomatic ways of handling errors
  3. It's okay to digest this information in bits and pieces--there's a lot there.

Head on over to https://go.dev/doc/effective_go

Build something!

If you've done the Go Tour and read part or most of Effectiive Go, you've got enough foundational knowledge to build something. The rest of your comfort with Go will come more easily through practice.

Ideas (in case you don't already have any):

  1. Build a Go equivalent to the wc shell command.
  2. Extend your wc CLI tool to support concurrent counting.
  3. Build a CLI-based currency converter.
  4. Repurpose your currency converter into a REST+JSON service.

ℹ️ Use Go by Example to quickly look up how to perform common tasks in Go.

Write Go like a Gopher

Use Go Code Review Comments to supplement the knowledge you've gained from reading Effective Go and building some tools. It's a collection of common expectations and idioms from Go code and contains a list of common mistakes to avoid.

Improve your craft