

Ask HN: Understanding HN? - jazzex

I am a freshman computer science major that frequents this site and has trouble understanding a lot of the posts, especially the ones that link / discuss github, opensource projects, HTML5, and the like. The posts I enjoy the most are blog posts and reviews. I know the reason for this is my lack of experience and knowledge. Besides my courses, I am learning python and have a plan to start learning PHP/MySQL and JavaScript. I already have the fundamentals of programming down from my courses. Is there anything else I can/ should be doing?
======
tjr
Is there anything else you should be doing, in order to achieve what goal?
Understanding all of the posts on HN? I finished my computer science degree
ten years ago, and I don't understand all of the posts on HN! There's just way
too much breadth to seriously keep up with it all.

Specific technologies may or may not be interesting for you. Is Git (or
Github) terribly important? Maybe not. But you should aim to understand
version control in general, and learn to use at least one version control
system.

Open source projects? Thousands upon thousands, many of them defunct or
floundering. Read about the history of GNU, and Linux, and maybe some of Eric
Raymond's articles from the 1990's. That should give a decent foundation as to
what's going on in general.

Computer science topics build upon each other. It's woefully out of date now,
but look up The Hacker's Dictionary (aka Jargon File) and peruse whatever
entries look interesting. The specifics are mostly obsolete, but the concepts,
and more importantly, the character, spirit, attitude of hacking described
there persists.

Get familiar with some classic stuff in the field. Write a few small C
programs, if only to get the feel of what C is like. Try your hand at some
Lisp (or maybe Scheme) programming, to see what that is like. Read
biographical sketches of important people in the field (maybe start with
Dennis Ritchie, John Backus, David Huffman, Guy Steele, John McCarthy, Donald
Knuth, Richard Stallman) and learn what they have contributed. When was the
first computer built? When was the first IBM computer built? What was Digital
Equipment Corporation? How does a DEC PDP-11 compare in computing power to
your mobile phone?

Go to the library and look up Knuth's Art of Computer Programming. Read the
table of contents. Read some of the text. What's MIX? Implement the algorithm
to calculate the date of Easter in the programming language of your choice.
Try to solve a few of the exercises. Now that you've been exposed to Knuth,
you'll know it's there if you ever need it.

But that's all background. Ours is an engineering discipline, in the sense
that we strive to build products that help people do something. Poking around
with technology for the sake of technology can be enjoyable for us, but
perhaps not very fruitful for the rest of the world. Who are some people you
could help? Does your barber have an online scheduling system? Do they want
one?

~~~
jazzex
Thank you for this! What a great comment. Also, Scheme was actually the first
language I learned in college. Very good for programming concepts.

