A major source of off-by-one errors for me has been that there is no equivalent to the Python "reverse" keyword. Forward loops are simple: for i := range s but the reverse is for i := len(s)-1; i >= 0; i--.
Please consider adding a revrange keyword or something similar.