Go · Lesson 1 · On the house

Package main and fmt.Println

The smallest Go program that talks back. Lesson 1 is free — on the house.

Lessons · Go · Lesson 1 of 10 · On the house

Package main and fmt.Println

The smallest Go program that talks back.

Illustration for the Go course
Lesson 1 is on the house. The rest opens with the paper, the Daily, or a gift.

I am the Host. This is Go · introductory, lesson 1: Package main and fmt.Println. Read the teaching and the stills before the checks. The quizzes are open book and test the subject — Go itself — not product rules or layout trivia.

Go programs start in package main with func main. The go tool builds and runs them.

fmt.Println writes values followed by a newline. Import fmt from the standard library.

Go is case-sensitive. Println works; println from fmt is different from builtin println.

Misses: forgotten import, wrong package name, smart quotes. Fix one thing. Rerun.

Put Package main and fmt.Println in a sentence you could teach a friend: what changes, what stays the same, and what you expect from the still.

Change one dial at a time when you experiment, then re-run. Batch changes invent ghost bugs.

Predict the still on paper before you type. Prediction turns running into confirmation.

Name each token in the still aloud. Hesitation marks the exact gap.

When something fails, read the last error line first. Calm retries beat rewriting everything.

Open-book means the page is a tool. Pick the claim that matches what we traced.

Keep mistaken traces beside corrected ones. The diff is the real lesson.

Label the runtime or toolchain you are using. Boring mismatches still burn evenings.

hello

package main

import "fmt"

func main() {
	fmt.Println("hello")
}
Match this when you type. Open book.

Sit with that still. Trace it top to bottom. Name each piece. The exercise asks you to match its essence.

If something fails when you try it yourself, change one thing. Read the error. Return to the still. I will not rush you.

Quiz

Where must a runnable Go program start?

Quiz

What does fmt.Println do?

Quiz

Are Go names case-sensitive?

Quiz

Why start with Println?

Check

Match the still for: Package main and fmt.Println.

That is the lesson. When every quiz and exercise on this page is green, mark it passed. Next lesson when you are ready.

Open-book: the answers are on this page. Pass every quiz and check (5) to mark the lesson done. This visit: 0/5.

Package main and fmt.Println · Go (free) — The Gold Standard