So, I have two engineering degrees, but not a CS degree, so I'm kind of an intermediate case between the CS degree and the self-taught programmer, but closer to the latter.
The only one of the advantages listed in this article that seems true to me, is the Prestige of having a CS degree. There are plenty of employers who will require a degree, and a few which prioritize a CS degree.
In general, CS majors spend their first few years unlearning all of the theoretical constructs they were taught in college. 90+% of the programming which needs to be done in the real world is CRUD with a few special features. Rarely are those special features related to anything taught in school, they are usually horrible hacks that are related to the legacy system your new system has to connect to.
There are, of course, exceptions, and for a few employers a CS degree is a big advantage. But, unfortunately, much of the teamwork and communication skills which the author lists s advantages of a CS degree, are again something where the CS major has to get over their schooling, and learn to communicate in the language that everyone else on the team understands.
Which, of course, nearly every CS major learns to do, they're smart people. But the only thing they really get out of the CS degree that matters in the real world, is the prestige, in 90+% of cases.