Think about the time you learned to program. You wrote little programs that accepted simple input, did a little processing, and produced some output. Life was good. You could hold the entire program in your head.
You understood every line of code. Debugging and troubleshooting was easy. For example, consider a program to convert temperatures between Celsius and Fahrenheit:
package main
import (
"fmt"
"os"
"strconv"
)
func celsius2fahrenheit(t float64) float64 {
return 9.0/5.0*t + 32
}
func fahrenheit2celsius(t float64) float64 {
return (t - 32) * 5.0 / 9.0
}
func usage() {
fmt.Println("Usage: temperature_converter <mode> <temperature>")
fmt.Println()
fmt.Println("This program converts temperatures between Celsius and Fahrenheit"...