Python vs R vs Ruby

Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Python
Python

27.4K
20.6K
+ 1
5.9K
R
R

1K
658
+ 1
284
Ruby
Ruby

12.2K
6.7K
+ 1
3.8K
- No public GitHub repository available -

What is Python?

Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.

What is R?

R provides a wide variety of statistical (linear and nonlinear modelling, classical statistical tests, time-series analysis, classification, clustering, ...) and graphical techniques, and is highly extensible.

What is Ruby?

Ruby is a language of careful balance. Its creator, Yukihiro “Matz” Matsumoto, blended parts of his favorite languages (Perl, Smalltalk, Eiffel, Ada, and Lisp) to form a new language that balanced functional programming with imperative programming.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose Python?
Why do developers choose R?
Why do developers choose Ruby?

Sign up to add, upvote and see more prosMake informed product decisions

What are the cons of using Python?
What are the cons of using R?
What are the cons of using Ruby?

Sign up to add, upvote and see more consMake informed product decisions

What companies use Python?
What companies use R?
What companies use Ruby?

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Python?
What tools integrate with R?
What tools integrate with Ruby?

Sign up to get full access to all the tool integrationsMake informed product decisions

What are some alternatives to Python, R, and Ruby?
Java
Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!
JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
Scala
Scala is an acronym for “Scalable Language”. This means that Scala grows with you. You can play with it by typing one-line expressions and observing the results. But you can also rely on it for large mission critical systems, as many companies, including Twitter, LinkedIn, or Intel do. To some, Scala feels like a scripting language. Its syntax is concise and low ceremony; its types get out of the way because the compiler can infer them.
Anaconda
A free and open-source distribution of the Python and R programming languages for scientific computing, that aims to simplify package management and deployment. Package versions are managed by the package management system conda.
Perl
Perl is a general-purpose programming language originally developed for text manipulation and now used for a wide range of tasks including system administration, web development, network programming, GUI development, and more.
See all alternatives
Decisions about Python, R, and Ruby
Yashu Mittal
Yashu Mittal
Founder & CEO at CodeCarrot · | 1 upvotes · 6.3K views
atCodeCarrotCodeCarrot
Markdown
Markdown
Ruby
Ruby
Jekyll
Jekyll

Jekyll is an open source static site generator (SSG) with a Ruby at its core which transform your plain text into static websites and blogs.

It is simple means no more databases, comment moderation, or pesky updates to install—just your content. As said earlier SSG uses Markdown, Liquid, HTML & CSS go in and come out ready for deployment. Lastly it's blog-aware permalinks, categories, pages, posts, and custom layouts are all first-class citizens here.

See more
Johnny Bell
Johnny Bell
Senior Software Engineer at StackShare · | 10 upvotes · 186.9K views
atStackShareStackShare
styled-components
styled-components
Emotion
Emotion
Glamorous
Glamorous
Showdown
Showdown
Ruby
Ruby
GraphQL
GraphQL
React
React
Markdown
Markdown
#StackDecisionsLaunch
#CssInJs
#Frontend

For Stack Decisions I needed to add Markdown in the decision composer to give our users access to some general styling when writing their decisions. We used React & GraphQL on the #Frontend and Ruby & GraphQL on the backend.

Instead of using Showdown or another tool, We decided to parse the Markdown on the backend so we had more control over what we wanted to render in Markdown because we didn't want to enable all Markdown options, we also wanted to limit any malicious code or images to be embedded into the decisions and Markdown was a fairly large to import into our component so it was going to add a lot of kilobytes that we didn't need.

We also needed to style how the markdown looked, we are currently using Glamorous so I used that but we are planning to update this to Emotion at some stage as it has a fairly easy upgrade path rather than switching over to styled-components or one of the other cssInJs alternatives.

Also we used React-Mentions for tagging tools and topics in the decisions. Typing @ will let you tag a tool, and typing # will allow you to tag a topic.

The Markdown options that we chose to support are tags: a, code, u, b, em, pre, ul, ol, li.

If there are anymore tags you'd love to see added in the composer leave me a comment below and we will look into adding them.

#StackDecisionsLaunch

See more
Jerome Dalbert
Jerome Dalbert
Senior Backend Engineer at StackShare · | 5 upvotes · 9.7K views
atStackShareStackShare
Rails
Rails
Ruby
Ruby
Markdown
Markdown
#StackDecisionsLaunch

I needed to make stack decisions accept a subset of Markdown, similarly to sites like Reddit or Stack Overflow.

I used the redcarpet Ruby gem for parsing, and Rails' sanitize helper made it very easy to only allow certain tags: links, bold, italics, lists, code blocks, paragraphs.

Problem solved! #StackDecisionsLaunch

See more
Interest over time
Reviews of Python, R, and Ruby
Avatar of kfretwell33
Founder at Pouch
Review ofRubyRuby

I taught myself Ruby about a year ago. I had experience with HTML/CSS, MySQL, and a little bit of javascript and python but would consider this my first true programming language I became proficient in (later picked up Swift).

I started with a CodeAcademy course before working on my first Rails project. The language is easy to read and Rails is an amazing framework. The online community is fantastic, the documentation is amazing, and there is no shortage of Ruby Gems which allows you to quickly "cobble" together a new project.

How developers use Python, R, and Ruby
Avatar of Exchange rates API
Exchange rates API uses PythonPython

Beautiful is better than ugly.

Explicit is better than implicit.

Simple is better than complex.

Complex is better than complicated.

Flat is better than nested.

Sparse is better than dense.

Readability counts.

Special cases aren't special enough to break the rules.

Although practicality beats purity.

Errors should never pass silently.

Unless explicitly silenced.

In the face of ambiguity, refuse the temptation to guess.

There should be one-- and preferably only one --obvious way to do it.

Although that way may not be obvious at first unless you're Dutch.

Now is better than never.

Although never is often better than right now.

If the implementation is hard to explain, it's a bad idea.

If the implementation is easy to explain, it may be a good idea.

Namespaces are one honking great idea -- let's do more of those!

Avatar of StackShare
StackShare uses RubyRuby

Only thing worth noting here is that we saw some major issues with memory swapping on Heroku with Ruby 2.1.2. We weren’t the only ones. So we actually reverted back to 2.0.0. Here’s what happened: reverting. We’re planning to upgrade to 2.1.4 once we’ve had time to test thoroughly.

Avatar of benyomin
benyomin uses RR

What are my other choices for a vectorized statistics language. Professor was pushing SAS Jump (or was that SPSS) with a menu-driven point and click approach. (Reproducibility can still be accomplished, you publish the script generated by all your clicks.) But I want to type everything, great online tutorials for R. I think I made the right pick.

Avatar of benyomin
benyomin uses RubyRuby

When we are comparing Turing complete languages it's not about what compiles faster or to the cleanest machine code, it's about what the developer can think in and write faster, including the availability of libraries. A couple of times I wrote some ruby scripts for this project. I just like the language best for some things. Love the syntax.

Avatar of Web Dreams
Web Dreams uses PythonPython

To me, this is by far the best programming language. Why? Because it’s the only language that really got me going after trying to get into programming with Java for a while. Python is powerful, easy to learn, and gets you to unsderstand other languages more once you understand it. Did I state I love the python language? Well, I do..

Avatar of ttandon
ttandon uses PythonPython

Backend server for analysis of image samples from iPhone microscope lens. Chose this because of familiarity. The number one thing that I've learned at hackathons is that work exclusively with what you're 100% comfortable with. I use Python extensively at my day job at Wit.ai, so it was the obvious choice for the bulk of my coding.

Avatar of papaver
papaver uses PythonPython

been a pythoner for around 7 years, maybe longer. quite adept at it, and love using the higher constructs like decorators. was my goto scripting language until i fell in love with clojure. python's also the goto for most vfx studios and great for the machine learning. numpy and pyqt for the win.

Avatar of SaberEsPoder
SaberEsPoder uses RubyRuby

We are primarily a Ruby shop; our main apps are running on Ruby + Rails, our Slack bot is written in Ruby and our smaller projects are on Sinatra. It makes it really easy for us to re-use code and switch between different projects since they are all on the same language.

Avatar of Tim Lucas
Tim Lucas uses RubyRuby

Because happiness. Testing via RSpec (mostly model and request specs), Factory Girl for fixtures, VCR for testing API responses, timecop, Redcarpet for Markdown rendering, Intercom gem for posting events.

Avatar of Karma
Karma uses RubyRuby

Most of our services are written in Ruby. We started out as a Ruby shop, but we're slowly also moving some stuff to Go. We're using Go more and more these days, actually, including some backend services.

Avatar of Blood Bot
Blood Bot uses PythonPython

Large swaths of resources built for python to achieve natural language processing. (We are in the process of deprecating the services written in python and porting them over to Javascript and node)

Avatar of Ralic Lo
Ralic Lo uses RR

Connect to database, data analytics, draw diagram. Machine Learning application, and also used Spark-R for big data processing.

Avatar of Tino Gehlert
Tino Gehlert uses RR

Visualisation of air quality in various rooms by RShiny (hosted free on shinyapps.io)

Avatar of Sesync
Sesync uses RR

R is primarily used by SESYNC's researchers

Avatar of STILLWATER SUPERCOMPUTING INC
STILLWATER SUPERCOMPUTING INC uses RR

Offline deep analytics and modeling

How much does Python cost?
How much does R cost?
How much does Ruby cost?
Pricing unavailable
Pricing unavailable
Pricing unavailable
News about R
More news