Ask HN: Why are more Startups using Python over Ruby?
1–10 of 23 posts
Re: Ask HN: Why are more Startups using Python over Ruby?
#2Re: Ask HN: Why are more Startups using Python over Ruby?
#3Also django is pretty great with amazing docs. I know a lot of people argue against because the django community isn't as large as the rails community (and it isn't). All that matters is that it's large enough though (and it is). Hasn't failed to answer my questions yet.
Re: Ask HN: Why are more Startups using Python over Ruby?
#4I reckon RoR is faster for rapid prototyping and development of new features so I'd choose that in the beginning for a one or two man startup.
Later on if there's anything in particular you need that Python does, you can always recode once you're profitable.
Re: Ask HN: Why are more Startups using Python over Ruby?
#5Re: Ask HN: Why are more Startups using Python over Ruby?
#6There were major improvements in deployment, too: Fabric and supervisord are maturing very nicely.
Once you've nailed the CRUD part of your startup down and want to start slicing your data in interesting ways, you have extremely powerful and easy-to-use libraries like nltk and numpy at your disposal.
Finally, Python continues to get a tremendous boost from the fact that Google uses it to write sample client code for their APIs.
Re: Ask HN: Why are more Startups using Python over Ruby?
#7The web stack in Python got dramatically better in the past two years: just take a look at Flask, Werkzeug, requests, class-based views in Django, etc. There were major improvements in deployment, too: Fabric and supervisord are maturing very nicely. Once you've nailed the CRUD part of your startup down and want to start slicing your data in interesting ways, you have extremely powerful and easy-to-use libraries like…
Re: Ask HN: Why are more Startups using Python over Ruby?
#8The web stack in Python got dramatically better in the past two years: just take a look at Flask, Werkzeug, requests, class-based views in Django, etc. There were major improvements in deployment, too: Fabric and supervisord are maturing very nicely. Once you've nailed the CRUD part of your startup down and want to start slicing your data in interesting ways, you have extremely powerful and easy-to-use libraries like…
I think you struck a valid point, though. There are lots of options for relatively small Python-esque web stacks, and considering that the architecture style seems to go that way – with lots of independent services and big JavaScript frontends – you're often quite well-served with Python.
But maybe that's just my somewhat biased perception, I wonder how the general trend of Python vs. Ruby fares in comparison to the trend of Django vs. Rails.
And speaking of bias: Once you get small services, interop features and libraries become quite important to save you work, and I have the feeling that quite often generic Ruby gems could use some work. Often there's a plethora of half-abandoned solutions for one task, all somewhat orphaned on Github.
Then again, both languages still don't come close to CPAN in that regard (then again, what does?).
Re: Ask HN: Why are more Startups using Python over Ruby?
#9What gives you that impression? Where did you get the numbers from? I reckon RoR is faster for rapid prototyping and development of new features so I'd choose that in the beginning for a one or two man startup. Later on if there's anything in particular you need that Python does, you can always recode once you're profitable.
Re: Ask HN: Why are more Startups using Python over Ruby?
#10NOTE: We're a technical startup in the telecommunications industry. We build web-based telephony applications in addition to traditional phone-based applications.
1. python's syntax is extremely clear and easy to read / maintain. I can open any python project, and immediately find my way around with no prior knowledge. This makes working in teams especially easy, when you have numerous developers committing various bits of code to various parts of the product throughout the day.
2. In the past two years, the python community has put a great amount of emphasis on documentation for open source projects (using Sphinx), and as a result of this, many open source python packages now have excellent documentation that makes it really easy to start using third party libraries and feel secure in your choices. Just check out http://rtfd.org/ for examples (ReadTheDocs is a hosted open source documentation site, focusing on python).
3. Django is an excellent web framework, and has tons of reusable open source applications that you can use, which makes rapidly developing web applications easy. The Django app ecosystem has been growing at an insane rate over the past few years, and there are more than enough applications to solve most common patterns.
4. Tools like tox, nose, coverage.py, and others make testing in python simple. It also helps that Django encourages testing in a large way (providing a default tests.py module for each application, with example tests). Having such a large emphasis on testing, with such great tools, makes it easy to "Do The Right Thing" and build tests into your software.
5. There are excellent tools in python for performing complex tasks, like celery / redis for building distributed queue processing workers.
6. PyPY (an alternative python interpreter) has been showing immense promise with python speed improvements. PyPY can be used as a drop-in python replacement on any linux system, and yields immense performance improvements to even the simplest code.
7. The python community in general tends to be very friendly, supportive, and encouraging. There are a lot of popular figures in the python community, and the overall personality traits of leading python community figures tends to be humble, helpful, and encouraging. This has fostered a really excellent community focused around accomplishing things, and helping people out, which I think gives the language a good overall feel.
Just my two cents.