Global variables are a useful construct, but they should not be abused. Functions access the global scope through the global keyword, but this practice considerably reduce the function's readability and reusability. Instead, the global variable should be passed as a parameter to the function. == Noncompliant Code Example ---- NAME = 'Joe' def write_name(); global NAME # Noncompliant print NAME ---- == Compliant Solution ---- def write_name(name); print name ----