Hacker News new | ask | show | jobs
by warent 1594 days ago
It's a packaging / communication problem.

"Computer science" is a term that no longer fits the mental model of the general population's idea. Basically nobody is thinking "Computers? Of course! You mean the lambda calculus, Turing machines, how these theories relate."

Most People are thinking about about the internet, websites, games, apps, robots, and so forth. Indeed one can build all these things without any concept of how busy a beaver really is.

Then you have a smaller subset of people who (allegedly) understood what "computer science" is from the outset, and they turn their nose up at anyone who misunderstood what this "Computer science" was. Even worse, they often feel somehow superior. How dare you be ignorant?

Practicality and value: these things can exist outside the realm of dense theory. Anyone who says otherwise is trying to feel better about the years and/or money spent on a very challenging and painful degree.

2 comments

As someone who is self-taught as a programmer, I came into the field with a serious case of imposter syndrome. There was so much theoretical stuff I didn't know. Then I got into my job and it turned out it didn't really matter and my practical experience doing hackathons and personal projects set me up for a lot of success. There are times and I wish I had a better theoretical underpinning, but it's honestly pretty rare
This. It has really split into two domains, but the terminology is often muddled.

It is like the difference between a person who pours concrete foundations, and a person optimizing concrete formulas. Society needs both, but the skill sets are different.

Yup, I took CS and had to go through all the rigors that entailed, but I really ended up being a construction worker. I don't mind! Really! But I think if I could do it all over again, I'd take a software engineering BS degree where most of my time was spent engineering solid software.

I did take design patterns classes and such in college, but imagine taking 200,300, and 400 level design patterns classes and learning how to architect scalable systems in the cloud or on-prem.

Of course there would be programming classes too, but I think there's some room for a program that I'm imagining. Boot camps don't cover the engineering and architecture parts so it would be somewhere between a bootcamp and a CS degree where you're writing operating systems and big endean and Big O notation

Except society doesn't actually need both "people who can solve new and interesting problems in an automated way using computers" and "people who build only easy, normal, routine, well-understood solutions to known problems using computers", because the latter is called compilers.