Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

First of all, this is awesome. Thank you!

Secondly, I am reading through this and came across this:

14. Should I still be a programmer? "I lack the fundamentals of Computer Science, the things every programmer should know: Algo's, Data Structures, Operating Systems an understanding of compilers and being profficient with linux."

Relax. That's true for 99% of all programmers.

I feel like I am in the same exact boat as the original poster. However, I am a senior in college who has several interviews lined up. I have interviewed several times before and always flop on the "fundamental questions". Is there any further advice someone can give me? Thanks in advanced.



"I have interviewed several times before and always flop on the 'fundamental questions'. Is there any further advice someone can give me? Thanks in advanced."

Have you considered learning the fundamentals? Its not a snarky comment I'm genuinely curious.

If you are programming, find you enjoy it, and wish to continue doing it for money, continuing education should be right up there on your list of things to do. (whether you have a Ph.D in CS or just a high school diploma, new stuff is coming out all the time).

There are a lot of free resources now online. You can get the syllabus and curriculum for classses that are taught in places like Stanford or MIT or UC Berkeley. So even if you spend the next two years of nights and weekends 'filling in the gaps' in your knowledge you will find that not only do you get better at your 'day job' but you will start aceing those 'fundamental' questions.

There was a time when to do this you would have to audit a class at a nearby university which imposed limits based on schedules, location, etc. But those times are behind us now. Take an old desktop machine from the e-waste dumpster behind some company, load up FreeBSD or Linux on it, and start doing the home work from some of these courses. The fundamentals are fundamentals because they apply universally, and you don't need a fancy rig to compare the performances of various sorts, or explore bloom filters, or key exchange algorithms. You can run MySQL on crappy hardware for the size databases you need to run to learn SQL.

Granted the assumption is that you can currently access the internet and you live somewhere that is currently consuming IT hardware (pretty much most of Europe, Asia, Australia, New Zealand. and the N. American continent).

If you are a 'Senior in college' and your major was CS and you flop the fundamental questions then there is a bigger problem here.


They are fundamental. LEARN THEM. They're actually not that hard.

http://ocw.mit.edu/courses/electrical-engineering-and-comput...


> Is there any further advice someone can give me?

Yes. Stop interviewing with Google.

There are plenty of places that need smart folks, who get things done, who are not jerks. And can look things up or ask around when they need to.




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

Search: