Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: Does Ruby offer better support for learning than Python?
19 points by dlf on Dec 6, 2011 | hide | past | favorite | 12 comments
At the risk of starting a flame war, I am genuinely curious as to everyone's thoughts about whether Ruby offers better support for learning programming.

This has partly been instigated by three initiatives shared on HN: 1. Dev Bootcamp (and also Code Academy), 2. Bloc and 3. The Bastards Book of Ruby.

While there are good resources for learning Python, I'm getting the impression that Ruby has a bit of an edge. Am I wrong?



I completely disagree.

It's incredibly easy to get a little bit into either. Ruby however hits a HUGE hockeystick of difficulty when you start to use the web tools (the primary use case for ruby).

Python however seems to have tons of non-expertise intensive uses that are not primarily used by professional programs. Scipy et all, etc. The "mouthfeel" of the communities is considerably newbie friendlier on the python side in my opinion.

tutor@python.org is great

Zed Shaw's Learn python the Hard way is good

Alan Gauld's Learn to program site is great

I find Why's guide both outdated and discursive to a harmful degree.


Not related to this, but I saw your username and immediately recognized its origin. I'm gth836e.


get a room already


From my experience (and as much as Python is a kick ass & ever growing programming language) the Rails community hands down has a more supportive and extensible reach for the n00b. I am not insinuating there is a lack of Python support, however the Ruby/Rails community really prides itself on attracting new people & non-technical people into the fold. Here in Toronto the Rails Pub night & it's supportive group is a large part of why I decided to start out learning Ruby & my upcoming participation in the Chicago Code Academy (CodeAcademy.org) program.

I think it is also important that one will find support where one is eager to learn. Python is a great language, however the Ruby & the Rails community is a better "Learning" fit for me. The vibe is right. Find your vibe and run with it.

My vote goes to Ruby/Rails however I am certain many can make a similar Python case.


I'd say Python has more resources for beginners, since it was picked up ~ 2008 as the teaching language by majors universities and high schools (for example when at MIT's "CS101" originally via Scheme switched to Python). Since then many quality materials for beginners sprung up in Python. To name a few:

http://www.swaroopch.com/notes/Python

http://greenteapress.com/thinkpython/thinkpython.html


True, and that's been my understanding as well. I wonder if the distinction, though, and why it was picked up by universities as a teaching language over Ruby is because Ruby caters more to web dev where Python is more of a general use sort of language with broad applicability in math, science and engineering.

Thanks for your thoughts and the sources. I've looked at both and they are both quite useful. I've been using these:

http://learnpythonthehardway.org/ http://greenteapress.com/thinkpython/ http://thenewboston.org/list.php?cat=36

My learning has taken a bit of a hiatus since I've been really busy lately though.


I think it depends on who you are and where you're looking.

Aspiring Ruby programmers, who are usually web developers, go looking for these hip resources like codecademy and screencasts and whimsical online books. Aspiring Python programmers, who are often scientists just trying to do machine vision or numerical computing research, might be more likely to use the Python mailing lists and old-school resources--which are just as useful.


It's about the same between the two.

This question gets asked here at least once a month, so check out the search box at the bottom of the page. There's a bunch of good suggestions for each path.


I'm aware, and I've read those posts. This question was in response to recent observations (i.e. the past month or so). I think it's a topic worth revisiting, especially with so many recent attempts to build better tools to teach folks to code.


It depends on what you want to do with it.

Python is great if you just want to "learn programming." It's very noob friendly and there are tons of libraries.

Rails is great if what you really want is to learn web programming (and Ruby if you're learning Rails).

JavaScript is great if you want to learn UI programming for web and light mobile.

etc. etc.

Languages are just tools.


You forgot Why's poignant guide to ruby :)

I tend to agree with you that the Ruby community does offer more learning resources, but then maybe I've just not been looking in the right places for Python guides.


OMgod that's cool!

It made the list... http://dlfrancisco.posterous.com/pages/learn-code




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

Search: