Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: I have 18 weeks to learn whatever I want, do you have any suggestions?
10 points by Forrest7778 on Jan 7, 2012 | hide | past | favorite | 10 comments
Hello HN, to give you a bit more information, I'm 17 years old and present taking a second year computer course in which I can decide what I would like to learn. I presently have dabbled in Pascal, C++, and Ruby. I have some basic knowledge of data structures, and well, just written some programs(probably very basic to you).

I am very interested in trying to learn more about Ruby/Ruby On Rail/and C++. If you know of any small tutorials or site that teaches anything, I would appreciate any information that you can share! (Whatever you share doesn't have to be a full 18 weeks worth, obviously I am going to be doing a lot of things.

Thanks in advance for your replies.

edit: Any tutorial sites, books that are great for learning, source that is great to read, or project guides that I could create to get some hands on learning. All is appreciated.




If you want some "down and dirty" simply practical knowledge, read up on regular expressions. (Be sure to read up on the better cautions associated with using them, as well.) I would recommend Jeffrey Friedl's book, "Mastering Regular Expressions".

http://shop.oreilly.com/product/9780596528126.do

One other caveat about this, though. They make more sense and the topic is more motivating when you have a significant amount of text munging to accomplish (as I did, at one point).

Nonetheless, I remember some years ago being astonished at some of the Java code I saw being written, at not insignificant amounts of programmer time and with a bevy of mistakes, to accomplish simple pattern matching in use cases where a regular expression would have been more appropriate and more efficient -- both to write and probably in execution.

The developers, despite being fairly seasoned, just weren't familiar with the paradigm. A few years later, they were using them "all over the place".


I would also like to recommend that you do some work in javascript. It has arguably become one of the most important programming languages around, and only becoming more so.

Also, since js is prototypal instead of class-based, its a different way of thinking about writing code. I have known many good programmers that had a hell of a time working with javascript as its meant, and they constantly try to write js with classes. If you learn both ways early on, you'll be a much better programmer later. Neither will seem alien to you.

I would recommend that the first javascript book you read is Javascript the Good Parts by Douglas Crockford. Its only about 150 pages and only talks about the language. Nothing to do with web browsers. Read it a couple times and start doing some simple js apps and you'll be in good shape.


This would seem like an ideal opportunity to get a solid grounding in the fundamentals of programming. I would suggest that you work through the MIT OpenCourseWare (OCW) version of their "Introduction to Computer Science and Programming" (the newer version that uses Python as its teaching language). You would be learning Python while you are learning the fundamentals. The course uses a freely available textbook, and video lectures are available. The course website is located at "http://ocw.mit.edu/courses/electrical-engineering-and-comput....


I want to second this. I'm 31 and have been doing web development for the better part of 10 years now. It wasn't until later in my career that I realized what I missed out on by not learning CS fundamentals much earlier. I played catch up for a while. If you have the opportunity now, especially with a more agile brain, take it. You will benefit from it for years to come.


Awesome - I am definitely going to try and complete this, thanks!


One way you can go about learning is to find something you really feel passionate about building. Then try to find the best way possible to build it.


You may choose to learn Ruby properly first and then start learning Ruby on Rails. This list of free programming resources might be helpful to you: http://stackoverflow.com/a/392926


This is fantastic, thanks a TON!


1. Bayesian filtering, etc

2. Neural Networks

3. How to make money




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

Search: