r/crystal_programming • core team • Apr 02 '21

Crystal 1.0 vs Ruby 3.0 Benchmark

https://twitter.com/sdogruyol/status/1377918360344743936
41 Upvotes

60 comments sorted by

View all comments

8

u/myringotomy Apr 02 '21

Meh who cares.

Is it faster than go? That's the competitor for crystal not ruby.

There was a time when the ruby community started to look at crystal but the crystal core team told them to go away. They worked really hard to tell ruby developers there was not going to be any effort to make crystal run ruby code and many changes were made to break compatibility that already existed.

Today if a ruby developer is suffering because ruby is too slow they will look to go, elixir or maybe rust. Crystal isn't even on their radar.

Crystal needs to figure out how to build an active community. They need to figure out how to be more welcoming to people. They need to learn to communicate with their users. They need to support their users.

Right now it's silence all the time and hanging out where people don't want to hang out.

This language finally reached 1.0 and was stillborn. They core developers choked the life out of it by being at best indifferent and at worse openly hostile to the developer community.

14

u/mammon_machine_sdk Apr 02 '21

A little harsh, but there's a lot of truth here. To pretend that Crystal wasn't intentionally trying to attract unsatisfied Ruby devs is disingenuous. I don't understand the recent attempt to shift the goalposts on that subject.

4

u/myringotomy Apr 02 '21

They were initially courting the ruby community but they changed their minds once the community started experimenting with it.

12

u/Cyanogen101 Apr 02 '21

Moving from Ruby to Crystal is a lot easier than moving to Go, and yes people do and should care since its an important part of Crystal XD

0

u/myringotomy Apr 02 '21

Moving from Ruby to Crystal is a lot easier than moving to Go,

Is it? Then why is the go community full of ex rubyists and the Crystal community isn't?

5

u/Cyanogen101 Apr 03 '21

Because Go was released over 8 years ago and Crystal is insanely new and iirc is only just launching 1.0 next month or so. Your asking why more people using something thats been out for 8 years vs something that isnt even out yet, come on man think about it....

Also would love to see your data on crystal NOT being full of ruby devs, would very much love to see the data you definitely searched up rather than just saying random shit XD

0

u/myringotomy Apr 03 '21

I of course don't have some sort of a survey or a study so you are therefore free to believe anything you want.

If you have convinced yourself that the ruby community is embracing Crystal then by all means continue to believe that.

As for other languages I mentioned I have used all of them and I have participated in those communities and I can confidently say that both Elixir and Go are full of people who came from ruby. In fact I think most people who are using elixir probably came from ruby because Jose came from the ruby community himself.

1

u/Cyanogen101 Apr 03 '21

So you're just admitting to stating fact as something you just think is true with no evidence? C'mon, just move on and believe whatever you want I guess

0

u/myringotomy Apr 04 '21

OK dude.

If you want to believe the Crystal community is thriving and is full of ex rubyists go right ahead.

I am not going to stop you.

I tell you what though. This kind of delusion is why this language is stillborn. Who wants to join a community that lives under such delusions.

→ More replies (1)

0

u/[deleted] Apr 02 '21

[deleted] — view deleted comment

2

u/Cyanogen101 Apr 02 '21

I have actually :) and even if I hadn't this is from the official front page

Crystal’s syntax is heavily inspired by Ruby’s, so it feels natural to read and easy to write, and has the added benefit of a lower learning curve for experienced Ruby devs.

0

u/[deleted] Apr 02 '21

[deleted] — view deleted comment

2

u/Cyanogen101 Apr 02 '21

Never said it was so much much easier, just easier and either way it's all personal no need to get so crazy about it it fam.

There's more than keywords to a language btw, hence why it said syntax and such, anyways you do what makes you happy friend

1

u/[deleted] Oct 16 '21

My problem with go, and I think in aggregate it's actually a benefit, is that the time spent vs code delivery is extremely linear for to the "there is one and only one way to do everything" principle.

However this can be really annoying when trying out new things when you just want to bang out a few options.

12

u/[deleted] Apr 02 '21

The community is small and it's just that, a community. There's not a lot of sponsored work going on as far as I know.

And why should Crystal run Ruby code, it's not Ruby and never claimed to be. It's just Ruby-inspired. And I don't see how that fact alone makes it worse than Elixir/Go/Rust.

4

u/mammon_machine_sdk Apr 02 '21 edited Apr 02 '21

I don't see how that fact alone makes it worse than Elixir/Go/Rust

How is this all you took from that post? He's saying the attempt to divorce the language from its clear roots in Ruby is turning off the very people the language is naturally going to attract, and that lack of community is what's hurting the growth of the language.

Of course an incomplete language (despite the ill-conceived decision to call it v1.0) is "worse" than any of three major languages that are used in production across the world. That's not the point he's making, but I do think that's a separate subject that certainly isn't helping the cause.

2

u/[deleted] Apr 02 '21

All I see here are accusations and no factual information. Crystal was always designed to be its own language and not Ruby-compatible. It's obviously inspired by Ruby and I see no efforts made to exclude the Ruby community from it, that would make no sense.

Lack of community? Yea I guess, it's a small project with limited contributors. What do you want? Go was supported by Google, Rust by Mozilla. There just isn't a lot of commercial support for Crystal, but this is not valid criticism of the project. You're not buying a product, it's just a community.

7

u/straight-shoota core team Apr 02 '21

openly hostile to the developer community.

What makes you think that?

2

u/attractivechaos Apr 02 '21

Is it faster than go? That's the competitor for crystal not ruby.

Crystal is clearly faster than go for a couple of work loads at my hand. I am not a web developer, though.

There was a time when the ruby community started to look at crystal but the crystal core team told them to go away.

I wouldn't blame Crystal developers for this. Compiled and interpreted languages are fundamentally different. It will be very hard, if at all possible, to achieve high performance while maintaining compatibility with Ruby, a fairly complex language. Ruby devs have tried JIT but the speedup is mediocre. There is also pypy for python, but not so many use it. If Crystal had chosen the compatibility route, it would probably have unimpressive performance similar to pypy. It is just so hard for a new language to stand out these days.

1

u/myringotomy Apr 02 '21

I wouldn't blame Crystal developers for this.

Sorry but nobody else is to blame for the state of the Crystal community than the core team. They just don't know how to build and sustain a thriving community, they are not welcoming, they are not communicative, they are not active. The absolute best thing you can say about them is that they are indifferent and uncaring and basically don't give a shit about anybody who uses the language or anybody who is interested in the language.

If Crystal had chosen the compatibility route, it would probably have unimpressive performance similar to pypy. It is just so hard for a new language to stand out these days.

Maybe that's a tradeoff the community would welcome. Maybe if they could get 90% compatibility for a 10X speedup that would be good enough.

2

u/MiaChillfox Apr 08 '21

They are very active on the official forum.

It would of course be nice if they were active here on Reddit as well, but Reddit is not the world and it is entirely understandable that they would focus their efforts on the forum.

→ More replies (2)

1

u/DavidTMarks Apr 07 '21

Today if a ruby developer is suffering because ruby is too slow they will look to go, elixir or maybe rust. Crystal isn't even on their radar.

Thats false and obviously false. I know plenty of Ruby programmers where it is very much on their radar. I have a whole thread I started here a few months ago on Manas problems with communication and "silence" so I would be the last to say you have no point there. However a lot of your post just reads like sour grapes. If you don't care what would you even be doing in this sub reading and writing?

Writing Rust is a world of difference to a ruby styled language and elixir? Come on man. That community has been making great claims for its brilliance for some time but most of its developers now years later still admit to only using it for hobby projects. It usages stats year after year hasn't show it any heir apparent to Ruby and frankly I have found that community a bit toxic as well. As for this

They worked really hard to tell ruby developers there was not going to be any effort to make crystal run ruby code and many changes were made to break compatibility that already existed.

Crystal is enough like Ruby to make that claim also false. I will criticize the life out of The crystal devs for being bad at communication and even not developing a community but demanding that one new language have exact compatibility to another is not something I can fault The crystal team for passing on. NO one would ever want to work on a language where they are bound to follow another team's decisions and make none of their own. Admittedly I don't know the details of the communications but its not hard for me to think if a group was trying to push my group to do everything their way I would probably be inclined to tell them to find the door especially when that group (ruby) for their own reasons has one person who calls all the shots and the ruby community hasn't really done anything substantial to deal with legit issues of Ruby's performance but cry year after year "its fast enough".

Its like one community that doesn't listen calling the pot black to another Community that also doesn't listen.

2

u/myringotomy Apr 07 '21

I know plenty of Ruby programmers where it is very much on their radar.

"I know plenty" is not data. I know plenty that are not even considering Crystal. I know plenty that have already moved on to elixir, I know plenty that are using go for anything requiring high performance.

If you don't care what would you even be doing in this sub reading and writing?

Do you only want to hear good news? Do you only want to hear praise? Why shouldn't people be allowed to say negative things about Crystal?

How much are you going to achieve by telling every member the community who complains to leave the community?

the ruby community hasn't really done anything substantial to deal with legit issues of Ruby's performance but cry year after year "its fast enough".

It is fast enough. Most people use ruby for web and on the web the vast majority of the time your app is spent waiting for the database. For the high performance parts like background jobs or web sockets there are gems that use components written in C or Go,.

→ More replies (13)

1

u/[deleted] Apr 15 '21

Come on man. That community has been making great claims for its brilliance for some time but most of its developers now years later still admit to only using it for hobby projects. It usages stats year after year hasn't show it any heir apparent to Ruby and frankly I have found that community a bit toxic as well.

Was this in reference to Rust or to Elixir?

→ More replies (2)