Use the Unofficial Bash Strict Mode (Unless You Love Debugging)
The article is dangerously wrong in its discussion of IFS.What you should do to avoid the problem of mishandling spaces is use proper quoting (for i in "$@"; do ...), not changing IFS; setting IFS to \n\t will still break embedded tabs and newlines.In general, in bash scripts any of use of $ should always be between double quotes unless you have a reason to do otherwise.