Ask HN: If you had 3 month to program for fun, what would you learn? - holgersindbaek
======
jaddison
As a Django dev (currently, anyhow - formerly was largely Windows software
dev), I think I would investigate Go, if we're talking purely from a 'fun'
perspective.

From a professional perspective, I've been dabbling in Objective-C/Cocoa and
the Android SDK (trying to dredge up old Java knowledge) - but for something
'new' I think I'd take a closer look at Ruby on Rails.

~~~
holgersindbaek
Thanks for the advice. I come from a RoR background and I want to go into
something a bit more "new age" or low level. Also digging a bit into iOS
development now, just for fun.

~~~
jaddison
Google definitely seems to be making a real push with Go - I believe it's just
recently hit 1.0 status.

I'd like to see strong contenders for web frameworks in the language, but I
think the game is still quite early. There are a few options, but they all
seem to be quite immature at this time.

~~~
holgersindbaek
What is the big advantage of go? What would you use it for?

~~~
thiagodotfm
go is very fast(it's aimed at somewhere between C and C++).

it's a systems programming language, you supposedly can do anything. there's
some companies already using it like soundcloud. it's awesome for api's
because of it's speed.

also, it's a well thought language with many different decisions from common
languages, it does not have exceptions and so on. it's an awesome language if
you want to expand your mind.

otherwise, i would pick clojure.

~~~
holgersindbaek
What's the great thing about clojure then? I've been hearing a lot about that
as well.

------
aleprok
Absolutely nothing, because I would use that time to use the skills I already
have to build some of my small ideas just for fun.

------
dougbarrett
I would master* Node.js as much as possible, and along with Twitter Bootstrap
start developing "real-time RAD (Rapid Application Development) for Web".

I'm learning Node.js, and I'm excited, but my time is extremely limited...so
for the time being my RAD is limited to PHP.

*If to "master" was even possible

~~~
holgersindbaek
Yuk... PHP. Sounds icky. Hehe. I've also been thinking of going into Node.js,
but the advantages of Node compared to RoR is just not that big. The only big
difference is the real-time aspect, which is relatively easy to implement with
Pusher in RoR.

What do you say?

~~~
dougbarrett
Idk, I got a little taste of RoR last year in a seminar I went to, but the
instructor had one version of RoR on his machine and the lab had a different
version on the machines, but some of the differences were so big that the demo
applications we were trying to create didn't work.

I ended up catching on fairly quickly and I was able to help out other
students, but when I tried installing it on my laptop at home on a Windows
computer, I had to eventually bite the bullet and reformat my hard drive to
get it working.

Installing node.js was so easy, and since I do a lot of front-end work in
javascript already, I already knew the syntax, I just had to learn how the
node.js functions work.

I've never heard of pusher, but I tried out socket.io and it was really easy
to implement.

I also saw that node.js is getting some huge support from big companies such
as Yahoo, Microsoft, etc. To me, it seems like 10 years down the line there's
still going to be support for it in some way, shape or form, so I also based
my decision on that as well. I can't honestly say the same about RoR, but I
also haven't researched it as much.

------
abhijat
I would like to learn to write games for the desktop and then try to write
one, one of the traditional desktop games using C++ and something like SFML.
The game development field has always intrigued me.

------
gadders
I think Javascript, tbh.

It covers quite a wide range of things you can do with it these days - regular
web stuff, applications that run in the browser, and even server-side with
Node.js.

------
mgallivan
If you want to go a bit lower level you can always try to write a debugger.

~~~
holgersindbaek
A debugger. Sounds interesting. What exactly would that be doing? How would
you use it in a product?

------
dotborg
Current DirectX/OpenGL API and I would try to build a renderer in C++.

------
geekam
I have a few things on my list. I am inclined towards -

* Going through Webkit's source

* Node

* iOS development

~~~
holgersindbaek
What if you where to go deeper into some low level programming?

------
onitica
Top of my list are Node.js and Clojure.

~~~
holgersindbaek
Why those two? Why clojure? I kind of know the advantage of Node.js (real-
time).

~~~
onitica
I picked Clojure because I want to get into functional languages more, and I
find the LISP-like syntax actually quite easy to get a hang of and more
intuitive than Haskell. Node.js just to improve my Javascript skills and see
what all the hype is about. Hopefully you read this, kind of late with the
reply.

