00:00:28.130
Hello, my name is Brenna Flood. Thank you for coming to RubyConf 2003. It's nice to see a bigger crowd this year.
00:00:33.059
In our first year in 2001, we had only about 33 attendees, and last year we had maybe 50. Why are we here? We are here because Ruby is good enough for many of our tasks, so we do not need to dwell on that.
00:00:41.219
Instead, I'm going to talk about the problems Ruby has and how we can make it better. Ruby has certain issues; for example, it is slow and inconsistent. How can we fix these problems? With a major version change from 1.x to 2.x.
00:00:54.390
This is an opportunity to make significant changes that may not be backwards compatible, but they would be improvements. To clarify, Ruby 2.0 is the next version of the Ruby language, and YARV is a virtual machine for Ruby 2.0. The path we will take will lead us from Ruby 1.8 to Ruby 2.x.
00:01:18.360
Hopefully, this transition will occur soon, and then in 1.9, we will work on syntax changes. I do not know what these changes will be yet, but there will be experiments. Once we finalize the syntax, we can work on the implementation, although it may be vaporware for a long time.
00:01:33.500
I'm still waiting for some essential decisions to be made. Here’s a long list of potential experiments: for example, keyword arguments. One way to implement this is to have positional arguments and a keyword argument where the order does not matter. You can specify keywords, and if you do not, it will generate some error.
00:02:05.249
Next, there's a new syntactic sugar that we have that would be equivalent to the current syntax below. Perhaps we can have method hooks to allow code to run before or after methods return an object. I'm still contemplating these changes and would love your input in the form of change requests until about March 2004.
00:02:27.240
These requests should contain a summary of the motivations, proposals, and rationale. They can be sizeable changes that would not be backwards compatible; I expect that most will be rejected, but many voices are better than just one small word. Thank you.
00:03:55.750
To generate the skeleton of the application, we will generate several files, and the next step is to run the Ruby server to ensure everything works. The only prerequisite for this is that you have Ruby on Rails installed.
00:05:23.970
Look around at the people you see walking down the street and see their excitement about Ruby. They admire what they can achieve but yearn for deeper connections. We were all rushing out into the streets to get here, and there is a science behind this enthusiasm.
00:05:37.320
It's incredibly thought out. I mean, in the context of foxes, for example, the images I've used in my work. My technical book attempts to infuse personality and humanism into a typically bland subject. The eyes of those foxes might seem blank, but they hold the key to our engagement.
00:06:17.640
What really drives you to read a technical manual? It’s the personality, the perspective, and the feeling they convey. The sincere connection to what we build is essential, and sometimes the manuals don’t reflect that.
00:10:25.649
Motivation is what keeps us focused on serious matters like speed. You all know that Ruby can sometimes be a bottleneck for performance, and yet we're all rather hopeful. In this talk, I will cover Ruby's scaling techniques.
00:12:53.400
Visualize an armored car against the rich history of content creation and information control. Prepare for some hard truths because everything will change. As the previous generations fade away, we will take giant steps forward in the timeline.
00:13:25.990
I share this insight because my past is mirrored in your future. I started my first programming job in the spring of 1978, before the first web browser in 1993 and before Ruby 0.9.5 was introduced in 1995.
00:13:39.540
Now, 20 years later, the Internet is central to our lives and permeates our reality. Remember, the technological evolution of our era came about as abruptly as past significant developments, like the transition from Linotype to phototypesetting, rendering the former obsolete.
00:14:06.410
However, your future doesn't rely on a significant inheritance or a mysterious stranger; this is the reality we all share here. Think of it as being on a shared journey, an arc of shared lives marked by happiness and dependency.
00:14:41.490
Focus on what truly matters: health, happiness, and how we will shape the world for future generations. Start working on your actions today; tell everyone you love them, and think about adopting a pet.
00:15:03.320
You don't have to engage in dangerous ventures, but make the most of your time. Exercise regularly, take breaks, and get some fresh air. We should strive to improve ourselves individually and as a community.
00:15:53.600
Our community matters; involvement in open source can be impactful. Teaching and sharing support in small ways can lead to significant change. We are driven to do good for others beyond Ruby and its framework.
00:16:30.100
Throughout all generations of information and typography, we carry the essence of open-source principles. Our influence stretches back to the emergence of written languages and typesetting.
00:16:44.980
Consider the example of someone I know in their eighties, who contributes every week to the local food bank. While they help those in need, many still struggle to find food, despite his efforts.
00:17:22.280
If you want to help, there are organizations working tirelessly to support those in need. I love Habitat for Humanity; they actively build homes for families—everyone desires to belong and affect change.
00:17:35.000
While I am not religious, the mission resonates with me as we endeavor to address significant issues while sometimes dealing with heavy tools. My past experience with community work drives me to want to improve systems and structures.
00:18:06.490
Despite common issues in volunteer management, many communities require help to sustain their efforts. I often find it tempting to take sole credit for achievements, but I recognize that success is communal.
00:18:31.360
We are here because of our hard work and the collective efforts of those before us. As we tread onto this path, the potential change lies in our hands, and we can choose to shape the future.
00:19:02.420
Finally, I am here to discuss friendly, flying robots in Ruby. Instead of using the term drones—which can carry negative connotations—let's stay with 'flying robots' instead. When programmed using Ruby, they become friendly and playful.
00:19:18.990
Using a library called Argos, I will demonstrate how to control them. The program will guide the robot to take off, hover, rotate, and land. This presents an exciting experience!
00:20:50.240
It’s an incredible experience, and to visualize, I'm here on stage with puppets representing myself and my friends—an expression of gratitude for how community creativity thrives. Everyone here contributes to our shared mission.
00:22:28.530
Although the journey may have setbacks, what really keeps us driving forward is those moments of connection and the surprising outcomes that can result from our technical endeavors.
00:23:18.230
As I remember colleagues like Jim, who many knew, we shared experiences that connected us in unexpected ways. Those connections matter, and they add meaning to our work.
00:24:57.470
In sharing this journey, we hope to convey the importance of community, encouragement, and creativity—thank you for your presence, kindness, and dedication to not forgetting to celebrate each other's contributions.