Live data from Hacker News

No CS Degree – Interviews with self-taught developers

nocsdegree.com

181–190 of 480 posts

Re: No CS Degree – Interviews with self-taught developers

#181
post #76

I just find these odd. Does anyone struggle with this stuff? They just make it all look so easy. I for one struggle quite a bit with coding, design, theory, and other aspects. I just don't get how so many people think coding is as easy as "reading a book" or "doing a tutorial".

"Coding" is as meaningless a term as "writing". Much in the same way you can leverage basic writing skills to achieve entrepreneurial success, you can do so with coding skills. A literary academic may still consider writing to be a substantial exercise, probably more so than the untaught.

Re: No CS Degree – Interviews with self-taught developers

#183
post #138

Earlier quoted context omitted.

> The problem with being self taught, at least in my experience, is that you end up being very strong in whatever areas it is that interests you This is absolutely key. One of the main advantages of a solid undergraduate curriculum is that it forces you to work your way through things that are important, but don't interest you as much. And this path is designed and supported by people with a much better broad view of…

I think it depends on the person and the experience. It's easy to say that a particular course was helpful, because it often is. But what's the opportunity cost? What other things didn't you learn because of all that time learning about, say, OS schedulers? Also, it assumes that you have access to a very high quality education. In lots of cases, the teaching might be mediocre (perhaps even at elite universities that…

Yes, nothing is perfect. But in general, it is hard to be a good guide to yourself in a new area. You can do it, but it is a skill that needs to be developed and most people don't have it (or rather, they typically have the depth-first part but not the breadth-first part, if that makes sense).

I wasn't even talking about the course quality (which as you note, is very variable) but about the curriculum.

One thing you can do as an individual teaching yourself CS, say, is to try and follow the curriculum of a known good CS program. There are issues with this, too, but at least you are getting some guidance.

The opportunity cost issue is a good point. One problem with following undergrad programs, say, is that only part of what they are doing is teaching you material, the other part is learning-how-to-learn stuff. If you are an independent learner of sufficient skill, some courses will be way too slow for you.

It would be optimal in some sense to have high level "key concept" material that you can survey efficiently and then decide when and where you need to dig deeper. It's a bit of a chicken and egg problem though, because if you are insufficiently skilled you will do poorly at the second part...

Re: No CS Degree – Interviews with self-taught developers

#184

I work with a twenty-something year old right now. He graduated from high school. Had his own non-tech company for a while after high school. Decided he wanted to go into coding. One of the best damn coders I've worked with in 25 years. Gives the toughest, most consistent code reviews. He's the type of programmer you can build a startup around. In another comment a few days ago, I mentioned a 10x engineer I knew. Gra…

What languages do they use?

Re: No CS Degree – Interviews with self-taught developers

#185
post #141

Earlier quoted context omitted.

CS is more than abstract theory. It gives you a foundation that you otherwise are unlikely to get. Self-taught means learning things useful for your existing job or things you find interesting. I'm work almost exclusively on the frontend, but my CS degree gave me enough foundation that I'm fairly familiar with compilers (I wrote one in college for a required course). I don't necessarily enjoy writing compilers. But t…

> But the fact remains that I can write a compiler. I can program in C or C++. I do understand pointers. None of this may hold any real value, but I wouldn't be able to do any of them if not for the degree. I liked your initial point, but the argument weakens... People absolutely have learned all the above things (and very well), on their own, outside of a CS degree, and I bet you could've.

[deleted]

Re: No CS Degree – Interviews with self-taught developers

#186
post #52

I sometimes feel like I have a leg up based on when I learned computers (self taught mid 80's to early 90's). At that time, everything was more low level, and there were fewer, yet higher quality books on the market. So I started off with W. Richard Stephens, K&R, Pike, Sedgewick, and others that you either had to really get it, or you wouldn't get anything. Not that this was the best way to learn, but you knew comin…

I started programming properly in 2010 when I was 12 or 13. Before that I did some small things in Inform 7, and now I remember it, Visual Basic, but I don't really consider that 'proper programming' as it was mostly cutting and pasting code with little understanding. I started with Inform 7, Python, and a little bit of Processing and Lua. I did three or four ludum dares and at some point I made most of a game in Lua with Love2d (around October 2012ish).

Maybe a few years later I started delving into 'hacker culture', and I picked up C with K&R (since it was almost universally recommended and easy to read), I also at some point picked up UNIX Power Tools (recommended in Linux Format) and The Practice of Programming. At some point after that I became really interested in Compilers and Operating Systems.

When I went for my first internship three years ago, the interviewer said I knew more about the things we talked about, than most other bona fide engineers they interviewed. The university-hired interns that sat next to me couldn't read the Erlang manual or documentation because it just didn't click with them, which while I can appreciate on some level that people have different sources of information that suit them best, it's still astonishing to me.

Consider that programmers started out as secretaries learning how to program the machine from the specification and the schematics given. A lot of the programmers I have met, probably wouldn't be able to cope with such a task, I include myself in that category.

I agree with you about the quality of books. A fair chunk of the books on my bookshelf from that era are 80s/90s to early 00s because those books are just an order of magnitude better written, with a high signal to noise ratio.

Can you imagine a modern language like Swift or Rust being taught to the same level, in the same space as K&R? I can't!

Re: No CS Degree – Interviews with self-taught developers

#187
post #9

I'm 39 years into a coding career with no CS degree. But as a compulsive auto-didact (probably a common syndrome among HN readers) it hasn't been a barrier. Self-learning is a continual, daily requirement for coders. If you can continue your education as needed for this job you probably also have the skills and interest to learn from scratch. I studied the same books and did the same exercises as my brother the CS ma…

As others have mentioned, there are many folks working in the gov world without CS degrees. This is especially true for older workers who graduated at a time when CS departments weren't common place at every college as they are now. However, if it's credentials that you are after, governments love certifications as well.

Re: No CS Degree – Interviews with self-taught developers

#188
I'm a 40ish FAANG Manager without a CS degree. I would point out that while I agree that it is possible to have a great development career without a CS degree, I wouldn't recommend doing it this way if you have a choice. So, if you are contemplating dropping out or skipping doing a CS degree and going right into the industry, you are going to face obstacles and bias throughout your career that having the CS degree will mitigate.

No one second guesses a CS degree, but a good chunk of CS grads (your future coworkers and hiring managers) will second guess a self-taught education.

Re: No CS Degree – Interviews with self-taught developers

#189
post #29

I'm an engineer. No CS degree. I coded for fun on various side projects from 2006-2012. I didn't consider myself very good. I worked at a couple startups from 2012-2013. During that time, I became very proficient in Coffeescript and a couple popular frontend frameworks. I was very productive in terms of pumping out lines of code (that somehow resulted in a working product). However, I didn't know how to write a for l…

I've been really involved in teaching people with non-traditional backgrounds (e.g. no cs degree) to program lately, and this has been my biggest struggle. There are people who are working in the field as a web dev and have been for years and can't do simple stuff like iterate. They have no understanding of what the stuff they're actually doing means or does. It's just copy and pasting snippets they see online and fiddling with it til it works.

I've taken to offering three pieces of advice to these people:

1) Go through the basic language tutorial of whatever language you use (e.g. how to declare variable, conditionals, loops)

2) Go read through the essentials guide to your languages (will be slightly higher level stuff)

3) Go read the sections on Data Structures, Concepts and Algorithms and Knowledge Base in Cracking The Coding Interview skipping the problems that aren't answered in chapter. Why? Because it's a solid primer for CS Concepts that people just don't pick up unless they have to, and most importantly short enough (I've had a lot of success with this method. It's not a formal cs education by any means but I've found it's enough to get people past the constant beginner part.

Re: No CS Degree – Interviews with self-taught developers

#190
post #98

Earlier quoted context omitted.

> And it gives employers confidence that you have the skillset to handle whatever they throw at you. Blindly having confidence in someone with a degree vs. someone with no degree is a bad mistake in this industry, IMO, sadly it happens. It really comes down to the person, self taught or not, if you don’t pursue continuing education (which is a must in this industry) whatever CS knowledge you learnt with your degree w…

I think you’re missing the point your parent was making... In a good CS program you will be presented a series of challenges below your “depth”.... “wait, you want me to WRITE a data structure? I usually just use a good one from a library” “wait, you want me to fix a compiler? I have only ever run a compiler” “wait, you want me to write code that CREATES processes out of nothing? I am used to letting the OS create pr…

I have seen plenty of CS grads that can barely code or put together a real solution to a problem. There is no guarantee just because someone was able to muddle through a CS degree that they can do these things. In almost all cases, you really need to evaluate whether an individual shows the aptitude to solve your problems you need solved and crank out good well thought out practical solutions that fit the scale of the business problem. The degree paper is not all that important. I would give bonus points to a candidate if they came from an accomplished but different background than CS that shows they are capable of success/mastery in multiple areas, they are adept at learning and researching new material, and they have the matching technical prowess to spearhead a real project. For instance I have known many engineering (of the physical paradigm) types that are self-taught with no CS degree that I would trust to tackle a project over any random CS degree candidate.
Post reply on HN