Python has a Cheese Shop full of Eggs. I love straightforward names as much as anyone, but I don't think Python is exactly the leader in this department, either.
Re:Happy Birthday, Ruby
by Buttons840 on Thursday January 10, 2019 @12:33PM
(#18875863)
I did a Google search for "hacker news ruby" and "hacker news python" and then searched the top results for "gem" or "egg" or "wheel" usage. It's not a big study, but it is empirical.
Comments about Ruby say:
- "the webpacker gem"
- "Simple to integrate gems"
- "supported via gems"
- "few dozen obscure gems"
- "the I18n gem"
- "the ruby-each-line gem"
- "vast amount of Ruby gems available"
- "working with so many gems"
Comments about Python say: - "packaged either as a Wheel or an Egg"
- "The numpy module is a wheel"
- "a wheel is specifically not a source distribution"
- "NumPy publishes a lot of wheels for a given release"
All those Python related comments are from one single comment who's author was discussing the technical differences between Eggs and Wheels as packaging formats. Arguably only the last Python comment uses "wheel" as a synonym for "package" or "library".
Re:Happy Birthday, Ruby
by marcosdumay on Thursday January 10, 2019 @03:09PM
(#18877576)
Python's libraries come as eggs, wheels or source packages. Ruby has gems.
Rust inherited that characteristic, what is not great. It's not a big problem either, but it's there.
With a similar background I tried both Ruby and Pyhton at about the same time many years ago.
I didn't dislike Ruby, but I found Python much more intuitive, as you did, but I suspect that in great part was because it had a similar syntax and concepts as C++/Java.
It was like programming in C with a much cleaner syntax and writing 1/3 of the code, it really was an epiphany.
Then I found Ruby, and people talked very highly of it. But it had all these "Gems", I couldn't figure out what a Gem was. I didn't know enough. I thought it was like a compiler plugin or something. I thought that just like there were different versions of Java, there were different versions of Ruby called Gems.
Then I found Python, it had "libraries", I knew what a library was, it was something you could download and use in your code. I learned Python and liked it a lot. If Ruby had "libraries" instead of "Gems" I would have learned Ruby instead since I was exposed to it first.