TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

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

156 pointsby techtorover 5 years ago

99 comments

greggman2over 5 years ago
Teaching yourself to code while getting a CS degree is best IMO.<p>Just teaching yourself you&#x27;ll likely miss lots of topics and not challenge yourself as much.<p>Conversely I&#x27;ve met plenty of students that don&#x27;t really care about the topic and are just taking the class to get a job.<p>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 you need to achieve your hobby goals. All while taking CS classes and as much as possible making those two things overlap
评论 #21432867 未加载
评论 #21433474 未加载
评论 #21432846 未加载
评论 #21433602 未加载
评论 #21434608 未加载
评论 #21433670 未加载
评论 #21433183 未加载
评论 #21433886 未加载
评论 #21433452 未加载
评论 #21434463 未加载
评论 #21433503 未加载
vbtempover 5 years ago
I work with a team of people who mostly have &quot;Software Engineering&quot; degrees. I am one of the few with CS.<p>In short: <i>IN GENERAL</i> - 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).<p>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), understanding the properties of that model, and creating a new algorithm over that model to solve it. Then developing a software system to mirror the properties of that formal system you designed.<p>Those people who did not spend dozens-to-hundreds of hours agonizing over their coursework in algorithms, abstract algebra, linear algebra, &quot;foundations of computing&quot; (i.e., computational complexity theory, computational theory, language hierarchies, etc) I found can lack this critical aspect of system design. Instead, they design systems that lack unity and are often simply a collection of routines to handle various inputs - rather than having the knowledge to think &quot;Hm, maybe this whole thing I&#x27;m working on is a special case of a well-studied problem&quot;. What this means practically is that there is often a simpler, better-defined, and more testable solution lurking behind the veil of ignorance.<p>Sure, there are many many teams and projects for which the scale or complexity are not sufficient to warrant some kind of formal analysis and modeling -- but many do.
评论 #21434669 未加载
评论 #21434393 未加载
评论 #21434203 未加载
评论 #21433845 未加载
评论 #21435197 未加载
评论 #21434031 未加载
评论 #21433808 未加载
评论 #21435015 未加载
spoondanover 5 years ago
This is a very strange article and premise to me. A university education is not vocational training. A CS education includes courses in programming, but learning to program—indeed, learning CS—is only a part of the education you are signing up for at university.<p>I arrived at university having already worked for a couple years in open source and a bit of contracting. I worked as a professional programmer throughout my undergraduate degree. I was bored by most of the introductory programming courses. The liberal arts, being around other young adults, the theoretical CS parts, the electrical engineering bits, and some of the project work were the only valuable parts, but that was plenty of value to me.<p>Going to university to learn to program is like going to university to learn refrigerator repair or how to play the guitar. Vocational and on-the-job training will go deeper into the craft. If you only want vocational training, go to a vocational school, get a private teacher, or teach yourself. Don’t go to university just to learn a skill. You certainly can, but it’s not an efficient way to do that. People study music in university to become better rounded musicians, not to learn an instrument. Same with CS.
评论 #21433202 未加载
donatjover 5 years ago
Talking 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.<p>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.<p>Trade schools have been largely demonized and shut down in the last couple years, but I can say honestly I would not be where I am today without it.<p>I never would have cut it in college, I did really mediocre in grade school, I had trouble focusing on things I didn&#x27;t care about. However, in trade school I flourished, largely because I actually cared about what I was learning. I graduated with a 4.0 and I make six figures now.<p>I genuinely see college requirements as a horrible way to filter useful but unbalanced people like myself out of the work force.
评论 #21431804 未加载
评论 #21431815 未加载
评论 #21431831 未加载
评论 #21431880 未加载
评论 #21432885 未加载
Jedi72over 5 years ago
The lack of appreciation of pure knowledge in this thread is truly saddening. If all you care about is getting a job, this question boils down to simple finance. If you want to truly learn, understand and engage in a topic, what can possibly be better than emmersing oneself in an environment of learning, inquisitive students and knowledgable professors full-time?
评论 #21433409 未加载
评论 #21433817 未加载
评论 #21433550 未加载
评论 #21433528 未加载
评论 #21433884 未加载
评论 #21433669 未加载
评论 #21433264 未加载
评论 #21433813 未加载
评论 #21433856 未加载
评论 #21433458 未加载
honkycatover 5 years ago
People REALLY hate college degrees on this site. I think my degree was a great decision.<p>I&#x27;ve met a few decent self-taught programmers. Most are awful. Over and over again the bootcamp grads and people who have never attended school end up being the worst performers on my team.<p>A LOT of the people I have worked with who do not have degrees have bad attitudes and are hyper-vigilant about &quot;no degree&quot; microaggressions.<p>I use the stuff I learned in university all the time. I didn&#x27;t go deeply into debt to attend a private university, instead I worked during the day and went to school at night.<p>There is such a massive glut of people trying to get into the entry level programmer jobs. It&#x27;s an easy decision for me: Throw the people who do not have a 4 year degree or relevant work experience into the trash. I would assume that a LOT of other people are doing this.
评论 #21432693 未加载
评论 #21432492 未加载
评论 #21432471 未加载
评论 #21434679 未加载
评论 #21432477 未加载
评论 #21432723 未加载
rvzover 5 years ago
&gt; These skills are often gained through completing an undergraduate degree.<p>Disagree.<p>An apprentice or even a bootcamp grad can learn these skills in their current job or in a online MOOC course without a degree.<p>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&#x27;t worth the debt if the curriculum doesn&#x27;t align with the market or if the university is less prestigious. It&#x27;s no good becoming a graduate and leaving with no experience + £50k in debt and convincing employers that you are &quot;qualified&quot; for the role.<p>Given that most or if not all of these CS and soft skills can be learned online for free, students utilising free courses can find work debt free with the same skills as a CS grad with the added bonus of hands-on experience if they are apprentices. Unless you are after a research position, it is economically better to teach yourself for a typical developer position these days.
评论 #21431814 未加载
评论 #21431694 未加载
评论 #21431720 未加载
评论 #21431950 未加载
评论 #21437877 未加载
goranbover 5 years ago
I&#x27;m currently pursuing my CS degree after a couple of decades working as a programmer. The big difference is that you will miss &quot;why&quot; and learn mostly &quot;how&quot;, unless you have a very inquisitive mind. On the other hand, not everybody can afford years of no income or crippling debt.
评论 #21431788 未加载
评论 #21431771 未加载
评论 #21431673 未加载
kabdibover 5 years ago
I did &quot;all three&quot;. My road was basically:<p>- tons of self study while I designed hardware and wrote code on my own<p>- school, which started showing me more advanced things<p>- an internship, which exposed me to the real world<p>I was into computers years and years before college. This was the 1970s, when books on computers were few and far between. I had not heard of Knuth (and if I had, his books might have chased me away) and most of my learning about computers was from Intel datasheets and articles from BYTE and Dr Dobb&#x27;s Journal. I read about Smalltalk and Pascal and FORTH (and wrote my own FORTH) and C (and mucked around with Tiny C) but didn&#x27;t really know anything.<p>School taught me some theory (starting with Knuth and such), but the whole time I was taking classes I was doing my own self-study on things the school didn&#x27;t offer (mostly I was studying how to write LISP interpreters and compilers, and then how to write video games). School taught me how to teach myself.<p>The internship taught me about politics and how to work with people, how to work with physical machines (from DEC-10s and large PDP-11s to microcomputers), and Unix systems programming (&quot;Here, kid, photocopy my copy of Lyons Notes, read that and also K&amp;R, and have fun&quot;).<p>I was taking grad-level courses when I realized that I was having more fun writing video games than anything else, and I was not looking forward to spending my last year of school doing the boring graduation requirements courses I&#x27;d blown off in favor of just taking more CS. So I dropped out, moved to Silicon Valley and still, 40 years later, don&#x27;t have a degree, and I&#x27;m still reading papers and learning new stuff all the time.
vitroover 5 years ago
As a uni dropout myself and regretting it now a bit, I&#x27;ve always seen university education as getting a map.<p>You go to the school and get a map with all the roads, one-way routes, walks, parks, etc.<p>If you learn by yourself, your map may not contain some of those routes and you may not know that you can actually go some other way or you may go a way that has a dead end.<p>On the other hand, it is just a map. You have to walk it yourself and university cannot make you walk all the map. But at least you know (almost) all the paths and their requirements.
评论 #21434310 未加载
gerbillyover 5 years ago
Almost all the work done in industry is O(1) programming.<p>It&#x27;s difficult work, but not complex.<p>I&#x27;m not surprised every thread started by a person who hires grads undervalues their education, because they probably don&#x27;t have any work to assign to them that contains any complexity.<p>This doesn&#x27;t say much for us as an industry. The simple and avoidable difficulties of &#x27;real world&#x27; programming are not much to brag about.<p>The only difficulties we face nowadays in programming are almost always down to buggy libraries and frameworks that have nonexistent documentation.<p>I remember when I was starting in the work world, that you could buy a whole wall full of paper bound books for your IBM machine, or Sun, and when you looked up a function in there it was well documented and correct.<p>Nowadays, I suppose we&#x27;re too cool to do something like that, better to move on fast and go break something somewhere else.<p>To any recent grads, I&#x27;ll tell you a secret. If you want to move up the ladder in this industry, the most important thing is to keep outrunning your mistakes.<p>Build a system, brag about it, move to another role and let some other poor sucker maintain the stupid thing.
评论 #21433872 未加载
sklivvz1971over 5 years ago
All the points mentioned in the article are not specific to CS, and they are mostly about living normal adult life (socializing, deadlines, etc.)<p>I don&#x27;t think that going to college is necessary or detrimental. It&#x27;s probably good that people from 18 to 21 stay somewhere safe and learn something out of their parent&#x27;s home.<p>That said, there is very little that a CS course can teach you that is both practically useful on the job and you can&#x27;t easily learn from yourself. That&#x27;s because a large part of coding is not about knowing the most advanced and obscure data structures or algorithms.<p>Which brings me to the point. Neither of those options teaches you how do develop a product feature. That&#x27;s what people still learn on the job today, and it&#x27;s why knowing how to code is merely necessary but certainly not sufficient to be a good developer.
评论 #21432870 未加载
mettamageover 5 years ago
As a bootcamp instructor:<p>1. I gave deadlines<p>2. Students did group assignments 50% of the time<p>3. They learned to work with Git and how to communicate<p>I studied a CS degree and learned less collaboration than my students did.<p>Based on my experience I must conclude with regret that this article is too unnuanced and therefore not very informing, if at all.<p>The author himself can email me for a discussion on mettamage@protonmail.com since I&#x27;d like to understand his views better and perhaps he might benefit from mine.<p>Edit: I emailed the author.
评论 #21434224 未加载
kidintechover 5 years ago
I think this is highly dependent on how your course is structured. I used to do a lot of contractor work and competitive programming before going to uni. I thought I knew how to write code, or at least knew how to &quot;teach myself&quot;. I had never been more wrong.<p>Having tough coursework across diverse esoteric subjects (where you cannot easily stack overflow your way into a solution) was easily the best learning experience of my life. Standing before massive &quot;walls&quot; that looked impossible to climb, and being forced to figure out how to do it on my own, is the most important skill I have. Some CWs which I thought were particularly tough and taught me a lot:<p>- Kernel for target non-widespread platform (where all you have is the processor&#x27;s manual), capable of IPC, written from scratch in C.<p>- Both a pathtracer and a rasterizer without using a graphics library. (you can read about the advantages or disadvantages of each one, but writing both makes you appreciate each technique independently)<p>- Some sort of compiler or interpreter (parser too).<p>- HPC problem that requires non-trivial parallelisation and vectorisation.<p>- Some sort of adversarial attack on a target &quot;real world&quot; platform that uses deprecated encryption (i.e. RSA).<p>- Individual research project.<p>ALL of these tasks are possible to do by yourself, independently, but very hard to see them through the end without solid infrastructure and support staff surrounding you. I imagine it takes a very highly motivated individual to do the same things outside of academia.<p>The biggest benefit of attending uni is learning how to learn and tackle complex problems.
emit_timeover 5 years ago
I graduated with a physics BS a little over a year ago.<p>My experience has been that it has taken a lot of effort and time to try to learn things, and keep up with everything. Also, I think my resume just gets straight up tossed out a large fraction of the time compared to CS majors.<p>Maybe there&#x27;s other issues, but I&#x27;ve had people look over my resume and things like that.<p>Additionally, my lists of technology are pretty weak (I&#x27;m trying to work on it, but my company doesn&#x27;t use a lot of mainstream technologies if any).<p>I did not have any internships in CS.<p>I don&#x27;t know how bootcampers and other get jobs at FAANG companies in 6 months, because I can&#x27;t even get a non technical phone screen with them.<p>I even did triplebyte without too much success.<p>That being said, I accept there are probably other issues and things I need to work on, and I&#x27;m trying to work on them as much as I can.<p>But, I have spent a lot of time reading about topics, asking my friends questions, reading conversations in group chats that are technically oriented and looked up things from them to learn. It has been a hell of a journey.<p>Trying to move to a company that uses more mainstream technologies. So I can have a resume that will actually get me calls back.<p>This is a bit of a ramble.<p>Also, considering the article. I don&#x27;t think I really had to learn any of those things in school well. Maybe if you do clubs and things, but I don&#x27;t think it&#x27;s much of a result of the curriculum IMO as far as teamwork&#x2F;communication go. I know CS majors have senior design where the work in teams, but I think a lot of them suck at the teamwork part.<p>Current weaknesses of mine: Socket programming, messaging, multi threaded applications, I don&#x27;t know SQL (beyond basic queries)&#x2F;database schema design (we don&#x27;t SQL it at work)<p>I still barely know what dependency injection, factories etc are. I only learned what a &quot;god object&quot; was today.<p>I&#x27;m trying really hard. I want to have a really good job since I know the benefits in terms of rewards of me studying hard are HUGE.
zabanaover 5 years ago
&gt; Most CS degrees have group projects. These are great for learning how to interact within a multidisciplinary team, how to behave, and how to communicate technical concepts effectively. These are excellent skills to have while working in Software development.<p>Plenty of CS graduates have very poor communication &#x2F; social skills. It&#x27;s very unfortunate but it&#x27;s the sad reality.<p>As somebody with computer science knowledge, but no official university degree, I can testify to the importance of going through such a curriculum. I&#x27;m eternally grateful to MIT and their OpenCourseWare initative which allowed me to develop my understanding of the subject. This, without a doubt, made be a better Software Developer. All of this for free.<p>Physically attending university has two main advantages as the article points out: Discipline for people who can&#x27;t work when not pressured (ie deadlines) and of course networking (meeting with companies on campus etc)
评论 #21433725 未加载
lowercasedover 5 years ago
&quot;College degrees far outweigh teaching yourself to code (Or coding bootcamps), as they provide you more skills than simply knowing how to code.&quot;<p>But the majority of the skills listed are not intrinsic to computers, computer science, or software at all.<p>&quot;There are many skills that Developers now require besides just coding. They need time management skills, organisational skills, people skills, translating skills, negotiating skills.. the list goes on. These skills are often gained through completing an undergraduate degree.&quot;<p>Most people will get experience in exercising and developing those skill sets with almost any degree program.<p>&quot;Certainly there is some level of prestige that comes with having a degree... it is, in a way, a validation stamp that says… “Yes - you have the skills to be a Software developer”.&quot;<p>Umm... not really. We&#x27;ve probably all met people with CS degrees who were not really all that capable of doing day to day development.
评论 #21432564 未加载
评论 #21431702 未加载
pmontraover 5 years ago
CS is not Software Engineering, it&#x27;s more about research than about coding. But let&#x27;s say the post is about SE vs self teaching. Is it better to have a teacher or to go self teaching? I think a teacher is better. A teacher can bootstrap us faster and teach us something important we wouldn&#x27;t randomly step into or would underestimate. Then I think all of us know that most of our coding knowledge comes from self teaching (the google &#x2F; practice loop).
bitcuriousover 5 years ago
That 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.
评论 #21431813 未加载
pubbyover 5 years ago
Everything 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!<p>IMO the advantages of CS college are this:<p>- You can reach a higher salary.<p>- It&#x27;s easier to learn hard math&#x2F;CS ideas in school than on your own.<p>- It&#x27;s easier to make friends in college than elsewhere.
评论 #21432108 未加载
评论 #21431690 未加载
评论 #21431631 未加载
neoludditeover 5 years ago
Nothing in this article pertains specifically to a CS degree -- time management, communication, and networking are all skills that would be picked up by any college degree, and would arguably be stressed even more heavily in a, say, liberal arts degree.<p>Perhaps the author would be even more in favor of a history degree and teaching yourself how to code than a CS degree.
innocentoldguyover 5 years ago
I&#x27;ve been a software engineer for 30 years and by far the best programmers I&#x27;ve ever known were all self-taught.<p>I&#x27;m not knocking college degrees. I have one myself. However, those who are self-taught tend to take far more initiative and invest far more time in studying and understanding how things work than those who just got a degree. They seem to be intrinsically drawn to the craft and don&#x27;t just do it for grades or accolades. Software engineering is an integral part of who they are and they are brilliant because of their unquenchable fascination with it. At least that has been my experience.
评论 #21433287 未加载
VLMover 5 years ago
Something missed in the article and most of the comments is the degree (or certification) provides a broad roadmap of, at least in theory, the entire topic.<p>I spent several years doing BGP and related router support; when I passed my CCNP I was forced to learn a lot of interesting broad topics ranging from multicasting to obscure details of low level packet switching.<p>When I was very young in the 80s and introduced to 1st edition K+R C I was unimpressed with pointers; why bother with all this? Later, I found pointers pretty interesting and useful for data structures and low level driver &quot;stuff&quot;.<p>This is hardly a problem solely for CS. Philosophy has the same issue. Self taught philosopher almost certainly means maybe one favorite author and maybe one book named something like &quot;The philosophy of (insert pop culture movie title here)&quot; and little more. Even a pretty lame intro to philosophy class will be much more broad.<p>An enforced broad education of a topic can be very useful. That seems to generally be missing in online education. A lot of effort over the years has been put into very tiny topics like &quot;how to teach kids the derivative of x to the y power&quot; but very little effort seems to be put into &quot;how to decide what is learning enough of calculus, how to measure it, and how to pinpoint lacking areas&quot;
buro9over 5 years ago
Both.<p>A CS degree is learning and not just a bit of paper. It will give fundamentals and breadth, but not necessarily depth because they have to cover so much ground. It doesn&#x27;t teach how to code, they teach how the systems work.<p>Self learning can give you the depth in an area that interests you, and provide the experience to debug and live with code you produce or to take on existing systems by contributing or interacting with OSS.<p>They are not mutually exclusive... If a CS degree is available to you, do both.
svckrover 5 years ago
At the risk of pointing out the obvious: If you live in a country where a CS degree from a decent university is not even close to costing six figures in tuition fees (for example in most of the EU), just get the degree <i>and</i> learn how to code by yourself.
评论 #21433334 未加载
评论 #21433124 未加载
glangdaleover 5 years ago
The problem with these articles, and discussions of same, is that they rapidly degenerate into festivals of self-praise.<p>Long term <i>everyone</i> is teaching themselves to code, or picking up skills on the job. Maybe I&#x27;m an idiot, but almost every skill that I have has gone almost 100% in and out of cache over the years. Having had a decent foundation at one point is probably helpful, and struggling through a highly mediocre CS PhD (the program at CMU was excellent, but <i>I</i> was pretty shit at the research side) gave me some lifelong skills and interests. However, almost everything that I can do semi-competently now is a product of repeated independent study and learning on the job.<p>Many of the skills that I now think of as bread-and-butter weren&#x27;t even a thing when I was an undergraduate or early grad student. SIMD programming was pretty much non-existent on mainstream processors (although I learned some nice parallel prefix stuff in a parallel algorithms course). Computer architecture is hugely different. C++ is nearly unrecognizable - when I started C++ programming, half the language wasn&#x27;t even really there (no templates, and exceptions exploded in weirdo ways) and the emphasis of how people programmed back then was totally different.<p>In the end, everyone will either be a self-directed learner or GTFO into management.<p>The skills you will get from university can be deeper, but I&#x27;ve met plenty of people who managed to escape CS degrees without learning anything profound. They can also be &#x27;wider&#x27; - I learned a lot of useful stuff in pure mathematics (graph theory and combinatorics). There&#x27;s nothing stopping a truly inquisitive person from picking up a lot of this on their own, but the structure of university is good for a lot of folks.
评论 #21433653 未加载
ARandomerDudeover 5 years ago
Self-taught programmer here, in industry for 10 years now.<p>&gt; Deadlines<p>I have these at work.<p>&gt; Teamwork<p>I have this at work.<p>&gt; Communication<p>I do this at work.<p>&gt; Prestige<p>I have this from doing a good job at work.<p>&gt; Networking<p>I do this at work.<p>Sounds like I&#x27;ll be fine without a CS degree.
评论 #21432980 未加载
tikhonjover 5 years ago
This article is just a list of unfounded assumptions about the side-skills that CS programs teach . In my experience working with fresh CS grads and PhD students, these skills are <i>not</i> taught with any consistency and have to be picked up in the first six months to a year of full-time work. At the end of the day, an academic program is just a loosely connected set of courses that don&#x27;t even do a great job teaching the subjects they&#x27;re focused on, so we shouldn&#x27;t have high expectations of how well the courses teach skills they <i>aren&#x27;t</i> focused on!<p>The 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&#x27;s a good thing too, because I&#x27;ve worked with <i>numerous</i> CS grads who:<p>• are weak communicators, especially in writing<p>• are <i>not</i> effective in a team, either for interpersonal or technical reasons (ie writing unmaintainable code)<p>• are not particular fast or effective, especially in situations where projects and priorities are not fully specified<p>Now, to be fair, <i>some</i> fresh grads are great on all these points. Just as I&#x27;ve worked with ones who are incompetent, I&#x27;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 <i>on top</i> of getting a CS degree. It&#x27;s hard to reason about counterfactuals, but I am sure that the same fresh CS grads who are incredibly effective would still be roughly <i>as</i> effective even if they had taken a different path to becoming a professional programmer.<p>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.
amursftover 5 years ago
This is a bizarre article because in some sense getting a computer science degree has advantages to teaching yourself to code, but I don&#x27;t think the article really says any of them and instead pinpoints other things that as a self-taught coder were not an issue for me: teamwork, time management, people skills, translating skills, negotiating skills, etc.<p>What I think I missed in a CS degree was study of lower level fundamentals of operating systems, compilers, databases, algorithms. Things that you don&#x27;t necessarily get exposed to at a deep level building out a Ruby on Rails web app. And teaching yourself to code you can still seek those out to, that was just my particular path into software development.<p>I think the article could be strengthened by mentioning and focusing on some of those things.
larussoover 5 years ago
I’m a complete self taught programmer. I guess it took longer for me to reach specific knowledge as others but I’m a passionate programmer. I read tons of books, read a lot of articles and opinion pieces of how to do x (not that I follow them blindly) and most important I read and write a lot of code.<p>Granted not everyone does that and my motivation was never just to get a job. The second part which I don’t really concur with are the soft skills parts being taught during a CS degree. I happen to know plenty of new programmers who constantly overcommit and or get fed up with small details. I think that these skills can only be acquired at work with the help of good instructors.
nashashmiover 5 years ago
It&#x27;s funny the article never mentions learning actual code and learning essential algorithms as part of what makes CS degrees a good choice.<p>What it does mention:<p>Struggling as a community; learning independently plus from people who are learning independently of you; networking with people who are committed to the same career path as you; and confidence that comes from having a degree. (I&#x27;m paraphrasing extensively)<p>Since this is something that all college degrees offer especially under bad professors and terrible academic programs, I think the lesson here is heavy goalpoints combined with little guidance makes for successful students and career paths when backed with prestigious degrees.
lmilcinover 5 years ago
I find people really misunderstand the purpose of a degree.<p>The purpose of a degree is to get knowledge (yes!) but, more importantly, work and get connected with people in the field and get a proof of your ability and the work you put in in the form of a degree.<p>Now, if you want progress further in the field, maybe you think about teaching or doing research, this is going to be pretty important.<p>On the other hand if only thing you are going to do is programming for a big co then this is, in my opinion, pretty much a huge waste of time.<p>You can teach yourself all the skills needed to be better developer than CS degree would ever teach you, better, and in shorter time while working for big co and getting paid at the same time!<p>Understand that programming in itself is pretty basic skill when compared with other skills necessary to be a good developer:<p>- debugging complex systems,<p>- dealing with complexity in large systems,<p>- getting good at very specific software stack that is used for your project,<p>- learning how to communicate with your team, your boss, your stakeholders,<p>- and so on.<p>Learning those things takes more time than learning how to program and learning them can only be done while working for a company.<p>On the other hand you can learn to program on your own and if you are really committed, just get a copy of CS curriculum and do it on your own.<p>There is some worth to having a CS degree (it gets you into interviews more and maybe a bit higher salary). But I think this is false thinking.<p>First, you only need to find one job. If you exclude all companies that require CS degree there is still huge number of good employers with as good rates to offer.<p>Second, your CS degree also means you just lost about 4 years of real world experience (I assume you would still need to spend about a year learning on your own before you can realistically start work as a programmer). This additional experience would count as much or even more than the CS degree and it would also be huge economical advantage for you (getting paid instead of getting in debt?)
评论 #21433757 未加载
评论 #21433691 未加载
blondinover 5 years ago
these have nothing to do with coding skills!<p>any degree will get you those skills. project planning, deadlines, networking, dealing with people, etc. college will always give you access to people.<p>what is missing is basically easy &amp; sometimes free access to knowledge. god i miss having access to nearly any library and all these books, and all these publications you can print for free. i still have a trove of PDFs on a USB stick somewhere...<p>and also all the discounts you get on most software. poor student me would have never had the monies to buy full visual studio back then...
评论 #21431736 未加载
rossdavidhover 5 years ago
So, I have two engineering degrees, but not a CS degree, so I&#x27;m kind of an intermediate case between the CS degree and the self-taught programmer, but closer to the latter.<p>The only one of the advantages listed in this article that seems true to me, is the Prestige of having a CS degree. There are plenty of employers who will require a degree, and a few which prioritize a CS degree.<p>In general, CS majors spend their first few years unlearning all of the theoretical constructs they were taught in college. 90+% of the programming which needs to be done in the real world is CRUD with a few special features. Rarely are those special features related to anything taught in school, they are usually horrible hacks that are related to the legacy system your new system has to connect to.<p>There are, of course, exceptions, and for a few employers a CS degree is a big advantage. But, unfortunately, much of the teamwork and communication skills which the author lists s advantages of a CS degree, are again something where the CS major has to get over their schooling, and learn to communicate in the language that everyone else on the team understands.<p>Which, of course, nearly every CS major learns to do, they&#x27;re smart people. But the only thing they really get out of the CS degree that matters in the real world, is the prestige, in 90+% of cases.
评论 #21434303 未加载
stewbrewover 5 years ago
Computer science is something different than software engineering, which is something different than coding. One can discuss about which one of these albeit partially overlapping skill sets is best for which job&#x2F;task but this doesn&#x27;t change that these are different things.<p>The problem with &quot;teaching something yourself&quot; is that you don&#x27;t really know in advance what is important and how things are connected. If you knew already, you wouldn&#x27;t have to learn it.
hvasilevover 5 years ago
The author does not provide any reason why these skills cannot be learnt outside of an academic environment. It is possible to develop alone your programming skills to an extent where you can get hired as a junior developer. The rest can be learnt in the workplace.<p>Curiously one of the best developers that I have pleasure of knowing don&#x27;t have any degrees. If I could go back in time I would have never wasted 4 years of my life going to a university for a CS degree.
vorticoover 5 years ago
This article doesn&#x27;t answer &quot;why a CS degree is better&quot; but instead &quot;why <i>any</i> degree plus programming knowledge is better&quot; than just programming knowledge. Of course it&#x27;s better if your time was free, but is a 4-year college degree better than 1-2 years learning to code? That&#x27;s a huge tradeoff that you&#x27;ll have to evaluate for yourself. I think not considering this tradeoff is like comparing apples to oranges.
keiferskiover 5 years ago
It is interesting to juxtapose this conversation with semi-recent comments by Peter Thiel on how the West has technologically stagnated in the past ±50 years. Perhaps there is a link between &quot;no-heavy-CS-required web development&quot; becoming the dominant tech industry and this stagnation.<p><a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=nM9f0W2KD5s" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=nM9f0W2KD5s</a>
Mikeb85over 5 years ago
Education is a great thing. Some people can learn without a formal education, that&#x27;s great, but it doesn&#x27;t mean school is a waste of time.
dathinabover 5 years ago
The thing is this is not a either question. It should be is it worth to teach yourself coding <i>and</i> get a CS degree.<p>Many CS degrees do not teach how to code, they might give you some starting help but expect you to learn coding in parallel to doing the CS degrees.<p>Also IMHO learning time pressure, coding and teamwork Works best in a good company, where there is some time to give feedback&#x2F;teach the junior. But the how many of the companies hiring Juniors do that? In how many companies will you not only learn not much, but potentially even mislearn thinks? Are you able to judge this aspect when you just get started as a junior?<p>My recommendation is to do a part-time Studium spending half the week in University and half at a company as junior programmer. Well at last if the universities you are interested in support this (many German universities do). Note that I explicitly do not mean a dual Studium.<p>PS: There are other benefits of a CS degrees which only matter in some cases, e.g. learning how to read CS papers , typical CS notations, better understanding of basic algorithmic things. Etc.
newshortsover 5 years ago
In my experience it depends more on the passion of the individual. Finding amazing self taught devs is a real score. The most creative coders I’ve worked with were self taught (not from code camps), likely due to the intense amount of commitment and interest required to teach themselves on that level.<p>Not saying CS degrees aren’t creative, IMO they just seem a little more prescriptive in their solutions to problems.
c000e3over 5 years ago
Hi, new here. I use emacs for 95% of my uptime. I&#x27;ve created a lot of little programs in bash, python and PHP. Also admin an imageboard, my personal website that i update via SSH, have running some telegram bots that i edited a lot. Actually i&#x27;m working in a FFMPEG automatizer un bash.<p>I don&#x27;t know if you can do that, maybe yes, sure yes and a lot of more things. The thing, anyway is that i&#x27;m an almost lawyer (working, but without degree yet) with absolutely no academic preparation in tech. Just internet, manpages, and intuition.<p>If your intention are just code to have work and pay debts while obey someone, sure CS degree is useful... but if you want code to resolv things that you actually needs, no, not in all: systematize all the knowledge in an scholar scheme just would be a lost hacking-time.<p>In the other hand, i havent much work as lawyer, lol, whatever.
mathattackover 5 years ago
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)<p>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.<p>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)
6510over 5 years ago
Teaching yourself to code is a terrible idea, I speak from experience. There is really only one issue, one ends up asking why things are the way they are in stead of learning how to be a proper drone and dream of your own cubical. Basically, asking why things are the way they are sets you up for almost endless frustration. The frustration only ends when you find employment far far away from these people and their creations. Every generation of trained programmers is less familiar with the clean and proper ways we use to do things. Its great for them to learn to glue things together and meet with the deadlines etc. You will enjoy non of this if you teach yourselves.... its why this.... why that.... why am I using a 1000 line lib for something that is 2 lines of code? wwwwwhy?
stummjrover 5 years ago
I disagree with this article in so many ways. I have a CS degree and I work with many people who don’t, and they are just as good as (or even better than) me at all the points raised by the article.<p>They meet deadlines, they are incredibly good at communication and collaboration and they have pretty good networking. Most of these traits come from the fact that they needed to develop them in order to succeed in learning by themselves.<p>It is a pretty limited view of the world to think that only college can bring you this. Immersing yourself in a coding bootcamp for some people means leaving the jobs they need to survive in order to have a better job in the future. I can’t imagine how being on college can teach more about meeting deadlines, teamwork, communication and perseverance than that.<p>I wish this article provided more facts to back its beliefs up.
ralusekover 5 years ago
I think the best path is to learn to code, and then learn CS. The concepts are so much more concrete at that point.
pavelevstover 5 years ago
IMO if need just get a job then having degree should help. If you enjoy building stuff and have curiosity then it will be more fun to learn it by yourself. Learning a language and basic concepts can take just few months, but that is just a beginning of an endless journey. The skill of learning by yourself is probably most important for engineers because there are always new things to learn, and every job will require you to learn something new. Keep in mind there are many other things that we can learn <a href="https:&#x2F;&#x2F;medium.com&#x2F;our-team&#x2F;the-tale-of-the-two-lumberjacks-64f575d93d6" rel="nofollow">https:&#x2F;&#x2F;medium.com&#x2F;our-team&#x2F;the-tale-of-the-two-lumberjacks-...</a> Knowledge should be like a lake, wide and deeper in a middle
reimertzover 5 years ago
I’d argue what you do before you get your first job doesn’t matter as long as it helps you moving towards getting there. The faster, the better.<p>What is important is to understand what you want to do first since CS is very broad. If you can find a subset within CS, such as web development, app development etc, then things become easier.<p>It enables you to get a job&#x2F;internship quicker; boot camps, self-learning, bachelors degree, so many paths!<p>Once I got my internship at a company located in a tech hub city, the connections I got there and the ability to write it on my resume was all I needed. I went back home and started my masters while working remotely but I very quickly realized that no one asked for a degree anymore, references &#x2F; portfolio was all I needed.<p>I continued taking my masters, but only doing the courses I enjoyed. :)
codingdaveover 5 years ago
Most of the points listed in this article will also be learned by working in the real world, on a good team. And if you get a degree in CS just to learn to code, you are doing it the hard, expensive way.<p>I do believe in higher education. If you want a broader and deeper education than what you get in high school, with new ways to approach learning and applying your education to larger projects, a degree gives it to you. It also gives you the academic credentials to pursue higher degrees. And the point that some prestige can come with a degree is true.<p>There are reasons why a degree is a good thing. But for the most part, this article doesn&#x27;t accurately explain what they are. If you just want to learn to code, get a job, and do it well... you don&#x27;t need a degree for that.
vfclistsover 5 years ago
I think the issue here is not whether a CS degree is important, but whether the people doing the hiring consider having a degree relevant.<p>In many accounting related areas, having a degree is not important. The accountants, finance and management related executives who need the programmers didn&#x27;t need CS degrees to create their Excel spreadsheets and macro, so why should they think a CS degree is important?<p>Try getting a programming job in an engineering domain without a CS degree. They would rather have a physics or maths major and teach them programming rather than a person with programming experience without a degree in that field.<p>It all depends on that programming tasks are required. You certainly don&#x27;t need a degree to code for AWS or Kubernetes, but you will need it in hard STEM areas.
ci5erover 5 years ago
Embrace the healing power of AND. (OR is for losers)<p>I taught myself to code, and sold my first commercial project at the age of 14. And learned a lot.<p>I then went on to get a CS degree (in addition to physics, math and EE degrees - all undergrad). And learned a lot. (The structured program of learning about Databases, Compilers (and more about compilers!) and Operating Systems was far above what I would have (could have?) learned on my own. Data Structures and Algorithms - that is straight forward enough if you already know how to code)<p>And then went on to sling a LOT of lines of code. And learned a lot.<p>Now - I don&#x27;t think ANY of those (except maybe the last one) teaches one to be a systems engineer, which one needs to be for large systems, but they are all excellent building blocks for when you get there!
torgianover 5 years ago
After reading the short article, I can’t agree on all the points the author made. But, this really depends on your situation.<p>In my case, I taught myself how to code over a few years.<p>I got a job with Georepublic and I love it. I’ve learned a lot.<p>But, in my case, I had the skills that the author mentions already. Time management, communication, etc.<p>All that came from my previous careers ( Navy, then teaching.)<p>And quite frankly I’m not really interested in studying computer science. I studied criminal justice and psychology.<p>For my Masters, I’ve decided to study Geoinformatics (which is directly related to the kind of work I’m doing at Georepublic).<p>So, in my opinion, I feel like if someone is getting into programming, they should study something related to the field they are in. Of course, this is assuming the person is older, changing careers, etc.
overgardover 5 years ago
Did anyone else look at the About page and notice the &quot;Awarded Top 50 Programming Blog&quot; image with apparently no attribution of who gave that award or what it is? What&#x27;s the deal with that? It gives the impression of a made up award he gave to himself...
diminotenover 5 years ago
I don&#x27;t think a CS degree will ever compete with genuine interest. People get attracted to the hot job market and the insane FAANG salaries, but those people will never stack up to the folks who dumped their childhood and adulthood into understanding how software works.
nottorpover 5 years ago
My 2 cents:<p>The CS degree ain&#x27;t going to teach you how to code, you&#x27;ll have do that yourself anyway.<p>What the CS degree will help you with is handling high complexity and&#x2F;or harder problems. Which can be invaluable in anything except the most simple software.<p>So... ideally you&#x27;d get both :)
pcmoneyover 5 years ago
I am sorry but no.<p>All of that can be learned during your first internship where you get paid instead of paying.<p>I would argue college delays maturity and does not foster it. Hanging out with a bunch of people that are the same age, same life stage, etc. doesn&#x27;t exactly add life experience. Continuing to do &quot;hoop-jumping&quot; work just like we all did in high school also doesn&#x27;t seem to be novel. Perhaps its the keggers and binge drinking that bring the maturity the author references?<p>As for prestige, if its a top 10 program sure, otherwise (and often even then) don&#x27;t waste your money.<p>Disclosure: Current engineering lead with multiple Degrees (1 Summa Cum Laude) and a bootcamp CS education at one point (which wasn&#x27;t all that valuable).
评论 #21431708 未加载
jstewartmobileover 5 years ago
Personally speaking, CS degree has been a negative indicator. Autodidacts, and people coming from math, physics, engineering, finance have all been outstanding hires.<p>CS grads have typically been strong on opinions, weak on everything else. The whole program is just too &quot;<i>meta</i>&quot;--and it is a huge negative!<p>You can give an idea to an autodidact, or a math grad, or a real-science grad, and they will approach it with an open mind. Give the same idea to a CS grad, and God help you if it conflicts in any way with their indoctrination.
lbjover 5 years ago
I think CS i still very much a discipline we fail to teach - And no wonder when you look at the curriculums.<p>In our last hiring round, we filtered a lot of applications down to 5 individuals we wanted to interview. During the interview they were all asked to write their own implementation of Fizzbus in whatever language they desired. 3 out of 5 completely failed to arrive at a working function, the 4th was able but with massive help. The 5th were hired. All had 4+ years of education in CS.
评论 #21433284 未加载
sgammonover 5 years ago
Also, don’t confuse prestige with pedigree. An undergraduate degree is the norm now, and prestige implies some outlier quality<p>“A students work for C students” isn’t a saying the other way around
agumonkeyover 5 years ago
A semi solid advice:<p>if you&#x27;re excited by current programming trends, and only want to ride that, don&#x27;t invest in CS. CS is amazing, but it&#x27;s usefulness in the job market is thin. In my limited experience very few people will care (or have to) about strong abstractions and proofs.<p>On the other hand knowing how to hack mobile responsive react thingies will get you going nicely.<p>If you want to explore the mathematical side of things, infinite ideas .. pick CS books or cursus and enjoy.
theonemindover 5 years ago
I went to a top 10 CS school, and and picked a CS major in part because I already had some interest in programming. I beat them all at programming easily, even in the honors classes. I&#x27;m not even good at it, I didn&#x27;t take it seriously or anything; I beat them all by having a fairly minimal genuine interest.<p>I value the degree as something interesting I spent my time doing, but it taught me very little in the way of actual programming.
cgrealyover 5 years ago
not everything in life is about money and coding skills.<p>I loved my time at university. I played in bands, met my future wife, made lifelong friends and occasionally even studied.
tanilamaover 5 years ago
A CS degree means better HR screening pass rate.<p>Isn&#x27;t this obvious...
评论 #21431732 未加载
Isinlorover 5 years ago
I thought myself how to code as a kid. My interests pretty quickly converged on AI and I saw academic career as the best path for me. I was fortunate to have a chance to study abroad. I&#x27;m Polish and my mother ended up a cleaning lady in Belgium (she lives now better than she did as a shop owner in Poland). I decided to study at Belgian university, KU Leuven. I had to learn Dutch in 9 months, from 0 to academic level, but I failed on 4th out of 5 levels. I went to work at an English speaking startup, but I kept on studding Dutch in evenings, still with the goal of getting a degree and moving to academia. I passed the 4th level, but keep on failing the 5th. I saw a job opening as Software Developer at Dutch speaking KU Leuven team and decided to apply. Even tough I could not get admitted as bachelor of CS, they hired me as software developer. I still work at KU Leuven, I got 3 promotions in a year and a half, but I never managed to get admitted as a student at this university. So, I decided to search for academic luck in the Netherlands. I got to do what I pursued to do for so long - 4 years in total.<p>But to be honest, I&#x27;m not happy and I feel like I&#x27;m living sunken cost fallacy.<p>Studying is awful!<p>By myself I always studied topic deeply and toughly. I searched for variety of opinions, approaches. I spent as much time as was needed for me to feel like I understand the topic fully - to me it is when I stop encountering novel ideas. I enjoyed freedom of curiosity and learning.<p>Studying, for me, is the opposite. I no no longer master topics. I don&#x27;t feel like I&#x27;m learning. I study to pass dull exams. My learning is shallow. Deadlines and strict curriculum kills my curiosity. The old technique of studying the day before exam, passing and forgetting is back.<p>I still study on my own, the way I always did. I love reading latest papers from Arxiv. I love learning, but I hate studying. The vision of becoming researcher is still in my head and it&#x27;s the only thing that keeps me from dropping out. But the more I experience academia, the more cynical I become.<p>Also, regarding communication and organization skills. I feel like working thought me a lot more about communication and cooperation than any school project. At work you are around professionals. People want to get things done. There are processes and managers in place. There are people with battle earned experience that you can talk to on daily basis. People who often know a lot more about getting things done than academia people ever will.<p>I literally feel like my random work colleagues could give better lectures about work organizations than the ones I received from some academia people.
gherkinnnover 5 years ago
I’ve made the opposite observation.<p>As someone with no relevant CS background, the points made by OP are exactly what granted me my first job.<p>Having to sit down and force myself to learn something that is not part of my day job that is the hard part. Or worse, I don’t think of something to be relevant, precisely because I know too little on a seemingly foreign topic.<p>And that’s where I see a degree as valuable.
dangusover 5 years ago
The article should mention breadth.<p>University education forces you to take courses that may be outside of being directly related to your field.<p>My computer engineering degree also included classes in the following subjects, some mandatory, some chosen by me:<p>- Film history<p>- Multiple English&#x2F;Literature courses<p>- Geology<p>- Physics<p>- Chemistry<p>- Macroeconomics<p>- World History<p>All these subjects made me a more well-rounded person, not to mention the diverse relationships with people that didn’t just come from my particular small town.
评论 #21431938 未加载
评论 #21433271 未加载
RocketSyntaxover 5 years ago
CS degree. Even in product management roles, they all want CS degrees.<p>I aced a few CS classes, dropped out, and continued to teach myself to code for several years. That seemed to do the trick. The classes were just so boring&#x2F; irrelevant, and I wanted to hack on personal projects instead of professorial tasks.<p>I doubt zuck was learning php at harvard when he wrote FB
cyrksoftover 5 years ago
Why do people define CS as coding? Computer Science is much more than just coding, it’s a science. At a higher level CS involves a lot of mathematics and statistics. Coding is just a tool for a computer scientist as a hammer is a tool for a builder. Learning to use a hammer is not the same as learning to build a house.
评论 #21434050 未加载
Pete-Codesover 5 years ago
To think you only learn soft skills through a degree is bizarre tbh. I&#x27;ve interviewed 32 developers without CS degrees that are doing great without one! ( and didn&#x27;t need a degree to learn soft skills) <a href="https:&#x2F;&#x2F;www.nocsdegree.com" rel="nofollow">https:&#x2F;&#x2F;www.nocsdegree.com</a>
gigatexalover 5 years ago
To those who self study: how or where did you learn the design patterns for good code? Anyone can learn how to write text book programs in any language but working on a team and diving into a paradigm say MVCC or something doesn’t seem as easy at least for me
评论 #21432947 未加载
dkerstenover 5 years ago
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&#x2F;lectures.<p>Of course you totally can learn everything you would ever want or need yourself, but there&#x27;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.
评论 #21437281 未加载
weirdstuffover 5 years ago
You&#x27;ll likely deal with each of these no matter which route you go; these things just occur naturally. School provides a little safety margin, but at a cost. And there&#x27;s a different cost to not going to school. Choose your own adventure.
jitendracover 5 years ago
I have a degree, but i don&#x27;t think it is necessary. I am a self learner, learned coding by finding things how they works. If you are self-motivated, diy code learning is great.
chxover 5 years ago
One of the dirty secrets of university degrees is what you majored in <i>barely matters</i>. You will not use it directly much. What you learn at university is a universal way of thinking and learning.
bradgnarover 5 years ago
i agree with the title, but not with the article. All the things listed in the article can be learned outside of a CS degree. What a CS degree does is force you to learn the academic which gives you the foundation to work at FAANG or some other company that has high [principal] engineering levels, or even just the awareness of knowing what you don&#x27;t know to round out your skillset post school.<p>Having said that, a CS degree isn&#x27;t necessary, just better under the premise that knowing more is better than not knowing more.
z3t4over 5 years ago
The important part is not your knowledge, its all about your network.
tempsyover 5 years ago
A CS degree helps you get an interview. That&#x27;s pretty much it.
评论 #21431757 未加载
dbsmith83over 5 years ago
Why was this article even posted? Sure, this is a debatable topic, but the quality of this article is... lacking. Waste of time read, though thankfully not much.
chiefalchemistover 5 years ago
The difference is this:<p>When teaching yourself how to code, coding is the ends.<p>When going for a CS degree, coding is the means.<p>Full disclosure: I have a CS degree so my perspective has a natural bias to ot.
thedeusxover 5 years ago
Err... everything in this post says why you should get a college education, and nothing about why you should specifically study computer science.
ilrwbwrkhvover 5 years ago
A cs degree is useless. Much better to learn the things op mentions through actually working with other people on a project like open source.
sundayeditionover 5 years ago
One might also argue a degree in Journalism or English is better than teaching yourself to write persuasive arguments by blogging
WalterBrightover 5 years ago
Coding is like using the tools in the machine shop to fabricate parts.<p>CS is designing the parts.<p>They&#x27;re different skills.
mantapover 5 years ago
Completely disagree. Programmers come from many different backgrounds. Having a non-CS degree is a strength because it means you see the world from a different perspective and have different skills. For instance programmers with a physics background are highly desirable in several spaces. And there are many people with no degree who make very successful careers.<p>What matters most is your passion for programming. Because if you are curious enough you will learn all that you need.
kalium-xyzover 5 years ago
Any justification for needing a degree to do anything which does not require a degree is a sunk cost fallacy IMHO.
sys_64738over 5 years ago
The synopsis is enough to tell you the article won’t be worth reading. A CS degree isn’t there to churn out coders.
sgammonover 5 years ago
Wow, no kidding? You’re saying it’s easier WITH a degree? Unbelievable insight<p>Now, if college were available as a choice to everyone, maybe you’d be making a point applicable to the people who could actually make use of the advice<p>But, alas, that’s not how it is. Even naturally gifted programmers born with the option go to school 9&#x2F;10 times, because they have a choice and the choice is obvious.<p>Way to entirely miss the cause for the symptom
jokoonover 5 years ago
A degree will often act as gatekeeping, in my view. There is a difference between a degree and an education.<p>Once you have a computer and an internet connection, you&#x27;re good to go. A degree will cost a lot more, especially today.<p>Getting a CS degree is better, of course, but it&#x27;s like everything, it has a cost. It just happens that teaching yourself is possible and much more accessible.<p>There are pro&#x2F;cons for both.
pcvarmintover 5 years ago
False. Teaching yourself to code is much better than a CS degree.
rdiddlyover 5 years ago
I think any degree will satisfy most of those, not just a CS degree.
_fbptover 5 years ago
When loading this page, it slowed Firefox to a halt. It contains hundreds of 1x1 iframes for some reason, labeled aswift_(number), along with an Amazon marquee at the top. I would call this website malware at this point.
评论 #21432801 未加载
ryanthedevover 5 years ago
All that matters is how much effort you put into it.
mam2over 5 years ago
I was coding at 12. Getting a cs degree is harder..
phillipseamoreover 5 years ago
I fire more workers with degrees every year then people with out them. My best programmer studied carpentry.
janpotover 5 years ago
a writing degree is better than teaching yourself how to type?
natecavanaughover 5 years ago
The path of my career took a rather unorthodox route, so I can see both sides of the argument here. I’m a graphic design dropout (completed two different tech schools and took art, fashion marketing, business and philosophy courses at a local community college, before going to a proper university at 21, completed a year, moved home when my father got cancer and started freelancing) who never intended to become a developer, but a developer I am (have built and managed a large-ish team of other developers and designers [~60 or so globally] and have done fairly well for myself). I can see the value of a university education, but can also see the validity of those who go a different route (whether by choice or circumstance).<p>What I thoroughly enjoyed about college was the depth of study with dedicated time to go into foundational principles, and meeting and working with people far more talented than I am. But would I pay for that privilege if I had to foot the bill? Probably not, or I’d choose much more frugally.<p>I get the feeling from a lot of the “school is unnecessary” arguments here is that to some degree we fashion ourselves as Good Will Hunting’s who can make it just fine. And there probably are actually quite a few here.<p>There’s a quote I love, “Money makes happy people happier and unhappy people unhappier”. I feel like the same could be said about a college education. A passionate learner will find it rewarding in ways that the average student wouldn’t, or even a bored student may squander but feel entitled to a position in life because they got a degree, but I think a passionate and humble learner will probably end up doing well no matter the route they take.<p>For me, the reason I even got into developing was because, ultimately, it&#x27;s the act of creation and building that I enjoy, and both design and software engineering allow me to accomplish that in a way I find rewarding.<p>I&#x27;ve known folks who graduated with either a BA in graphic design or a BS in computer science, and with some of them, my self learning, both on a fundamental principle learning level and on an execution level surpasses them. But of course, I know many who are passionate about their field and just blow me out of the water. And I&#x27;ve known autodidacts that also blow me out of the water creatively and on a skill level. So I believe ultimately, the final mix is really a result of raw talent, hard work, and a passion for what you&#x27;re learning.<p>I also think some of the &quot;you must get a degree&quot; arguments miss the value of just pure, raw dogged persistence. I&#x27;ve had people with masters degrees in CS tell me I&#x27;m a genius simply because I banged my head against a problem until it cracked (the problem, and my head to some degree ;). I don&#x27;t say that egotistically, because I know that had I had a more formal and dedicated education, those problems would have probably resulted in less time with me banging my head against them, and the scope of problems I could apply that persistence to would be greater. But if you choose to go for a shorter route, you <i>will</i> have to work harder in the end, both to compensate in the eyes of those hiring, and doing your own study and learning to actually get to the level you want, and even then, being self taught really only gets you so far.<p>Ultimately, it really comes down to, what do you want out of this life?<p>I honestly can&#x27;t see myself being content with only doing software engineering or design. That&#x27;s both a strength and a definite weakness that I am constantly battling with.<p>There are some other soft aspects not really mentioned in this article or the comments that I do feel you miss when you&#x27;re self taught.<p>One for sure is that not having a degree feeds into Imposter Syndrome. You can honestly far exceed others with dedicated degrees but no passion, yet some part of you and your experience will eat away at those accomplishments (of course, this could be purely personal, but anecdotally, I&#x27;ve heard it from other self-starters).<p>Another is that there is a danger, until you get amongst people who knock your socks off, that you&#x27;ll feed into your own Dunning-Kruger effect. It&#x27;s incredibly easy to absorb knowledge on your own and assume you&#x27;re God&#x27;s gift to <i>insert skill here</i> until you are surrounded by people who excel in ways that you don&#x27;t and struggle in ways that you don&#x27;t. But the autodidact is very often surrounded by people who aren&#x27;t in their chosen field and so it&#x27;s very easy to seem far more competent. I would say that this definitely is addressed by learning on the job, provided you luck out and learn on the job from truly brilliant people.<p>These things are definitely not solved by having a degree (I think the internet and open source have really been a boon to many in addressing the second downside as well).<p>The other soft skills mentioned in the article are just flat out not true inherently. I&#x27;ve known people with varying levels of degrees who are atrocious communicators and their spelling and writing skills are ridiculously bad, and had them literally use the fact that they have a degree as a proof that they&#x27;re a-ok in those regards. Being able to communicate clearly, being able to communicate expectations and meet deadlines and promises (or summing it up, clarity of communication and integrity) are things that most colleges definitely don&#x27;t require in order to pass.<p>Like the other comments here, this is all purely anecdotal and going off of my own experience, so if I could sum it up in a way of how would I advise a family member to go forward, in general terms? I&#x27;d tell them to get the degree, hands down, if that&#x27;s an option for them.<p>But there are so many other factors that for them specifically, I may recommend skipping the degree altogether and get to work on building something they love.<p>I honestly think there is value in either course that you don&#x27;t get with the other.
mieseratteover 5 years ago
Not all degree programs are equal.
hirundoover 5 years ago
Why teaching yourself to code is better than a CS degree<p>* Far cheaper, no debt accumulated<p>* Follow your bliss in learning what you want, but still with the option to absorb the best of the CS textbooks.<p>* Not compelled to learn languages and platforms behind the curve.<p>* Less able to lean on teammates, you learn to solve problems more independently.<p>* There&#x27;s no illusion that your education has an end date, and that you can stop. Ever.
评论 #21431687 未加载
LudwigNagasenaover 5 years ago
Universities are such a waste of time for the whole society.<p>Having lectures in 21st century is already pointless (we have video on demand). And what is worse, we force professors to teach basic stuff to undegraduates when they could spend time doing their research. And general education requirements? Ugh.<p>Let&#x27;s be real, most of programming-related jobs don&#x27;t require knowledge of a 4 year undegraduate degree in CS even taking career progress into account (most modern jobs that only hire college graduates don&#x27;t require undergraduate degree level knowledge).
评论 #21431928 未加载