AstonJ

AstonJ

Euruko Keynote: Beyond Ruby 3.0 (Yukihiro Matsumoto)

Includes talk about concurrency and performance topics:

Most Liked

ohm

ohm

Think of Matz as the “CEO” of Ruby. He’s not the one writing all the code. He’s not the one coming up with all the ideas. But he is the one, who have to be responsible for everything. He’s the face of Ruby. To that, yes, he’s playing with technology. He has to. He’s looking for what’s next for Ruby to pursue. That’s how we got Ractors. Matz started that project many years ago, by experimenting with different actor libraries and such.

You’ll see that the world disagrees with you here. Take a look at for example Shopify and GitHub. Both use Ruby extensively and both drive it forward, with for example Sorbet.

Why are people still using C? C was released almost 50 years ago. It doesn’t have garbage collection. You need to manage memory references yourself. There’s no classes or objects or anything. Different programming languages meet different needs. You want speed? Go for C. You want human-programmable? Go for Ruby.

If you go to your local grocery store, you’ll probably see a bunch of different brands of orange juice. Why do you think that is? I assume it’s because they each seek to fulfil a different need in their customers. Some are organic, some are with pulp, some without. Some are with sugar, some without. I see the different programming languages the same way. I would never use Ruby for making a stock trader, it’s not what the language is meant to be doing. A web app? Sure! I can even write one pretty fast with the current libraries and offerings.

Rewriting something just for the sake of having it written in some other language is, in my opinion, just as much a waste of time and energy. What’s wrong with MRI being written in C? Do you see many type errors or mutability errors in the interpreter itself?

That seem to be where we are headed. Especially with the # frozen_string_literal: true magic comments. However, as Matz discussed in the video, you can’t just say “From tomorrow all strings will be immutable” That would split the community in the same way we saw with Python2 and Python3.

I don’t think there’s such a thing as a “perfect language”. There’s no “one size fits all” solution to programming.

Yup. And still, we don’t see any other languages being so massively concurrent at its core. Why is that?

That’s exactly where it becomes important! If the language you use is unintuitive and unnatural, you’ll be making a ton more mistakes than if it wasn’t. Sure, if you want a job, where you have to write a thesis before you can start coding, you shouldn’t use Ruby, but Ruby is so intuitive that I believe I could have even my mom write most basic programs and understand what’s going on.

The beauty of civilised online debates. :heart: :tada:

Oh yes, indeed. I haven’t had the chance to fiddle with RBS or even Sorbet yet, but I am overjoyed that they exist and help make the world a (type) safer place :laughing:

I want in on the heart situation here: :black_heart::purple_heart::green_heart:And I hope that everybody reading this knows, that no ill intensions have ever been made. The internet and thus written communication can often be difficult, because you can’t convey tone and mimic. It gets even worse when the language you’re communicating in isn’t your own. (I tend to write more formel in English than I would in Danish)

dimitarvp

dimitarvp

Surely you mean 1400 and not 14, right? RIGHT?! :grin:

ohm

ohm

Argh, I’m so behind on all the conference videos! I still have 14 tabs open from RailsConf. :railway_track:

Where Next?

Popular Backend topics Top

tomekzawada
Greetings from Membrane Framework team! Check out our case study based on our latest projects at Software Mansion. https://blog.swmansi...
New
AstonJ
This article was written by @rvirding …over a decade ago! Posting here in case anyone else finds it of interest and adding it to our Erla...
New
First poster: wolf4earth
Understanding Partial Moves in Rust. Partial moves are an interesting but often misunderstood feature of Rust. However, with the right ...
New
First poster: bot
It’s not legacy code — it’s PHP. Vimeo has been using PHP in production for over 15 years. Find out how we keep a million lines of PHP i...
New
First poster: bot
We all know how to teach recursion. We’ve done it for decades. We pick some honored, time-tested examples—Fibonacci numbers and factorial...
New
First poster: bot
In this post we’re going to be looking at a more advanced use of Gleam’s type system, known as phantom types. Hopefully by the end of thi...
New
First poster: bot
This post explains why Scala projects are difficult to maintain. Scala is a powerful programming language that can make certain small te...
New
First poster: bot
I’ve been more serious about learning Rust recently, after dragging on with passive learning for a while. My first real programming langu...
New
New
brainlid
Episode 244 of Thinking Elixir. News includes the release of Elixir 1.18.2 with various enhancements and bug fixes, a new experimental SQ...
New

Other popular topics Top

Devtalk
Hello Devtalk World! Please let us know a little about who you are and where you’re from :nerd_face:
New
Devtalk
Reading something? Working on something? Planning something? Changing jobs even!? If you’re up for sharing, please let us know what you’...
1050 21151 394
New
AstonJ
If it’s a mechanical keyboard, which switches do you have? Would you recommend it? Why? What will your next keyboard be? Pics always w...
New
Exadra37
I am thinking in building or buy a desktop computer for programing, both professionally and on my free time, and my choice of OS is Linux...
New
DevotionGeo
I know that -t flag is used along with -i flag for getting an interactive shell. But I cannot digest what the man page for docker run com...
New
AstonJ
Just done a fresh install of macOS Big Sur and on installing Erlang I am getting: asdf install erlang 23.1.2 Configure failed. checking ...
New
New
AstonJ
Was just curious to see if any were around, found this one: I got 51/100: Not sure if it was meant to buy I am sure at times the b...
New
PragmaticBookshelf
Author Spotlight: Peter Ullrich @PJUllrich Data is at the core of every business, but it is useless if nobody can access and analyze ...
New
PragmaticBookshelf
Get the comprehensive, insider information you need for Rails 8 with the new edition of this award-winning classic. Sam Ruby @rubys ...
New