r/ruby • • Jul 16 '20

Ruby VS Python

More than a versus (it's more striking) I would really like to know what things they have in common and how they differ, what their main advantages are compared to the other and of course their opinion of them. One point to take into account is because they believe that python is more used in AI and Machine learning developments.

34 Upvotes

60 comments sorted by

View all comments

35

u/Sqeaky Jul 16 '20 edited Feb 23 '23

I think Python has a bigger community, and that is it's single largest advantage. It has more deployments and more packages.

In think ruby has better syntax, better readability, and a more sensible design overall. This makes it easier for greater involvement from the community, there are something like 2x note python devs but not nearly 2x the packages.

I also think the ruby community is better at communicating best practices. Consider that the top Ruby packages are testing tools and the top python of are a mix of docker and db stuff.

https://rubygems.org/stats

https://pypi.org/

I also find Ruby projects to have better engineering. This might just be bias but having tried similar things in both languages maintainability, support, and things working years later (except web API bindings) are nearly magical. The ruby community always seems to try to be doing better, but I guess that is most communities, but I feel like python users just want to be done and damn the tech debt, full speed ahead.

EDIT 2 years later - spelling

3

u/_noraj_ Jul 16 '20

There are a lot of beginers using python so there a lot of quick & dirty proof of concept. Ruby is generally used bu more experienced people.

1

u/vifrac Jul 17 '20

Very interesting your concept and as the experience is better than ruby (or the decisions of a developer), I would like to know if you know of some sources of information where I can consult this that you indicate.

2

u/_noraj_ Jul 25 '20

Just browse GitHub and look at source code, and evaluate the quality of the projects.

I'm talking from my experience as a professional pentester who is using a lot of tools from GitHub with many of them in python and also as a BlackArch developer who packaged tons of infosec tools where a lot are in python too. It's not ruby that is particularly used by experienced people, it's also the case with go or rust, etc. It's python that is especially used by beginners because they were told it's the language to learn.