W3bbo wrote:whilst practically anyone could do civil engineering using nothing more than on-the-job training, a formal education embodies that person with a lot more knowledge that can be applied in many ways.
The thing is, on the job training is going to show someone what they need to know, a formal education is going to focus on some things that someone may never again use in their entire life.
1. I learnt Z at University, and whilst it was just a grounding in formal methods, I have in the last 10 years used exactly 0 formal methods exactly 0 times.
2. I learnt about the web/internet on the job (partly because it wasn't really taught at Uni when I was there), and I learnt what I needed to know to do the job which involved lots of RFCs and lots of trial and error and learning from my own mistakes.
Which of the above (both true) facts makes me more valuable to an employer?
All this makes me wonder why I (personally) would even need a C.S. degree at this point in my life...I have 20+ years of "development" experience in several languages (low level all the way up to scripting languages), a decent amount of "business experience",
and I can pull virtually any University level textbook through the local library system (and understand most, if not all of it). I received a degree in a completely different field, and I suspect most of the courses I took had little real world application/value
to them anyway, despite my best efforts at picking meaningful courses.
But yes, there is a significant difference between putting things together in Access and architecting a reporting system or a game engine.