The modern Internet has drastically lowered that barrier and "non-commercial" is slightly less of an issue, as you no longer need a middle man handling the shipping. However servers still don't run for free and non-commercial creates the problem of defining what commercial use actually is. Is having ads on your page enough to make it commercial use? What if the ads aren't under your control, but automatically inserted by the hoster (Instagram, Youtube, Reddit, etc.)? Donations to keep the servers running can count as commercial and all that. It gets really tricky to draw the line and most people will just avoid anything with a "non-commercial" clause.
Meanwhile attribution and sharealike are relatively harmless. Many Free Software licenses have required similar. They tell you exactly what rules you have to follow and don't hinder the distribution or use of it.
I'd more generally point to RMS' writings from the nineties and before. They're prophetic. He gets dismissed, but it's almost scary how much he predicted correctly 30-40 years ago, and how closely open source (which started as a push-back against free software) eventually converged to what he wrote back then.
NC obviously violates the definition of Open Source. As far as I can tell it is a less well specified version of the Commons Clause license.