They make it more difficult to reason about your program since an apparently unrelated function call (or other piece of code) could change a global variable. This increase in coupling across various parts of your program also makes it harder to reuse parts that may otherwise be separate.Originally Posted by ulillillia