Live data from Hacker News

A CS degree is better than teaching yourself how to code?

zeroequalsfalse.com

291–300 of 330 posts

Re: A CS degree is better than teaching yourself how to code?

#291

Earlier quoted context omitted.

Exposure to the CS curriculum at least gives you a leg up in asking questions and working out the shape of your lack-of-knowledge. Like, knowing that automata and complexity theory exists and remembering roughly how it works means that if something that needs that comes up, at least you have a sense of what you forgot about it. For instance, having taken a database class where we worked in the relational algebra has…

I’ve never taken a relational algebra class in my life and neither have most dba’s. They learned sql by learning sql.

That's of course a perfectly good way to learn SQL and probably much cheaper. I'm not saying that you need relational algebra to write a query, that would be silly. I just mean that learning that stuff does stick with you.

Re: A CS degree is better than teaching yourself how to code?

#292

"College degrees far outweigh teaching yourself to code (Or coding bootcamps), as they provide you more skills than simply knowing how to code." But the majority of the skills listed are not intrinsic to computers, computer science, or software at all. "There are many skills that Developers now require besides just coding. They need time management skills, organisational skills, people skills, translating skills, neg…

Totally agree with your last statement. I've fired more CS degree programmers than self learners.

yeah, I was going to pound this home a bit more, but was seeing some other people already did.

Coming back to this, one of the defenses I've had from CS people who couldn't do day to day development all that well is "well... that's not what CS is for - it's really for diving deep in to the theories behind problems... " - or some other relative claptrap. On its own - yeah, there's a class of problems that are served well by people with a CS-focus. Just don't try to drop them in to a "developer" role and assume that they'll be "just as good or even better" than someone who's simply been doing development perhaps with minimal schooling or just self-taught. One skill isn't really a superset of the other, but some people tend to think of them as such.

Re: A CS degree is better than teaching yourself how to code?

#293
Quick anecdote from my personal experience, learning to code as a hobbyist and then later getting a hybrid Software Engineering and Computer Science degree (it was mostly CS with some SE topics and projects): you can totally learn without a degree, but my code, reasoning about data structures, algorithms and performance and general software architecture definitely improved sharply by getting the degree. I think partly due to exposure to additional subjects that I may not have self-studied, partly due to having time to spend on it and partly because of the coursework/lectures.

Of course you totally can learn everything you would ever want or need yourself, but there's definitely value in a few years dedicated to learning this stuff and getting exposed to subjects, projects and peers is useful. Whether or not its better probably depends on the individual and what you make of it, though.

Re: A CS degree is better than teaching yourself how to code?

#294
IMHO... It’s not an absolute of one being better than the other for all people or situations. A CS degree represents a more rigorous curriculum than most. It also used to signal an interest in the field. (Nowadays it’s getting more like Econ or Finance - a path to money)

If I am hiring an engineer, and I have to sort through which 10 candidates out of 200 resumes to interview, the CS degree is one heuristic of many to make the list manageable. If a colleague I respect hands me a resume and says “This is one of the best people I’ve ever worked with” I won’t even look at the degree or anything else on the resume.

Several of the absolute best engineers I’ve met are self taught without the CS degree. That isn’t incompatible with saying the median engineer with a CS degree is stronger than the median without. (And many with the CS degree are self taught too)

Re: A CS degree is better than teaching yourself how to code?

#295
post #222

I work with a team of people who mostly have "Software Engineering" degrees. I am one of the few with CS. In short: IN GENERAL - Those with SE degrees (or other non-CS degree, or no degree) can be excellent developers (good code style, good unit test coverage, aggressive PR reviewers, etc). However, the art of computer programming - or computer system design -- is often in formally defining the problem at hand using…

I have a SE degree, from the Engineering faculty (there are ones offered from CS also). And I absolutely did spend hours in algorithms classes of all kinds.

Re: A CS degree is better than teaching yourself how to code?

#296

Earlier quoted context omitted.

What does it say about FAANG interviews that many can pass them without any practical experience by studying leetCode and Cracking the Code for a year? How many SE’s do those companies have? Do you really think they are all the best and brightest?

Having done 500+ FAANG interviews I don't think I've seen anyone hired "without any practical experience". (Except new grads, obviously, but presumably that's not what you meant). leetcode definitely helps but won't guarantee being hired. There are many things we look for that it won't help you with. And the unfortunate fact is that merely having experience doesn't mean you are a competent programmer. We need some wa…

Some jobs do require people that can solve “hard problems”(tm) at scale and can’t use off the shelf frameworks. But I’ve heard (but never experienced) companies looking for a developer for a bog standard yet another software as a service CRUD app or some bespoke internal app who still think they need to do an interview process like a FAANG. That was where my dismissive attitude toward that style of interview originally came from.

Over the last few years I have kind of seen the light of day. When you’re hiring at scale, you do need a standardized process. On the other hand, while I haven’t spent a day studying any really complicated algorithms[1], I’ve spent just as much time knowing how to talk the talk of a “cloud native enterprise architect”, and it took me awhile to realize how much of a hypocrite I was being for saying that I would never jump through the seemingly artificial hoops of studying algorithms.

[1] that’s not entirely true. I spent a year or two maintaining a bespoke compiler/IDE/VM for Windows Mobile.

Re: A CS degree is better than teaching yourself how to code?

#297
post #171

Earlier quoted context omitted.

Devil's advocate: did you ask them to solve graph traversals or complex string algorithms rather than fizzbuzz ? I recently had a technical test, which I failed because I was depressed how boring it was so I missed many easy answers (say asking about private/public fields in OO).

> Devil's advocate: did you ask them to solve graph traversals or complex string algorithms rather than fizzbuzz ? Getting someone to regurgitate something they've been explicitly taught and memorized instead of trying to solve a problem they haven't been (does any CS course explicitly teach fizzbuzz) does not seem like good job selection criteria. > I recently had a technical test, which I failed because I was depre…

Getting someone to regurgitate something they've been explicitly taught and memorized instead of trying to solve a problem they haven't been (does any CS course explicitly teach fizzbuzz) does not seem like good job selection criteria.

And how is that different than getting someone to regurgitate problems thet learned by studying leetCode?

If you can’t code fizzbuzz even after being told about the mod operator, how can you be expected to solve harder business problems once given the requirements?

Re: A CS degree is better than teaching yourself how to code?

#298
post #222

I work with a team of people who mostly have "Software Engineering" degrees. I am one of the few with CS. In short: IN GENERAL - Those with SE degrees (or other non-CS degree, or no degree) can be excellent developers (good code style, good unit test coverage, aggressive PR reviewers, etc). However, the art of computer programming - or computer system design -- is often in formally defining the problem at hand using…

However, the art of computer programming - or computer system design -- is often in formally defining the problem at hand using computational structures (such as graphs),

“often”?

You are severely underestimating the number of corporate/enterprise/SAAS CRUD jobs out there that don’t have to do anything that complex.

Re: A CS degree is better than teaching yourself how to code?

#299

Teaching yourself to code while getting a CS degree is best IMO. Just teaching yourself you'll likely miss lots of topics and not challenge yourself as much. Conversely I've met plenty of students that don't really care about the topic and are just taking the class to get a job. So do both! Take the class and teach yourself. In other words pursue your hobbies and use code where those hobbies match. Learn the things y…

Is it really possible to apply CS skills to all hobbies? If yes then how do you apply CS to hobbies like woodworking or crochet? The only thing I can think of is a retail site, but then again why wouldn't you just use something like tindie? Or should people who don't do coding related hobbies not do CS? Which is a special requirement just for this major. People in civil or biomedical engineering don't apply their maj…

Griswold not only came up with the programming languages SNOBOL and Icon, but later in his life dealt with weaving patterns mathematically and computationally.

E.g. Designing Weave Patterns Using Boolean Operations... https://www2.cs.arizona.edu/patterns/weaving/webdocs/gre_bol...

Post reply on HN