Hacker News new | past | comments | ask | show | jobs | submit login

Fair enough, thanks for the input!

Though you raise (inadvertently) a related issue in mentioning kernel programming:

When asking a friend whether I should learn C, he posited:

Do you want to be a programmer or do you want to be a coder? If you want to be a programmer you should look at C at some stage. His stance being that "programming" involved writing lower level code while "coding" involved working higher level with scripting languages and frameworks. There was no value judgment in his use of the words programmer and coder btw.

So really it's a case of realising what you want to do with your code:

If you're interested in working on kernels, OSs or videogames then CS is probably going to be more useful than a bootcamp

If you want to work on building webpages and apps, a bootcamp could be a fast means of getting you onto the first rung of the ladder.

The world of software is large enough for both CS and bootcamps to coexist.




I always pose this slightly differently as developer vs engineer, but it's the same thought. You can be a developer that's only ever written JS after reading a few blogs trying to make your Wordpress site do something fun. If you don't know what a pointer is, or aren't able to talk about thread safety intelligently, or pick-your-example, you're a far way off.

I often press employees on this - it doesn't require a 4 year degree, but it does require years of education. You can be a developer the rest of your life, or you can continue to educate and push yourself.

I graduated with a 4 year degree and definitely had a head start on some of the more esoteric concepts, but I think it took 7-10 years before I was confident to call myself a software engineer.


Sure, I wouldn't tell anyone they need to learn C. Far from it to be honest. It is a rabbit hole of epic proportions. If you don't need to use it don't. But being able to drop down to C/assembly is sometimes the only way to fix problems.

If you're writing a web page though... I'd say you're nuts to use C/asm. You should still at least learn some C at least in passing but I'm also a freak that likes to learn a new language every year. I don't stick to them but its a good exercise I think.

The constants though are data structures and complexity, no matter what language you use those will always come in handy. Knowing when things turn quadratic is really useful. Or to be able to spitball how the tree structure you're using is going to fall down with N entries or traversals is a good thing to know.


Honestly, it's only a matter of time before bootcamps are made specifically for teaching the basics of algorithms and data structures, with an emphasis on acing interviews. Seems like the sort of cram school/career "consulting" that would naturally develop from the semi-dysfunctional interview process that tech has. And such a program would be beneficial not only for people without CS degrees, but also CS majors as well.


And that's the kicker, isn't it: software development has stratified a lot. I'd put and other low-level programming languages on one end, and IT on the other.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: