Live data from Hacker News

Ask HN: What should I learn?

news.ycombinator.com

11–20 of 34 posts

Re: Ask HN: What should I learn?

#12
post #6

Hadoop: designing MapReduce jobs is fun once it "clicks" for you. Hadoop Streaming is a good way to get started because it's an incredibly simple interface that uses stdin/stdout. Increasingly more companies are using it, from the big guys (Facebook, Yahoo) to startups (PowerSet pre-acquisition, LastFM, FlightCaster). Most schools don't teach it yet, so if you're willing to learn something in your free time it's a gr…

Although I am not a Hadoop guy myself, this is still excellent advice. Learning an emerging technology that's starting to gain traction in the workplace is a good way to distinguish yourself among your peers when you start competing for jobs and a great way to add to your repitoir.

Re: Ask HN: What should I learn?

#13
I usually find it easier to start with a project I want to build, and then learn whatever it takes to make it happen. There's so much to learn that it really is a personal preference.

Re: Ask HN: What should I learn?

#14
If you don't want to study a whole new language or giant textbook, you might get some intellectual mileage from checking out the Reactive Extensions for .NET, which is an extremely slick implementation of functional reactive programming in C#, and implementing some simple applications like a game or two with it.

If you don't know anything about FRP, you might find it somewhat mind-expanding. It focuses on treating input as a continuous, manipulable stream of events. It integrates rather elegantly with C#'s functional libraries and interfaces.

(This is assuming you have a fair amount of experience with C#, or else you'll probably spend more time learning the language than FRP.)

http://msdn.microsoft.com/en-us/devlabs/ee794896.aspx

Re: Ask HN: What should I learn?

#16
Apart from what others said, I guess you can't do much wrong by starting with Structure and Interpretation of Computer Programs by Abelson and Sussman, which is also available for free.

Re: Ask HN: What should I learn?

#18

Once upon a time I tried answering the same question for myself; you might (or might not) find this interesting http://softwareboy.blogspot.com/2009/10/learning-things-of-l...

Good stuff.

I would agree with learning the implementation of a UNIX, but not for the reason you gave (ubiquity). Instead, learn it because of the philosophies about software design it created, and which developers (often) live by today: do the simplest thing that could possibly work; create small parts that do one thing and one thing only; favor simplicity over correctness.

Also because it will give you insight into C, and vice versa.

Re: Ask HN: What should I learn?

#20
What are your interests? Yeah, besides programming. Do you play guitar? Are you a baseball stats geek? Do you like math puzzles? Pick a problem aligned with your other interests, and go for it. Whether you do this in a language you already know or a new language / framework / etc. is your call, but challenge yourself.

Your interest will keep you going through the slow parts, whereas if you're just learning tech for its own sake, you might just start learning something else as soon as it gets hard. That can feel like progress, but doesn't usually add up until you stick with things for longer.

Post reply on HN