Ask HN: Ruby or Python or Java: which should a non-tech person start first?

2 points by sharonpaul ↗ HN
Hi everyone,

I decided to start learning how to code as I have a strong interest in starting a web-based startup.

However, i discovered my interest in web startups a bit late. I am close to finishing my degree in Econs, but hope to pick up coding & web development skills. May I know which language I should start learning first? and why too..

thank you!

7 comments

[ 3.2 ms ] story [ 34.9 ms ] thread
If you have little to no coding experience, leave Java out of the mix for now. I "restarted" my programming skills about 6 years ago with Python and absolutely love it. (And have since added C, java, javascript and of course conversant in HTML, CSS, etc) I know nothing of Ruby other than it has a following as devoted as Python. Look at the wikipedia entries for each language and see what "feels" more comfortable to you. If you find python "feels" best, and you're relatively new to programming... take a look at "Python Programming" by John Zelle (at Amazon, check out the reviews).
When I had to pick a language to learn I chose Ruby and after spending 3 years learning it I'd say thats the language you want to go with. Its a strong web language with a huge community around it. The language is in constant development along with the libraries and frameworks supporting it. Getting started is real easy with the framework sinatra. In the beginning I found rails was standing in the way of just purely learning ruby and its sort of "magic" made no sense to me. Sinatra is simple. You start with one file with your request methods that are blocks of code starting with get, post and delete. You can then build that out into an mvc style if you so please by seperating things out.

Ruby is the way forth

edit: Also, why's poignant guide to ruby will be the ideal way for you to learn ruby. http://www.scribd.com/doc/2236084/Whys-Poignant-Guide-to-Rub...

I learnt Java first and it did me no harm. Now I love Ruby. I like Python too (they are similar in some ways) but I prefer rails over django so that's why I went with Ruby.
Ruby is big on OSX, often used as a step up from applescript. Python is super-easy to learn. Java will give newbies a headache
I got a copy of Heads First! introduction to software programming, and it started out with Python first.

It appears that python is the easy to learn..but Ruby seems to be the common lang that most web startup use these days.

Will i be at a disadvantage if I choose to start with Python first?

There is no harm in knowledge.

Even if you start with Java.

okay..thanks for the info everyone!