The intuitive reasoning has been explained in the blogpost:
If our goal is Prediction, this will cause a definite bias. And worse,
it will be a permanent bias, in the sense that we will not have
consistent estimates as the sample size grows.
So, arguably the problem of (artificially) balanced data is worse than
the unbalanced case.
Balanced data are good for classification, but you obviously loose information about appearance frequencies, which is going to affect accuracy metrics themselves, as well as production performance.
Let's say you're recognizing hand-written letters from English alphabet (26 letters). Overbalancing every letter appearance will give every letter a probability of being classified (correctly or not) roughly 1/26, so classifier will forget about actual distribution of letters in the original sample. And it's ok when classifier is able to generalize and recognize every letter with high accuracy.
But if accuracy and most importantly generalization isn't "so high" (I can't give you a definition - you can think of it just as a "worst case") - the misclassified points will most-likely equally distribute among all letters, something like:
"A" was misclassified 10 times
"B" was misclassified 10 times
"C" was misclassified 11 times
"D" was misclassified 10 times
...and so on
Without balancing (assuming that "A" and "C" have much higher probabilities of appearance in text)
"A" was misclassified 3 times
"B" was misclassified 14 times
"C" was misclassified 3 times
"D" was misclassified 14 times
...and so on
So frequent cases will get fewer misclassifications. Whether it's good or not depends on your task. For natural text recognition, one could argue that letters with higher frequencies are more viable, as they would preserve semantics of the original text, bringing the recognition task closer to prediction (where semantics represent tendencies). But if you're trying to recognize something like screenshot of ECDSA-key (more entropy -> less prediction) - keeping data unbalanced wouldn't help. So, again, it depends.
The most important distinction is that accuracy estimate is getting biased itself (as you can see in the balanced alphabet example), so you don't know how the model's behavior is getting affected by most rare or most frequent points.
P.S. You can always track performance of unbalanced classification with Precision/Recall metrics first and decide wether you need to add balancing or not.
EDIT: There is additional confusion that lies in estimation theory precisely in the difference between sample mean and population mean. For instance, you might know (arguably) actual distribution of English letters in the alphabet $p(x_i | \theta)$, but your sample (training set) is not large enough to estimate it correctly (with $p(x_i | \hat \theta)$). So in order to compensate for a $\hat \theta_i - \theta_i$, it is sometimes recommended to rebalance classes according to either population itself or parameters known from a larger sample (thus better estimator). However, in practice there is no guarantee that "larger sample" is identically distributed due to risk of getting biased data on every step (let's say English letters collected from technical literature vs fiction vs the whole library) so balancing could still be harmful.
This answer should also clarify applicability criteria for balancing:
The class imbalance problem is caused by there not being enough
patterns belonging to the minority class, not by the ratio of positive
and negative patterns itself per se. Generally if you have enough data, the "class imbalance problem" doesn't arise
As a conclusion, artificial balancing is rarely useful if training set is large enough. Absence of statistical data from a larger identically distributed sample also suggests no need for artificial balancing (especially for prediction), otherwise the quality of estimator is as good as "probability to meet a dinosaur":
What is the probability to meet a dinosaur out in the street?
1/2 you either meet a dinosaur or you do not meet a dinosaur