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

DevotionGeo
There are 3 main formatters for Erlang which you can use from the command-line, rebar3_format, Steamroller elmfmt. Visual Studio Cod...
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
Django 3.2 is just around the corner and it’s packed with new features. Django versions are usually not that exciting (it’s a good thing!...
New
paulanthonywilson
Post on using UDP multicasting with Elixir to broadcast presence, and listen for peers, on a local network. I have found this approach us...
New
paulanthonywilson
Following up on the previous post on using UDP multicasting to broadcast and detect peers on a network, I create a registry of those peer...
New
First poster: bot
Once a year, I look back at the recent developments in the PHP world, and also look forward to what’s to come. And just like in 2020 and ...
New
First poster: bot
I wrote Python for the last 10 years, and I always tend to write code in a “functional” way - map, filter, lambda and so on, it makes me ...
New
First poster: bot
Our blog has had a long standing interest in novel uses of the BEAM, or Erlang virtual machine, as shown by the many articles we have pub...
New
brainlid
In episode 83 of Thinking Elixir, We talk with Isaac Yonemoto about the Zig language and his Zigler Elixir library. We learn where Zig ca...
New
StuntProgrammer
In building lofi.limo, media storage and distribution naturally came up. I have songs, announcements, and background image loops which I ...
New

Other popular topics Top

AstonJ
Or looking forward to? :nerd_face:
498 13895 271
New
AstonJ
Do the test and post your score :nerd_face: :keyboard: If possible, please add info such as the keyboard you’re using, the layout (Qw...
New
PragmaticBookshelf
Build highly interactive applications without ever leaving Elixir, the way the experts do. Let LiveView take care of performance, scalabi...
New
Margaret
Hello everyone! This thread is to tell you about what authors from The Pragmatic Bookshelf are writing on Medium.
1147 29994 760
New
AstonJ
Saw this on TikTok of all places! :lol: Anyone heard of them before? Lite:
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 Mike Riley @mriley This month, we turn the spotlight on Mike Riley, author of Portable Python Projects. Mike’s book ...
New
AstonJ
If you want a quick and easy way to block any website on your Mac using Little Snitch simply… File > New Rule: And select Deny, O...
New
PragmaticBookshelf
Author Spotlight: VM Brasseur @vmbrasseur We have a treat for you today! We turn the spotlight onto Open Source as we sit down with V...
New
PragmaticBookshelf
Explore the power of Ash Framework by modeling and building the domain for a real-world web application. Rebecca Le @sevenseacat and ...
New