A CS degree is better than teaching yourself how to code?
41–50 of 330 posts
Re: A CS degree is better than teaching yourself how to code?
#42Talking with co-workers who completed 4 year CS degrees, I feel like I got a much better value out of my now defunct 2 year trade school. Mind you this was 15 years ago, but I came out of it with a decent enough working knowledge of C, C++, VB.Net and Java - and basic understanding of SQL, PLScheme and functional. On top of that there was a solid year of data structure class. Trade schools have been largely demonized…
I would not recommend this career track if you're the kind of person that wants to climb a career ladder and go into management on the business side of things, there are definitely useful skills to acquire on the legal and softskills side. Having any degree will just check a box and help people without a clear view of what they want out of the future. It can also help if you want to put yourself through being just another number at a FANG organisation.
Too stubborn and arrogant to allow someone to tell me I'm incapable of being a success without a piece of paper.
Re: A CS degree is better than teaching yourself how to code?
#43Everything here can be earned elsewhere for far less money. In fact, if you get an entry-level job you can learn all this while getting paid! IMO the advantages of CS college are this: - You can reach a higher salary. - It's easier to learn hard math/CS ideas in school than on your own. - It's easier to make friends in college than elsewhere.
Your second point is only true if you add a constraint to learn alone, nothing wrong with seeking out other self learners. Salary is generally true but that really depends on your negotiating skills.
Re: A CS degree is better than teaching yourself how to code?
#44That isn’t compelling as far as a CS degree goes. You could change the title to “learn to code and get a degree in literature” and the same time pressure, communication, networking, etc. points would stand true.
Re: A CS degree is better than teaching yourself how to code?
#45> These skills are often gained through completing an undergraduate degree. Disagree. An apprentice or even a bootcamp grad can learn these skills in their current job or in a online MOOC course without a degree. What the author fails to mention is the amount of student debt that comes with the CS degree. In some cases a CS degree isn't worth the debt if the curriculum doesn't align with the market or if the universi…
As mentioned in a further comment below - I can understand why code is slow (eg: BigO for cpu or memory), what structures and algorithms to use in different scenarios (Data Structures & algos), how things are working (Computer Architecture, Programming Languages [theoretical construction of languages], Compiler design), and Automata. Absolutely, these can be learned by oneself - but I find they rarely are. I know what is happening at a network layer, OS layer, memory layer, application layer, and system layer, and code layer.
I can grok a new language quickly, by learning some very key aspects of its language design from my Programming Langs class (the "meta" of ProgLang design), etc.
Re: A CS degree is better than teaching yourself how to code?
#46Talking with co-workers who completed 4 year CS degrees, I feel like I got a much better value out of my now defunct 2 year trade school. Mind you this was 15 years ago, but I came out of it with a decent enough working knowledge of C, C++, VB.Net and Java - and basic understanding of SQL, PLScheme and functional. On top of that there was a solid year of data structure class. Trade schools have been largely demonized…
Re: A CS degree is better than teaching yourself how to code?
#47Re: A CS degree is better than teaching yourself how to code?
#48Everything here can be earned elsewhere for far less money. In fact, if you get an entry-level job you can learn all this while getting paid! IMO the advantages of CS college are this: - You can reach a higher salary. - It's easier to learn hard math/CS ideas in school than on your own. - It's easier to make friends in college than elsewhere.
Many self learners have no clue about processes, threads, memory allocation. Nor do they care about algorithmic complexity. They end up using a list for a map etc.i.e. there are foundational gaps in their knowledge. A CS program ensures that there is at least an attempt to build a foundation.
That same thing that drives people to be good in programming happens with it without schooling. And most of it happens to be experience.
You can either pay for experience, or you can get paid to get experience.
At the end of the day bad programmers from whatever walks of life are going to use list where maps should be used, and not understand algorithmic complexitie of the code they write.
Processes, threads, and memory allocations are all system level operations and a programmers depth of knowledge of them are highly dependent on where in the stack they are working.
In fact. I would wager that most self tough programmers are a cut above the average college grad, and way more suited to actually gettng work done. Thry have already shown they are self motivated and don't require hand holding to get the job done. Besides they will also be less stressed from not having all that debt.
Re: A CS degree is better than teaching yourself how to code?
#49The kind of full-immersion one-on-one mentoring you get as a junior member of an effective team is going to have a much larger impact that anything you do in your formal education. And that's a good thing too, because I've worked with numerous CS grads who:
• are weak communicators, especially in writing
• are not effective in a team, either for interpersonal or technical reasons (ie writing unmaintainable code)
• are not particular fast or effective, especially in situations where projects and priorities are not fully specified
Now, to be fair, some fresh grads are great on all these points. Just as I've worked with ones who are incompetent, I've also worked with some who are as effective as senior engineers right from the start. But that is not entirely common and almost always a function of things they did on top of getting a CS degree. It's hard to reason about counterfactuals, but I am sure that the same fresh CS grads who are incredibly effective would still be roughly as effective even if they had taken a different path to becoming a professional programmer.
And even if there is any systematic difference between junior programmers with and without degrees, I am absolutely certain that it gets completely erased after several months of working and mentorship in a professional context.
Re: A CS degree is better than teaching yourself how to code?
#50Talking with co-workers who completed 4 year CS degrees, I feel like I got a much better value out of my now defunct 2 year trade school. Mind you this was 15 years ago, but I came out of it with a decent enough working knowledge of C, C++, VB.Net and Java - and basic understanding of SQL, PLScheme and functional. On top of that there was a solid year of data structure class. Trade schools have been largely demonized…
1. Beyond a few general requirements, most CS programs do let you focus on what you’re interested in, and to much greater depth and pragmatic application than trade school. “Focusing on things you don’t care about” is a very minor part of college technical programs unless you make up your mind to solely care about some small niche.
2. “I never would have cut it in college” is not a free pass from needing a well-rounded education, appreciation of art, literature, business, ethics, etc., and good writing, communication and organizational skills well beyond what’s taught in trade school. This is becoming increasingly critical in business software settings, where developers are often working directly in tandem with product managers.
I could see trade school working for very specific niche areas, like DBA for a single specific enterprise database system, or breadth of knowledge in devops compatibility across multiple cloud vendors.
But I can’t see trade school as a reliable way to get necessary experience for general software architecture applied to business problems and fundamentals for the social coordination of multi-system software projects.
You personally might have had the raw talent and gumption to parlay trade school into that sort of career skill, I’m just saying it’s not likely to work out as well for a random student in today’s job market.