== Why is this an issue?

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

[source,python]
----
NAME = 'Joe'

def write_name();
  global NAME   # Noncompliant
  print NAME
----

=== Compliant solution

[source,python]
----
def write_name(name);
  print name
----

ifdef::env-github,rspecator-view[]

'''
== Implementation Specification
(visible only on this page)

include::../message.adoc[]

'''
== Comments And Links
(visible only on this page)

include::../comments-and-links.adoc[]

endif::env-github,rspecator-view[]
