Python vs. Ruby vs. R

  • 3.4K
  • 21.4K
  • 1.12M
  • 2.63K
  • 2.98K
  • 203K
  • 764
  • 931
  • 277K
No public GitHub repository stats 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 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.

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.

Want advice about which of these to choose?Ask the StackShare community!

Why do developers choose Python?
Why do you like Python?

Why do developers choose Ruby?
Why do you like Ruby?

Why do developers choose R?
Why do you like R?

What are the cons of using Python?
Downsides of Python?

What are the cons of using Ruby?
Downsides of Ruby?

What are the cons of using R?
Downsides of R?

What companies use Python?
3315 companies on StackShare use Python
What companies use Ruby?
2952 companies on StackShare use Ruby
What companies use R?
158 companies on StackShare use R
What tools integrate with Python?
86 tools on StackShare integrate with Python
What tools integrate with Ruby?
73 tools on StackShare integrate with Ruby
What tools integrate with R?
2 tools on StackShare integrate with R

What are some alternatives to Python, Ruby, and R?

  • JavaScript - Lightweight, interpreted, object-oriented language with first-class functions
  • PHP - A popular general-purpose scripting language that is especially suited to web development
  • HTML5 - 5th major revision of the core language of the World Wide Web
  • Java - A concurrent, class-based, object-oriented, language specifically designed to have as few implementation dependencies as possible

See all alternatives to Python

Python 2.7.16 release candidate 1 available
Python 3.8.0a1 is now available for testing
Python 3.7.2 and 3.6.8 are now available
Ruby 2.6.1 Released
Ruby 2.6.0 Released
Ruby 2.6.0-rc2 Released
Related Stack Decisions
Yashu Mittal
Yashu Mittal
Founder & CEO at CodeCarrot · | 1 upvotes · 1044 views

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
Sr. Software Engineer at StackShare · | 7 upvotes · 4918 views

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.


See more
Jerome Dalbert
Jerome Dalbert
Backend Engineer at StackShare · | 3 upvotes · 4088 views

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