00:00:09.599
We're having quite a discussion here about the choice of pizza.
00:00:15.200
I cannot get over the fact that some people actually want to have pineapple on their pizza.
00:00:21.359
I just can't understand it.
00:00:27.119
Well, it's almost dinner time, and we are ordering pizza for everyone.
00:00:32.160
Are there actually people here ordering pizza with pineapple? Don't give me that look!
00:00:38.800
I can't see you, so do you have an opinion about this? Because I have strong feelings.
00:00:45.360
My preference is to not have pineapple on pizza, but I think we should just let people have their own preferences.
00:00:51.520
If people like pineapple on pizza, they should be allowed to have it.
00:00:58.000
If you're a group of people ordering a pizza, just get a second pizza without pineapple.
00:01:04.000
Problem solved, right?
00:01:09.680
No, you can ask any random Italian person, and they will tell you that it’s not supposed to be on a pizza.
00:01:17.280
Sorry, but we’re getting very heated discussions here because it’s dinner time.
00:01:25.600
Everyone is grumpy and hungry, and then this comes up.
00:01:30.720
It’s not supposed to be an issue, right?
00:01:35.840
I mean, I just like to let people have their preferences.
00:01:42.159
How is your enjoyment of a pizza without pineapple in any way reduced by someone nearby enjoying pineapple on pizza?
00:01:48.320
Okay, Coco.
00:02:05.439
Tatiana, I want to ask you something.
00:02:12.239
What do you look forward to most in Ruby 3? Did you get the chance to watch Matt's talk?
00:02:17.680
Yes, I mostly watched the biggest part of it.
00:02:22.879
I'm really looking forward to performance improvements because that is what other communities are picking on us about.
00:02:29.120
Performance will be better for everyone, and I guess it will never be enough.
00:02:35.360
Same question for you, Penelope.
00:02:41.599
That's a really interesting question. I have a lot of curiosity about what can be achieved with the Ruby type profiler.
00:02:48.239
I attended Ruby Kaigi the last time it occurred in person, and it was the first time we got to see the type profiler.
00:02:56.239
Having seen it now evolve, determining the types of the program at runtime through type profiling is really compelling.
00:03:02.959
However, as you noticed from Matt's talk, we don’t actually have an officially sanctioned Ruby type checker yet.
00:03:10.480
The Ruby team did not introduce a type checker today, nor did they introduce one at Ruby Kaigi.
00:03:17.120
As far as I'm aware, the Ruby team has not expressed an opinion on what form the type checker will take.
00:03:22.800
As someone currently building developer tooling for the Ruby language, I am very curious to see what we do with that.
00:03:29.280
So, that's what’s interesting to me.
00:03:35.120
Thank you both. I'm curious, Penelope. You mentioned you were at Brighton Ruby. How has the feeling been at online events?
00:03:41.760
As a speaker, doing an online event is much harder than doing an in-person event.
00:03:48.639
It turns out that reading body language, noise, and laughter from a crowd is super critical to actually feeling good while giving a talk.
00:03:57.280
Having nothing come back makes it really difficult.
00:04:02.400
It’s funny because Sean, who is speaking later, pre-recorded their talk.
00:04:09.039
They had us all join a Zoom call to be their audience, which I thought was an interesting way to do it.
00:04:16.160
It's tough, and I'm also a conference organizer.
00:04:22.880
There are definitely fewer people attending and submitting talks.
00:04:31.919
We should be frank; this is a really hard time for everyone due to the global pandemic.
00:04:50.240
However, it’s great that we’re pulling the community together to do these things.
00:04:56.720
Doing something for the community is definitely better than doing nothing.
00:05:03.120
Thank you so much for making this happen—it feels like a Ruby conference in a way.
00:05:10.240
Yeah, it’s a weird time.
00:05:20.639
Tatiana, how are these times treating you? Are you working remotely only, or do you go to the office occasionally?
00:05:27.839
Or is this like, 'I will never go to the office again because this is amazing'?
00:05:35.039
How has the pandemic been treating you?
00:05:42.000
I'm working at GitLab, which is a fully remote company, and we don't have any office.
00:05:48.400
I have been working from home for almost two years.
00:05:54.080
I found it great, but I do have a few developers in Kharkiv.
00:06:00.479
Sometimes we go together for co-working days, and it’s nice to see people.
00:06:05.599
But when the lockdown and pandemic started, I thought, 'Okay, I’m still working from home.'
00:06:11.039
I still have to take my dog out for walks, so nothing changed for me.
00:06:16.880
However, after a few months, I realized that it hit me hard.
00:06:22.160
Even if I wanted to, I couldn't visit my family or co-workers.
00:06:28.479
It's not very good for anyone, even if my daily routine hasn't changed.
00:06:39.680
I can imagine. For all of us, it's been something similar.
00:06:46.080
I really appreciate that you both came on today and gave us your wonderful talks.
00:06:51.840
I want to throw in a cheeky question, if I may.
00:06:57.840
As folks know, this is all happening live.
00:07:03.360
Penelope alluded to this with Sean's talk; some conferences are doing pre-recorded talks.
00:07:11.360
While we're doing these live events, what's your preferred format?
00:07:16.320
Between live and pre-recorded talks for online events, Penelope?
00:07:22.559
The answer is it depends.
00:07:29.760
If most of the other talks for a conference are going to be live, I want to fill in with the rest of the set.
00:07:36.880
Breighton Ruby had all pre-recorded talks, and the interesting thing about that is you can do multiple takes.
00:07:45.760
I sent Andy, the organizer, a bundle of four takes, and he could edit them together.
00:07:53.040
It's kind of like compressing that experience, giving multiple tries.
00:08:00.480
There are trade-offs to consider; I don’t know that one is better than the other.
00:08:07.919
However, we’ve learned that we can make art using programming languages, draw, paint, and—did you know you can also make music?
00:08:17.520
There was a talk last year about how to create music with a programming language.
00:08:25.040
I think Ramón might tell us a bit more about that musical interlude.
00:08:32.400
Absolutely! However, I’m sorry to tell you that we're ahead of schedule.
00:08:40.160
It’s 5:30 right now.
00:08:46.160
Let’s keep going with our panel discussion until six o'clock, if that's fine.
00:08:50.400
Tatiana, no problem. I was 30 minutes ahead of schedule, no issue at all.
00:08:56.640
So, Tatiana, I wanted to ask what your opinion is about pre-recorded versus live talks in online conferences?
00:09:02.240
From my personal experience, it's much easier to do live talks.
00:09:10.720
Pre-recorded talks can be much more time-consuming; I once tried to record a fifteen-minute video.
00:09:17.840
It took me two hours because I was taking different takes.
00:09:22.479
This is why I find live talks much easier; you can read body language and see people's faces.
00:09:30.160
With live online talks, there's a sense of urgency and spontaneity.
00:09:36.959
It feels exciting because it’s happening right now.
00:09:43.680
Yes, I also agree. Doing it live feels like getting up on a conference stage.
00:09:49.920
I have been missing that feeling since the pandemic began.
00:09:58.000
Before the pandemic, I spoke at eight or nine Ruby conferences in a year.
00:10:06.080
This year, I've spoken at two, maybe three or four by the end of the year.
00:10:12.000
It’s been a big difference.
00:10:18.720
Tatiana, if you could change one thing about Ruby, what would that be?
00:10:26.080
That’s a really hard question for me. Maybe I would add something or remove something.
00:10:34.239
Having a formatter would actually be really nice.
00:10:42.360
But I suppose it’s easier for me to follow the standard than to complain about missing features.
00:10:48.640
So, I don’t actually know how to answer that question.
00:10:55.120
How about you, Penelope?
00:11:00.320
If you could change one thing in Ruby, what would it be?
00:11:10.560
I have more than one thing in mind. The grammar of the Ruby language is extremely complicated.
00:11:20.560
There are so many ways to express the same thing in Ruby, and we're adding more.
00:11:26.480
Mats is adding right-hand assignment to Ruby 3; I think that’s a bad idea.
00:11:34.239
If you add features that don’t give any new capabilities, you increase complexity.
00:11:40.640
If I had to pick one thing I would change, I would remove the one-nine hash syntax.
00:11:47.040
I prefer to go back to only having hash rockets.
00:11:52.800
This is one of the most controversial takes among Ruby developers.
00:11:59.440
The one-nine style syntax creates symbols instead of strings, making it incompatible with JSON.
00:12:05.840
It just complicates the language without any actual gain.
00:12:14.640
Removing things that don't provide value would simplify things.
00:12:21.760
I agree, single quotes are confusing.
00:12:27.360
There’s no reasonable value in having both single and double quotes.
00:12:35.120
Fortunately, Rubyfmt normalizes all string literals to double quotes.
00:12:43.520
Yes, Rubyfmt does a good job in handling that.
00:12:50.880
It simplifies the process and helps keep things consistent.
00:12:57.840
In the chat today, Matt mentioned right-hand assignment.
00:13:04.479
I was surprised to see that folks were excited about hash rockets.
00:13:10.880
I came to Ruby after version 1.9, so I got used to the colon syntax.
00:13:18.080
I have questions about syntax and language evolution.
00:13:24.560
In a hash literal, it's valid to say open parenthesis, some expression, fat arrow variable name, close parenthesis.
00:13:30.479
It ends up causing confusion, especially when new features are introduced.
00:13:36.880
Thank you for sharing your thoughts. I appreciate the candor in your opinions.
00:13:42.720
Well, I'm known for having strong opinions about Ruby styling.
00:13:48.480
I started programming when I was like 12 or 13, in Java 1.2.
00:13:53.600
I discovered Ruby while taking a web applications course in university.
00:14:01.600
I was fascinated by computers from an early age.
00:14:07.200
While in university, I ran into bugs in RSpec and ended up becoming a committer.
00:14:12.800
That’s how I ended up hungry for more Ruby.
00:14:20.960
And I am still finding joy in programming with Ruby today.
00:14:29.760
My first language was Visual Basic, and I wanted to be a game developer.
00:14:37.120
Eventually, I found Ruby because of a job opportunity close to home.
00:14:43.840
Once I started learning Ruby, I fell in love with the syntax.
00:14:50.080
I became a happy Ruby developer while switching my focus from game development.
00:14:59.040
Now, I focus on Ruby and web development.
00:15:07.040
I am also a fan of adventure games like Siberia.
00:15:14.320
I still play games occasionally, but not as frequently as before.
00:15:22.240
Penelope, do you enjoy playing games online or on PlayStation?
00:15:29.760
Yes, I play quite a few video games. Recently, I have been playing a lot of Factorio.
00:15:39.040
Also, I'm hooked on a game called Monster Train, a card roguelike.
00:15:49.120
Ramón gets excited whenever I mention Factorio.
00:15:58.080
Especially now that we're spending so much time inside, it's a great way to keep busy.
00:16:05.600
It’s wonderful that people share their hobbies and interests with pride.
00:16:12.080
Penelope, you mentioned that you've been dabbling in Rust. Are there any other languages you’ve been working with?
00:16:20.640
In my job, I primarily work with Ruby and some Go.
00:16:27.920
Most of the code in Rubyfmt is written in Rust, and some in C.
00:16:34.799
I also dabble in JavaScript occasionally, but I'm not great at it.
00:16:41.440
Interestingly, I am fluent in Haskell and have built large programs in that language.
00:16:47.920
How about you, Tatiana? Have you been exploring other languages?
00:16:54.480
I don’t have strong opinions about programming languages.
00:17:00.720
My daily work is primarily in Ruby on Rails, and I’ve also done some C# and C++.
00:17:07.040
I have some experience with Lisp too, but overall I focus on Ruby.
00:17:14.440
Have you been watching lots of conference talks during this time?
00:17:21.040
Tatiana, would you like to go first?
00:17:28.640
In July, I participated in the RubyConf, an online conference held by the team from Minsk.
00:17:36.399
I found some great talks and am excited to see them published online.
00:17:43.840
I’d also love to promote the Ruby Meditation events taking place in Kyiv, Ukraine, which are also happening online.
00:17:50.320
I'm eager to see what events they will organize next.
00:17:58.160
On my part, I’ve discovered a new speaker during the pandemic.
00:18:05.440
Brian Cantrell doesn’t speak specifically about Ruby topics, but gives compelling talks about Unix philosophy in the cloud.
00:18:12.800
As a reliability engineer, I find his insights fascinating.
00:18:20.720
I also want to shout out Sean's talk, which is great if you enjoyed Pokémon as a child.
00:18:27.840
There's a lot of laughter to be had there!
00:18:35.680
I would also give a plug for RubyConf; the CFP is open for about six more days.
00:18:42.640
It’s a great opportunity for those who can’t usually attend in person.
00:18:50.240
Tatiana, who inspires you in the Ruby community?
00:18:58.160
I would pick Katrina Owen. I really admire her books and talks.
00:19:05.800
She's insightful and a kind person. I love hearing anything from her.
00:19:12.560
What about you, Penelope? Who inspires you?
00:19:19.160
I certainly agree about Katrina Owen. She's fantastic.
00:19:26.680
Sandi Metz is a big name I look up to as well, having great conversations over the years.
00:19:32.960
Less known but equally impactful is Yusuke Endo, a Ruby core team member.
00:19:41.440
He's pushing forward actual internals of Ruby language, which many may not know.
00:19:48.560
Moreover, Eileen is essential in the development of major features in Rails.
00:19:55.760
She has been doing amazing work that’s incredibly important for our community.
00:20:03.200
Could you mention who inspires you, Ramón?
00:20:11.920
My heroes are the people who keep the community going.
00:20:19.520
It’s the passion and love for Ruby that keeps individuals and groups active.
00:20:27.360
I learn a lot from people who generously share knowledge and experience.
00:20:34.560
They inspire me to keep learning and growing.
00:20:41.040
It’s been a tremendously beneficial experience overall.
00:20:48.640
As we wind down, I would love to hear your thoughts on programming as a beginner.
00:20:54.720
What programming languages do you think are best for someone starting out?
00:21:02.640
I could write a whole talk on this topic. If someone wants to learn a single language, I'd recommend JavaScript.
00:21:10.120
It's accessible and offers a strong community with robust learning resources.
00:21:17.440
However, there is no silver bullet, and many languages work equally well for beginners.
00:21:25.920
Picking languages shouldn't be a stressed decision; you will learn trade-offs with experience.
00:21:34.880
Learning programming is about practice and refining skills, regardless of the initial language.
00:21:42.399
Tatiana, what would you say to beginners about choosing their first programming language?
00:21:50.720
I strongly agree that there isn’t just one language to rule them all.
00:21:57.680
It's important to carefully select the right tool for each task.
00:22:06.480
When choosing a first language, it helps to find language with clear syntax for easier understanding.
00:22:13.920
I believe learning different programming languages opens pathways to better understanding.
00:22:22.160
It definitely depends on the individual and their goals.
00:22:29.360
Well, I want to thank you both for sharing your insights with us today.
00:22:34.960
I appreciate you both taking the time to chat with us.
00:22:41.280
Feel free to hop into the chat on YouTube if you want to engage with the questions.
00:22:46.000
We’re now heading into our musical intermission!
00:22:51.680
We will be enjoying some fantastic beats from Half Bite and Nerd Disco.
00:22:58.720
It’s going to be great, so don’t go anywhere!
00:23:05.440
Grab a bite, get your headphones, and enjoy the show!