5 ms·
I'm debating whether to learn Python or Ruby. And the initial post as well as this one has me leaning towards Ruby despite all the good things that have been sa
by hackerbob 14y ago
I'm debating whether to learn Python or Ruby. And the initial post as well as this one has me leaning towards Ruby despite all the good things that have been said about Python.
Are there non CS majors out there that picked up Python as a first language and had doors opened for them?
- Wilduck 14y agoI majored in Economics and taught myself Python starting my Sophomore year of college. I am now gainfully employed in a job creating modeles (economic and otherwise, essentially R&D) for the rail industry. My day to day activities consists of writing Python code, and my ability to rapidly prototype ideas with Python was one of the major reasons I was hired. That being said, don't debate, just pick one and go with it. For every person who tells you that Ruby is better at X, or Python is better at Y, you'll find another person doing X in Python or Y in Ruby. The best advice I can give you is to find a book/tutorial that works with your learning style and go for it. Then grab a fun project as soon as possible and work on it.
- TheCowboy 14y agoIf one is starting to learn on their own in their 2nd or 3rd year in college, I think Python is definitely a good place to start. You will have more doors still open to you as a college student as far as internships go. I also think people who are still in college might as well take the intro classes so they can take the more advanced data structures and algorithms classes, in addition to extra maths. It's also good to be around other people who are studying CS while in university. The networking benefits shouldn't be underestimated. And making friends with people who are also passionate about the topic is great for many other reasons.
- textminer 14y agoIf you're from more of a math background (with maybe a little MATLAB knowledge). Python's a great language for machine learning and natural language processing tasks. Great glue language, lots of libraries, prototype quickly, scale with multiprocessing or Hadoop streaming or pycloud. Build your own analysis stack or classifier then display the results on the web with Bottle or Flask.
- slurgfest 14y agoThese are true statements about Python's strengths. I don't realistically see how those are going to help you get a job unless that job also takes an advanced degree, or at the very least a BS touching on a field you have specialized knowledge of.
- fjellfras 14y agoI've been stuck in this exact same place for the last one year or so. I wanted a job in machine learning or possibly NLP and python is my language of choice, while the language is an excellent tool for these tasks I have not been able to find jobs in ML or NLP possibly because both of these fields involve quite a bit more than the programming related work. To top this off I live in India and it has been difficult to find quality jobs here; the ones that will hire a less experienced person like me, of course :-)
- textminer 14y agoGood point. I'm perhaps generalizing too much from my own experience (which is admittedly of having an advanced degree in mathematics and being a recent Silicon Valley transplant).
- jurre 14y agoI think every minute spent thinking about which one to pick is a minute you could have spent learning either of the languages, I think it really doesn't matter which. Once you master one the other one will be a lot easier to learn as they're so similar. Just flip a coin, pick one now! :)
- wonnage 14y agoThe two are about the same with regards to employment and educational purposes. If you happen to like one, go with it, otherwise you can just flip a coin and get to the real problems!
- slurgfest 14y agoPython is great in itself, but it seems to me that there are significantly more jobs for junior Ruby coders than junior Python coders... there is no reason you can't learn one after learning the other, though
- jlembeck 14y agoI used to hire in a shop that did a lot of Ruby and if we were hiring for a junior position, Python was perfectly acceptable as a language to know. Knowing a dynamic language, being the type of person who teaches themselves, and being able to have visible code was what really mattered. We found that we could drop capable juniors in a project that has some senior leadership and they were able to pick it up quickly.