Live data from Hacker News

Ask HN: Ruby or Python for 2018?

news.ycombinator.com

1–10 of 39 posts

Ask HN: Ruby or Python for 2018?

#1
I'm having a really hard time deciding between sticking with what little Python I know and using Django or switching over to Ruby/Rails for developing my side project. I'm hoping anyone could jump in and voice their opinion on either side.

Clearly the Ruby community is experiencing some kind of event where the numbers are shrinking and some of the more prolific bloggers/contributors are talking trash and moving on and i'm not sure what to make of this. There is alot of tutorials and information already out there but it's getting dated and i'm not sure how much of it that was written in several-versions-old Rails will still apply and there's not ton of new stuff coming out. There seems to be a gem or tutorial for anything I could need to do but it's growing more stale by the day as their creators seem to be off to greener pastures.

Python has it's moments for me but after doing some tutorials I'm really finding Ruby/Rails to be just fun and exciting to use. I like how thorough the framework is and the development experience in general, with console commands for everything and automated tests re-running on save, and it seems they are adding greatly to the rails core, as opposed to Django's big 2.0 feature was basically copying Flask's URL system. I also like the community having a vocal figure like DHH kind of "leading the pack" with alot of methodology I agree with.

Is ruby really as bad as people say and is on it's way out? Is leaving Python for it, if my only interest is web-application development, a dumb idea? it seems like i'm standing at this cross-roads looking out and seeing on one side, Rails is awesome but people hate Ruby, and the other side is people love Python but Django is a big limp dick and I don't have time to program the kitchen sink with Flask. choosing between either is very confusing...

Re: Ask HN: Ruby or Python for 2018?

#3
I would take a look at Laravel which is php on rails with less magic and more built in features such as authentication and background jobs. The most important thing is that its community is growing rapidly and it has a BDFL ala DHH in Taylor's Orwell. Also there are really good fresh resources such as latacasts Codecourse and the Laracon conferences

Re: Ask HN: Ruby or Python for 2018?

#5
You seem overly concerned with Hype Driven Development.

There's not a lot of new stuff coming out of these frameworks because of how mature they are.

Both languages/frameworks are comparable. Your end product will not be very different regardless which route you take. Both languages and frameworks will be maintained 10 years from now. The job market for both will exist 5+ years from now.

Pick one you like and get to work!

Re: Ask HN: Ruby or Python for 2018?

#6
Python is a good career move. Ruby is more fun. There's no right answer :)

I program in Ruby right now for work but am comfortable switching to Python. There are plenty of Ruby positions available, we've hired 5 or so Junior Engineers out of Rails/JavaScript bootcamps. It's just that Python has the data science and machine learning positions in addition to web development.

Re: Ask HN: Ruby or Python for 2018?

#7
For what it is worth, I think you will probably learn something from trying Ruby, even if you wind up sticking with Python. The community and language design are just very different from Python's: MINSWAN v BDFL, many ways versus Pythonic PEP's, everything is an object versus some things are objects, etc.

All this with the caveats that: I think both languages have advantages and disadvantages and I think knowing more languages is better than knowing fewer or one.

Re: Ask HN: Ruby or Python for 2018?

#8
Ruby, PHP, Go, Python, Javascript & Elixir developer here:

The #1 rule that trumps all, no matter how small or big your project: Use whatever facilitates your work.

Sometimes you need to get things done quickly, sometimes you need to hire a lot of people cheaply/easily, sometimes you need a project to scale. In each of these cases, you may want to use a different tool. For something that's your side project, you probably just want to be able to get work done effectively and enjoy what you're doing. Pick that tool that you most enjoy working with, in that case.

For me, I default to Ruby (and I haven't touched Rails for work in 2 years!). I find it to be a joy to work with. I expect that later, as a I grow as a developer, this will become Elixir and/or Erlang. Sometimes I have to work in Python, because that makes sense for the project. I find it a bit of a slog, but it gets the job done and lets me move on to other things.

If you are a developer learning the ropes, I couldn't recommend a better language than Ruby. Your skills will translate. You will find work. The places that hire junior developers that only care that you know their stack aren't worth your time.

Most of the people that have publicly roasted Rails were wrong, for one reason or another, by the way (especially that Twitter blog post...). Too often, people are trying to fit a square peg into a round hole. The best advice I can give you after that first rule is that you should ignore what people say and just get your work done. That's the thing that differentiates people who stay working in this field and those who don't.

Post reply on HN