Two opposing views, but they think the argument is both in their favour.
There is also a massive backlash against universities in the UK at the moment. I am seeing many 'apprentice' software developers, and freelance developers skipping university. They tell me they know more than the average university graduate. So I ask them about complexity? Nope. Predicate Logic? Nope. These are things taught in even the lowest polytechnic school and they don't know them. They don't know the bounds of their own ignorance because they think cs is just knowing a few programming languages, whipping up a few apps and websites. They know more languages the average graduate? Maybe. Can they do software engineering? The easy business stuff. Do they know cs? No. I think they have never been exposed to cs and don't how deep it goes.
I've seen the accredited software developer apprenticeship curriculum and it's mostly java and design patterns.
I think the focus on apprenticeships at the moment is creating a generation of software developers who don't know what NP-Complete means.
Computer science is not whipping up applications with fancy design patterns, that's why you're better than them. Give them a few years and their cs background + Software engineering experience will begin to shine.