Live data from Hacker News

The Hacker's Path

krainboltgreene.heroku.com

11–20 of 78 posts

Re: The Hacker's Path

#11
I'd suggest learning C as soon as a basic grasp of programming (variables, condition, iteration, basic data structures and abstract data types) is there. C is the lingua-franca of programming: advanced algorithms are often implemented in C (or in C like languages), other language concepts are often expressed in terms of C language concepts. "Gold standards" of systems programming are the C POSIX API and BSD sockets (best books on network programming use C for all of their examples). Learning UNIX and the GNU tool chain is also important.

Learning a non-imperative languages is also vital: most importantly Lisp such as Scheme and a strictly and statically typed functional language with type inference like Haskell or ML.

As for Ruby vs. Python, it's an implementation detail. The languages are close enough as if you know one, you can learn the other when you need to (at a new job, or when there's an open source project you'd like to contribute to). Make sure to be fluent in one, however, as "scripting" is a vital skill (especially if you have to deal with a production environment or build/release tooling).

Same principle as Ruby vs. Python also goes for Java vs. C#. I would, however, suggest learning C++ and/or (one of) Java/C#, as they're rather widely used in industry (and not just for legacy work).

Important thing is understanding the fundamentals and seeing the overall patterns.

Re: The Hacker's Path

#14
post #11

I'd suggest learning C as soon as a basic grasp of programming (variables, condition, iteration, basic data structures and abstract data types) is there. C is the lingua-franca of programming: advanced algorithms are often implemented in C (or in C like languages), other language concepts are often expressed in terms of C language concepts. "Gold standards" of systems programming are the C POSIX API and BSD sockets (…

'I suggest buying a screwdriver, a chainsaw and a hammer.'

Re: The Hacker's Path

#15
This should be called The Coder's Path for the same reason this site should be called Coder News. A whole section on "Gettin’ Paid, Makin’ Money"? Fucking please.

Re: The Hacker's Path

#17

OK, _why is amazing, but the Poignant Guide is really not the best place to learn Ruby. It may be for some, but I have to be honest, it diverges so much into madness and a pointless, meandering storyline for so long that I couldn't bring myself to finish it. I've spoken to others with the same experience. Maybe the first few chapters are worth reading, if only to get references like "chunky bacon". I suggest the pick…

I've taught Ruby to six or seven people now. We're talking average joe people (well, for the most part. my girlfriend is a nerd). All of them told me point blank "The Pickaxe book made me fall asleep".

The storyline and madness keep the reader's attention in a sea of absolutely alien ideas. If you can't see the value in that...

Re: The Hacker's Path

#18
post #11

I'd suggest learning C as soon as a basic grasp of programming (variables, condition, iteration, basic data structures and abstract data types) is there. C is the lingua-franca of programming: advanced algorithms are often implemented in C (or in C like languages), other language concepts are often expressed in terms of C language concepts. "Gold standards" of systems programming are the C POSIX API and BSD sockets (…

I think your last sentence is the most poignant.

    Important thing is understanding the fundamentals 
    and seeing the overall patterns.
And the most damning for C and Java in my opinion. C and Java's syntax (which does matter to those who are learning), is so verbose as to hide a lot of what the fundamentals and patterns are.

This is why I chose Ruby and Python. The languages syntaxes are clean and are never in the way, allowing new programmers an easier time understanding those fundamentals.

Re: The Hacker's Path

#19
post #6

Has anyone actually been successful following a similar path? Has the author actually read all these books? This is just a list of books on programming languages and tools. Why am I learning Ruby and Python? Why am I avoiding relational database servers and learning SQLite? Nothing is explained.

1. Yes, I've read these books.

2. Yes, I've taught my students this way.

3. I've chosen Ruby, SQLite, and the like because of how easy it is to go from 0 to learning. Have you ever spent 8 hours trying to figure out a messy install of MySQL? You can bet a learner will.

All of these are "path of least (possible) resistance"

Re: The Hacker's Path

#20
Is this kind of thing really helpful? I mean if I think about what "Hacker" means to me, it's someone who's passionate enough about computers to explore the inner workings and make cool things.

It seems to me that if you need a guide for the journey, you're already kind of missing the point.

Disclaimer: not a hacker, by any definition

Post reply on HN