Getting a Degree

Perry de Havilland, he of Samizdata and hippo worship, makes the following comment under my recent post on Oxbridge:

Frankly I think most people have no good reason to go to any university, unless they are in a STEM field, let alone go Oxbridge.

I’d probably agree with that. There is definitely an argument that the study of subjects with no commercial value, e.g. ancient Greek, archaeology, philosophy, etc. is worth doing simply for the betterment of humanity. I believe it is worth having scholars poring over the Dead Sea scrolls to try to figure out what they tell us about the world back then, just for the sake of knowing. I’d even go so far as to say such activities could be state-funded: hell, when you look at the utter shite we spend money on, genuine expanding human knowledge via genuine research looks at lot easier to stomach even if you’re against state-funding in principle.

However, these activities should be reserved for the absolute brightest people among us, those freak geniuses whose brainpower is needed to push the boundaries of knowledge and discovery further back, and who will stick to their task regardless of the sacrifices it asks of them (such as not having a life).

The problem comes when some idiot decides that anyone and everyone should be allowed to study subjects with no commercial value (or, indeed, any value) at taxpayer expense. The problem is equally bad if people are actively pressured to study garbage at their own expense, rather than doing something more useful. That’s how we end up with 25 year olds with degrees in Media Writing unable to find a job of any kind whatsoever. As Bloke on M4 says in response to Perry:

There’s a great video on YouTube of filmmakers like Terry Gilliam, Werner Herzog and John Carpenter telling people to just make films, not to go to film school.

I’d say that if you want to be a programmer, the best way to learn is install Visual Studio Community, Unity 3D, get a Pluralsight subscription ($30/month) and build a game or an app. Make something you want to make. Something you can try and fail at. Fill in gaps with Google, clubs, forums etc. The only reason to get a degree is to get your foot in the door.

The danger with this approach, although it is sensible, is that large organisations are obsessed with credentials – they’d rather employ someone in HR with no experience and a psychology degree than someone who’s managed people for 20 years but has no formal qualifications.

I’ve written before about how I think bright, young men will begin to shun big organisations and set up on their own, working in 2-5 person outfits, feeding off the bigger players. We might find they start avoiding university, too.

Share

35 thoughts on “Getting a Degree

  1. An eighteen year old has been advised by teachers whose life experience is that they needed a degree for their jobs, and.hence advise their pupils to get a degree.
    Also advising are parents who were brought up in a time when degrees were rare and hence valuable.
    Perhaps if university prospectuses had to include estimated earnings arising from the courses on offer loans could be made on the basis of those estimates and the university liable should their estimate be optimistic .
    This would give universities an incentive to look at what courses they offer and be selective as to who is accepted. It appears at present that their only incentive is to get as many students in as possible.

  2. Pat +1.

    I would also add that many teachers have come straight from Uni, and have no experience of the world of work.

  3. And this is why I like Switzerland, where the education system is very much more vocational. At all levels. So uni is restricted to those who will really benefit from it, and all these Meeja Studies types who ultimately end up e.g. working behind the counter in banks spend their time… training to work behind the counter in banks and actually working behind the counter in banks.

    Which means that you can get far more useful information and service out of them, and they’re far more engaged and switched on cos they’re doing what they trained to do and chose to do, and don’t feel they’ve been cheated out of some fantasy awesome (but yet strangely ephemeral) career in Teh Meejaz.

  4. I’d say that if you want to be a programmer, the best way to learn is install Visual Studio Community, Unity 3D, get a Pluralsight subscription ($30/month) and build a game or an app

    I’m afraid that is not true. If you do that, what you will learn is how to make computers jump through hoops — but that is the least important bit of programming. Don’t listen to people who say ‘computer programming is about issuing instructions to a computer’. It’s not. Programming is about building complex mathematical models that are, effectively, proofs of their own correctness. Most of the work of programming is in the design: the scribbling down of it into a language like C or Java or whatever is fashionable these days is the least important, practically rote bit.

    Which is not to say you can’t be a self-taught programmer: you can. But it means that teaching yourself means learning about preconditions and postconditions, invariants, complexity theory and O-notation. You can — indeed some eminent computer scientists have maintained you must — learn to programme without ever touching a computer.

    Just like engineers learn to build skyscrapers without actually building them.

    Saying the best way to learn to be a programmer is to get a copy of a compiler and start building apps is like saying the best way to become a civil engineer is to get some planks and nails and start building bridges in your back garden, and just as likely to have dire consequences for anyone stupid enough to hire you.

  5. In reply to Pat,
    University courses all have information available ex ante on the average “graduate” salary.
    The real issue is that university is being sold as a route to riches. For some, sure, it is this–to some extent it acts as a filter on talent, especially in the more technical disciplines–but a route to a career?

    Unless employers are tick boxing their staff, experience, drive, business savvy, and the like are usually far more important than any initials after the name. And as Tim has humorously pointed out, paper qualifications don’t necessarily match effectiveness.

    There is a perfectly good justification for going to university but it isn’t financial. A halfway decent degree will educate and transform the student in ways that add to the human capital of the country.
    Note on the financial gains. These are lifetime earnings and the “sample” is biased since it is largely based on those who are now successful and went to university at a time when few (10%, or so, if I recall when I went there) in the country went on to higher education. So the very brightest went to uni. Not surprising they have achieved greater fortune. With circa 50% of the population going there, it is unlikely that they will gain anything like the hyped benefits. And for those at the margin, it will entail an overall lifetime loss due to missing out 3-4 years of earnings.

    I went to a good (but not the best) boarding school and I think more than half of those in 6th form didn’t go to university. That would be seen as a total educational disaster today.

    I note that accountancy firms, which once employed school leavers switched to graduates. Guess what? They are now retreating on this as there are potential good accountants out there who don’t fit the “university entrant” mould.

    Plus ca change.

    (P.S. I should declare an interest. I work in HE.)

  6. “And for those at the margin, it will entail an overall lifetime loss due to missing out 3-4 years of earnings.”

    I modeled the break-even point with a very basic Excel sheet a while back. It was surprisingly long if the salary-value-add of the degree was low.

  7. You can — indeed some eminent computer scientists have maintained you must — learn to programme without ever touching a computer.

    It’s the same with writing music, serious orchestral music that is. You learn how to do it with a pencil and paper and a hell of a lot of theory training. I still remember the first piece that I wrote for piano for a grade 3 theory test. I did the test and then took the result back to my theory teacher who proceeded to play me what I had written, (I played guitar and violin). I was amazed at what I had done but I was merely following the rules.

  8. “The danger with this approach, although it is sensible, is that large organisations are obsessed with credentials ”

    This used to be a French thing – “Where is your certificate to practice hairdressing?” and whatnot – thankfully less indulged in by the English. Unfortunately, with the feminisation of the workforce, the dominance of HR numpties and the worship of process over results, we seem to be happily following down the same path.

  9. A university education isn’t necessarily concerned with learning a trade and even where that is the main purpose, there are other elements involved as well.

    Or should be.

    The problem arises when degree courses ostensibly point in the direction of a career where competition is fierce and where successful applicants have other and better qualifications. As for the extra-curricular benefits of university, these are largely a thing of the past now that students demand protection from ideas and huddle in safe spaces.

  10. As for the extra-curricular benefits of university, these are largely a thing of the past now that students demand protection from ideas and huddle in safe spaces.

    It’s hard to believe Adam Johnson, the subject of two recent posts, learned much about independence, budgeting, personal responsibility, and growing up over the three years of his BA.

  11. The degree has become nothing more than how “decent” society distinguishes between Eloi and Morlocks.

    You no longer need to have any particular mental qualifications to get in – you can do quite well at Feminist Studies or Transactional Dominance Race Theory or Decorating for Trans-Humans with little effort.

    You no longer need to have money – government will loan the “right” people more than a very nice house mortgage merely on the promise that you will become one of them.

    It’s now divided between those who want to join the “woke” community, and those who don’t. I think of it as becoming a Party member in the early USSR, but with lower standards.

  12. The degree has become nothing more than how “decent” society distinguishes between Eloi and Morlocks.

    Yes, it’s an indicator of class or group status.

  13. Of all the confirmed millionaires that I know in my personal life, very few of them have a degree and those that do are very much at the lower end of the scale. None of the multi-millionaires have a degree.

    Millionaire- at least $1 million in cash equivalent after liabilities (net worth) and the family home owned outright.

  14. Bardon

    I can replicate that in my own family.

    I have four children. Two went to university, two didn’t.

    The two that did, along with a sense of entitlement that seems to be handed out with a degree, have got themselves reasonable paying jobs in ‘proper’ career path type companies. Dull but safe.

    The two that didn’t went straight into work and now earn 2-3X as much as their siblings in fast paced and highly entrepreneurial companies. Not dull, but also not safe. However, that doesn’t matter, as they have learnt the skills necessary to be nimble, flexible, useful and pragmatic.

    Except for career focused and demonstratively hard degrees, university seems to be mostly a waste of time. Oh for the days of the gentleman amateur, who, funnily enough, seemed to make most of the scientific and other breakthroughs in our history.

    I have a degree, but that was from nearly forty years ago when they had some signalling effect. Now? Shoulder shrug………..

  15. For years whenever I came across a uni discussion on the internet I said the same thing: Dissolution of the Monasteries.

    I suspect that my own old monasteries wouldn’t be dissolved but I’d take that risk. Many unis have become a bloody disgrace. Close lots.

  16. I graduated in the late 1980s with a History BA. It taught me two things: how to think critically and how to write good. I strolled into a job in IT, found that I couldn’t program, but the training that I had had in the deductive process ( actually to the despair of my Marxist lecturers ) meant that I became very adept in diagnostics and pre-sales work. I earned packets of dosh and could afford to take 3 month breaks when the stress became too much.
    I have just taken a MA course in History at my local Uni. I did it for lolz and paid cash for the privilege. I nearly asked for my money back. Although the lecturers knew their stuff, they seemed incapable of actually lecturing and appeared to be making it up as they went along. Some of it I can charitably describe as “half-arsed”. I came away thinking that I could have done this myself taking inspiration from some TV or radio documentaries and then spending the time in the Archives or British Library rather than the megaquid I invested on using this Uni’s substandard library. It was only useful in the end for the subscriptions to various journals. I felt quite sorry for the younger students who have probably just rehashed their BAs with a slight twist. A couple have managed to win themselves internships, but certainly their employment worth generally has not been enhanced.

  17. It taught me two things: how to think critically and how to write good.

    Not entirely true!

  18. Actually Meissen, on that subject, I had a chap working for me once who was a programmer. In a conversation he managed to mix up “good” and “well”. I corrected him, he was most indignant and said “Well, what’s the difference, is it just grammar?”

    I said through gritted teeth that grammar was important enough, but this was syntax and that as a programmer one should know all about what makes sense and what does not.
    The “entitlement” was powerful in this one.

  19. “The danger with this approach, although it is sensible, is that large organisations are obsessed with credentials – they’d rather employ someone in HR with no experience and a psychology degree than someone who’s managed people for 20 years but has no formal qualifications.

    I’ve written before about how I think bright, young men will begin to shun big organisations and set up on their own, working in 2-5 person outfits, feeding off the bigger players. We might find they start avoiding university, too.”

    Software is almost entirely not “big organisation” now. Large companies might have a “core” team, but of the big companies I know, most of their software work is either outsourced to India, or outsourced to small companies. Some of that’s about someone having a specialisation, but a lot of it is about the HR/corporate costs.

  20. S,

    “Which is not to say you can’t be a self-taught programmer: you can. But it means that teaching yourself means learning about preconditions and postconditions, invariants, complexity theory and O-notation. You can — indeed some eminent computer scientists have maintained you must — learn to programme without ever touching a computer.”

    A lot of what’s in a comp sci course is a luxury. They still teach sort algorithms, and if you’re curious, they might be of interest, but the last time I wrote one was on a BBC Micro in 1985. Because someone else wrote one, and when you’re running at 177,000MIPS on an i7 rather than 0.5MIPS on a 6502, I might as well use that. Writing my own is going to make sod all difference. If you’re at university learning about sort algorithms or the fetch-execute cycle, or disk organisation, you are learning something that’s about as useful as fitting shoes to horses or how to process film in a darkroom.

  21. BonM4: as useful as fitting shoes to horses

    I think that’s probably still quite useful – or have hooves been digitised since I last looked?

  22. Recusant- “Not dull, but also not safe. However, that doesn’t matter, as they have learnt the skills necessary to be nimble, flexible, useful and pragmatic.”

    I think that due to evolutionary survival some of us are hard wired to take risks, big risks, and it is far safer and financially rewarding to exercise this skill in a business than other areas of your life, like extreme sports, gambling, crime which are areas where failure can be deadly or imprisoning. I often get asked at work how can you sleep at night taking this risk, then I think to myself well I wont get locked up, die or go bust if I am wrong. The worst that could happen is the company would have to give me my golden parachute and I would live unscathed and wealthier and able to take a similar risk again, sweet dreams.

  23. I’d say that if you want to be a programmer, the best way to learn is install Visual Studio Community, Unity 3D, get a Pluralsight subscription ($30/month) and build a game or an app

    I’m afraid that is not true. If you do that, what you will learn is how to make computers jump through hoops — but that is the least important bit of programming. Don’t listen to people who say ‘computer programming is about issuing instructions to a computer’. It’s not. Programming is about building complex mathematical models that are, effectively, proofs of their own correctness.

    You’re both wrong.

    Bloke on M4 is describing ****ing around with some tools and learning just enough bits and pieces to be dangerous. I’ve fired more people like that than I can count. Linux tends to attract them, for obvious reasons.

    S, you’re describing computer science, not programming. Which, as my alma mater defined it, is “the study of that class of mathematical problems which lend themselves to analysis by computers”. It’s an important field of theoretical study, but computer scientists are almost as useless at actually creating working software as the autodidacts.

    What’s needed in the real world are neither autodidacts nor theoretical scientists, but software engineers. In the same way that conventional engineers are applied scientists, software engineers are applied computer scientists. Understanding how to scale up an application under load and architecting for high availability is not something either duffers or computer scientists learn.

  24. TMB,
    Yes, some people still own horses. Some people still write sort algorithms. Not many, though.

    Daniel Ream,
    I agree with your points there. My point is that what you’ll learn from building an app is probably not much worse than the state when you leave most degrees, and precisely because it misses out the “applied” aspect. At least with building an app and releasing it, you might find out about the problems and improve what you do. But I’m not in favour of just grabbing from Google. There are structured approaches to learning programming via e-learning and books.

  25. They still teach sort algorithms, and if you’re curious, they might be of interest, but the last time I wrote one was on a BBC Micro in 1985. Because someone else wrote one, and when you’re running at 177,000MIPS on an i7 rather than 0.5MIPS on a 6502, I might as well use that. Writing my own is going to make sod all difference. If you’re at university learning about sort algorithms or the fetch-execute cycle, or disk organisation, you are learning something that’s about as useful as fitting shoes to horses or how to process film in a darkroom

    You might not need to write your own sorting algorithm, but the point of learning about sort algorithms isn’t so that you can write your own, it’s because they are a nice easy demonstration of things like complexity theory (because they range from polynomial complexity to n-log-n, and some have interesting difference between average and worst-case performance, and if you are able to understand complexity then it’s easiest to see with sorts) and invariants (because you’re dealing with loops and to prove your algorithm actually sorts you have to understand how the loop inductively transforms the precondition into the postcondition).

    And these things are vital to understand if you’re going to be writing your own algorithms. Especially if you’re in an area where every single microsecond counts, like, say, making video games that have to run at sixty frames a second. And they are a vital grounding to understand things like concurrent systems.

    If you can’t tell me why a sorting algorithm is correct, you’re never going to be able to work out where you need a mutex and where you don’t.

    Sorting algorithms are the Compsci equivalent of teaching engineers about moments using simple levers: they demonstrate the basic principles that underlie literally everything else.

    If I am interviewing someone I will absolutely ask them to write a sorting algorithm right there in the interview, and then prove to me it’s correct, and demonstrate they can figure out the complexity. Not because I ever expect them to write one on the job, or because I expect them to have memorised quicksort (indeed, if I can tell they are just writing it out from memory I will probably tell them to do another one so I can see them thinking about it), but because that demonstrates the skills I am looking for.

    Dissing sorting algorithms… well, if you do that, you must really not understand what programming involves.

  26. I think its a bit of a cheek since PdH threw Ian B off his site for being less than complementary about his PPE–and PPEs in general.

  27. “You might not need to write your own sorting algorithm, but the point of learning about sort algorithms isn’t so that you can write your own, it’s because they are a nice easy demonstration of things like complexity theory (because they range from polynomial complexity to n-log-n, and some have interesting difference between average and worst-case performance, and if you are able to understand complexity then it’s easiest to see with sorts) and invariants (because you’re dealing with loops and to prove your algorithm actually sorts you have to understand how the loop inductively transforms the precondition into the postcondition).”

    Fair point. Although an algorithm for all sorts of things will do the same.

    “And these things are vital to understand if you’re going to be writing your own algorithms. Especially if you’re in an area where every single microsecond counts, like, say, making video games that have to run at sixty frames a second. And they are a vital grounding to understand things like concurrent systems.”

    But game development is less and less about CPU optimisation. Almost everyone develops using things like Unreal Engine and Unity 3D because there’s plenty of CPU cycles. I’m not saying don’t write tight, well-performing code code. I’m saying that there is less value when you’ve got massive CPUs, and especially, it’s generally not worth trading simplicity and ease of understanding for complexity.

    “Dissing sorting algorithms… well, if you do that, you must really not understand what programming involves.”

    Apart from the fact I haven’t, I’ve been writing software in industry for 30 years. I work on systems processing millions of transactions a day. Reading your comments, either you’re long retired or stuck in an academic department.

  28. But game development is less and less about CPU optimisation

    Ha ha ha ha. No. To run at sixty frames a second you have under 167ms per frame to do everything. And there is a lot to do every frame. Accidentally slip a polynomial algorithm into one of the bits of code that runs every frame and you will know about it. Do a memory copy instead of changing a reference inside the body of a loop and you will know about it. Put too many mutexes in so that you leave multiple cores sitting idle, and people will come with bits of wood to bash you in the head.

    ‘Plenty of CPU cycles’. Ha.

  29. Or to be slightly less sarcastic:

    177,000MIPS on an i7

    Xboxes don’t have i7s in them. And even if the next generation of consoles do, that doesn’t mean there’ll be ‘cycles to burn’: all that will happen is that expected quality will go up. Better graphics, bigger worlds, more items, more complex simulations.

    Not only is every cycle valuable, every cycle will always be valuable, because the more cycles you have, the more people will expect you to do in them.

    So it matters, for example, whether you use a fast or a safe vector normaliser. Use the safe one when you could have used the fast one and that matters. How do you know? You have to understand preconditions and invariants. All the things you learn from searches and sorts.

    And to do it correctly, which is where the other, more important thing that sorting algorithms teach comes in: how to prove correctness using encapsulation, invariants, etc.

    (And of course nobody only teaches sorting algorithms. But they are a good place to start before going on to, say, Dijkstra’s algorithm (which actually involves a sort!). Why, just last week I had to implement the Cohen-Sutherland algorithm.)

  30. S,

    “Ha ha ha ha. No.”

    Ha ha ha ha. Yes.

    The rise of game engines such as Unity 3D and game building IDEs is evidence of this. If CPU mattered that much, no-one would be using them. But they are.

  31. The entire history of program development could be written around this debate.
    Optimise because every cycle counts or don’t worry because a faster processor will come to market before you have time to finish to optimisation. ‘Prove’ programs correct because programs are just implemented algorithms and algorithms are just applied mathematics, or accept that its just a craft, a writing in the sand that will be swept away by the next iteration of the development cycle.

  32. The rise of game engines such as Unity 3D and game building IDEs is evidence of this. If CPU mattered that much, no-one would be using them. But they are

    You completely misunderstand. Using middleware makes it more important that your algorithms are efficient, not less, because the middleware makes everything take longer. So if you write a polynomial algorithm in Lua, say, when you could have written a linear one, the impact is much worse than if you were writing in a lower-level language.

    If you don’t use middleware, then maybe you could get away with inefficient algorithms. But if you use middleware, then you have to understand complexity theory inside-out or you’ll kill the framerate.

    Trust me. I do this for a living.

  33. …have hooves been digitised since I last looked?

    No, but they’ve been rubberised and circularised 😉

Leave a Reply

Your email address will not be published. Required fields are marked *