Summarized using AI

Keynote: The Keynote of Keynotes

Christopher "Aji" Slater • July 10, 2025 • Philadelphia, PA • Keynote

Introduction

Christopher "Aji" Slater delivers the keynote at RailsConf 2025, reflecting on nearly 20 years of RailsConf keynotes and the wisdom they’ve shared with the Ruby on Rails community. The talk serves as both a retrospective on two decades of Rails development and culture and an exploration of the guiding values that have shaped Rails and its ecosystem.

Main Topics and Key Points

  • Retrospective Approach:

    • Aji watched all past RailsConf keynotes, extracting and synthesizing the most impactful messages across nearly 100 talks spanning from 2006 to 2025.
  • Technical Evolution of Rails:

    • Early RailsConfs featured the introduction of RESTful principles, new routers, Bundler for dependency management, and the adoption of front-end technologies like jQuery and CoffeeScript.
    • Significant updates included performance improvements (e.g., parallelizer, multiple database support), major features (Action Cable), and changes to community codes of conduct.
  • Rails Philosophy and Opinionated Design:

    • Speakers highlighted the benefits of Rails' convention over configuration, advocating for simplicity, clarity, and reducing decision fatigue through sensible defaults.
    • Notable quotes described the importance of relying on community practices rather than reinventing solutions, promoting upstream contributions, and sharing maintenance burdens.
  • Community and Inclusion:

    • The evolution of Rails was closely tied to efforts to build an inclusive and welcoming community. The talk discusses the push for diversity and inclusion, tackling historical challenges regarding representation and culture within the community.
    • Anecdotes include efforts to diversify branding (after keynote-inspired discussions) and the adoption of codes of conduct.
  • Entrepreneurship and Startups:

    • Early RailsConfs often featured stories from startup founders and entrepreneurs, emphasizing rapid iteration, user feedback, and the willingness to pivot.
    • Recent years have revived these themes with examples of new businesses scaling rapidly on Rails, challenging the myth of Rails' decline.
  • Open Source and Contribution:

    • The community's vital role in maintaining and improving Rails is emphasized, along with the importance of humility, gratitude, and proactive investment in open source.
    • Actionable guidance is given for advocating open source within organizations and contributing effectively.
  • The "Rails Way" vs. The "Ruby Way":

    • Discussion of how Rails borrows from Ruby’s philosophy while fostering its own values centered around productivity, empathy, and user experience.
    • Contrasts are made with other programming paradigms (e.g., functional programming, object-oriented design).
  • Anecdotes and Culture:

    • Salient moments from keynote speakers, especially Aaron Patterson’s blend of humor and deep technical dives, illustrate the unique culture of the conference.
    • Meaningful personal stories, such as Marco Rogers' talk on being Black in tech, highlight the importance of acknowledging and addressing social and systemic issues.

Conclusions and Takeaways

  • RailsConf is more than a technical conference; it is a crucible for community values, inclusion, innovation, and personal growth.
  • The evolution of Rails mirrors the maturing of the broader software community: from rapid technical innovation to sustainable, inclusive practices and a focus on developer and user happiness.
  • Rails and its community thrive by sharing wisdom, supporting newcomers, prioritizing empathy and collaboration, and building not just great software but also a great environment for people.
  • The values embedded in Ruby on Rails are seen as a shared responsibility for all members to uphold and extend.

Keynote: The Keynote of Keynotes
Christopher "Aji" Slater • Philadelphia, PA • Keynote

Date: July 10, 2025
Published: July 23, 2025
Announced: unknown

Nearly 20 years of RailsConf, nearly 20 years of RailsConf talks and workshops, nearly 20 years of RailsConf keynotes. Talks that loom a little larger than the typical session, that leave behind more of an impact, that have kept us thinking over the years.

Have you attended every RailsConf?

That's the only way you could have walked away with nearly 20 years of wisdom and learning from RailsConf keynotes.

...until now.

RailsConf 2025

00:00:18.960 I miss this little crew. The new one feels so enterprisey, right?
00:00:25.519 Did Did you know the change to make this crowd reflect the global Rails community a little better was kicked off by one of
00:00:30.800 RailsCom's keynote uh speakers? Of course it did.
00:00:38.000 Here we go. 2019's Ariel Kaplan opened the issue after talking to members of the core team at a conference. He said
00:00:44.640 so in his keynote, which was about how the stories we tell to those who are new to a community can shape the way they
00:00:50.640 view our group and their place in it for years, for ever maybe. When it fit the
00:00:56.320 theme of the Rails branding, this was a subtle but meaningful change.
00:01:02.160 Hey there, cats and kittens. Hi. I didn't expect that. That's so nice. My
00:01:09.360 name is Aji. My pronouns are they, them, and I am a development team lead at a
00:01:15.119 place called ThoughtBot. This year at ThoughtBot, our design team
00:01:21.360 has been working on a refresh of the core brand. I'm loving all of the work that they've been doing. So, if you haven't already seen it, this is some of
00:01:27.360 their handiwork. Having gone to art school back when print was a thing, I really love seeing my teammates get all
00:01:32.799 nerdy about kerning and refining specific ideas like changing the angles of the word mark to correlate to the
00:01:38.159 Wi-Fi signal lines. So this is this was just for me to shout out my design team over at ThoughtBot.
00:01:51.280 Kansas City. It was less than a year after I graduated boot camp around 6
00:01:56.320 months into my first dev job. If anyone had told me then that I would be on the main stage giving a keynote within 10
00:02:02.799 years, I do not think I would have believed it. Honestly, I'm not sure I believe it now.
00:02:09.280 The project I wanted to share with y'all here in Philadelphia is to watch every keynote ever given at Rails Comp
00:02:16.720 starting with Chicago 2006 to try and share some relevant takeaways.
00:02:23.280 As I watched, I filled up half a notebook with my thoughts. These are my keynote notes.
00:02:30.000 I collected the most impactful messages from each to construct a list of key keynote notes.
00:02:36.720 I only have an hour. So I had to select the most notable key keynote notes.
00:02:42.080 Soon to keep track of the hours of video I was watching. I developed a notable key keynote notes notation.
00:02:49.360 To find a through line, I wrote themes from each talk onto notable key keynote notes notation note cards.
00:02:56.480 And it would be July before I knew it. I'd be here delivering a notable key keynote notes notation noteards keynote.
00:03:06.879 I I started up my presentation software. What else but Keynote for my notable key
00:03:12.560 keynote notes notation note cards keynote. That's the file I'm presenting from right here. Keynote app. Notable
00:03:18.239 keyynote notes notation noteards keynote.key.
00:03:23.440 Yeah. And if you'd like a copy of the work that I've done with links to the videos, please note the keynote app,
00:03:28.800 notable key, keynote, notes, notation, notards, keynote, key footnotes.
00:03:35.680 You might ask, what would make me choose such a comically recursive topic? Silly
00:03:41.280 rabbit. Recursion is its own reward.
00:03:47.760 Really, my goal was to trick the program committee into giving me this session by repeating keynote as many times as
00:03:53.040 possible in my proposal, making this my first foray into social engineering.
00:04:08.239 Listen, I'm not likely to beat Aaron Patterson for the sheer number of puns, but I do want to make him work for it.
00:04:20.880 If you if y'all keep enjoying this so much, I'm going to go over time. So, I got on a call with Ufu, co-chair
00:04:27.280 of the conference, who just met in the process of asking me if I'd be willing to keynote. He actually said, "Yo, dog,
00:04:33.600 we heard you like keynotes." And let me tell you, you have not lived
00:04:39.919 until you've joined a Slack huddle and had a Ruby Central board member act out a meme from 2007.
00:04:48.560 I thought this will be easy, right? An hour of content. There are 94 talks. That's only 38 seconds per talk. And I'm
00:04:55.919 five or so minutes in already. So, more like 35 seconds per talk.
00:05:02.400 34 seconds per talk. See, it's getting easier by the minute. 34 seconds though is just not enough
00:05:08.720 time to communicate a lot from most of these talks. So apologies to all the speakers whose talks I'm about to give
00:05:15.039 far too little time or those that couldn't fit at all like Brian Canantrell who detail detailed the rise
00:05:21.680 and fall of Moore's law and told us why he is still excited about the future of computer hardware
00:05:28.240 or Paul Lamir an engineer at Spotify whose closing keynote in 2016 showed off some incredible projects built with the
00:05:35.120 unbelievable amount of listening and music data at his fingertips and the sign language interpreters who signed
00:05:40.800 some live generated music showed the rhythm in their bodies and absolutely stole the show.
00:05:47.680 With this project, the idea that once it's online, it's online forever was
00:05:52.800 seriously tested. All it's taken in some cases is 12 years
00:05:57.840 for recordings to disappear from this earth. Of the 94 keynotes to date, 79
00:06:03.199 have videos online. The rest were reconstructed from blog posts and articles. I even reached out
00:06:09.759 to each speaker to see if they still had video or slides. A few remembered their
00:06:15.520 important points. Nobody had their slides.
00:06:21.919 Some didn't have anything. Like this message from Yehuda Katz about his 2013 keynote. Quote, I think that's the one
00:06:28.000 where I ripped up my entire talk overnight to deliver a rebuttal to DHH on JavaScript.
00:06:34.479 I haven't been able to find it sadly. So that is Portland 2013 Yehuda Cats if
00:06:41.280 anyone has a lead on a recording. Oh, right. And I saw one Tuesday
00:06:46.960 morning. The video is not yet online. Three are panels, one is a podcast
00:06:54.319 recording, one is a talk with more than one presenter, and one is a multimedia spoken word computer science performance
00:07:01.120 art piece. Yeah, hold on to that one for a minute. And one that I didn't include, it does
00:07:07.599 have a video, but in perhaps predictable why the lucky stiff fashion isn't always acknowledged to have happened and is
00:07:14.720 maybe only 30% of the time even referred to as a keynote. I did this to myself because keynotes
00:07:20.720 are an elevated moment in conversations we as a community are already having.
00:07:26.560 Keynotes might reflect the conversations happening on Zoom, Teams, or Slack. Sometimes they'll begin or direct the
00:07:33.360 conversations being tweeted, skeeded or tooted. I said tooted on stage.
00:07:41.280 Keynotes certainly shaped the conversations being had at Rails Comp. The this annual ephemeral community of
00:07:47.280 ours during my historical eavesdropping. I've learned the inner workings of the Rails codebase and the Rails philosophy.
00:07:54.560 Learn to build the kind of work and the way to work that we want to see in the world. been inspired to reach outside
00:08:00.319 our community and be a positive force for change and that if we have nothing
00:08:05.360 to fear but fear itself that's recursive and we have infinite fear.
00:08:11.759 There's a lot we've talked about over the years but predictably an evergreen topic has been to introduce the newest
00:08:17.199 features of Rails. 2006 was the first Rails confident introduced conceptualizing our apps
00:08:23.680 domains as resources, embracing rest and learning to love the CRUD.
00:08:28.960 2007 we doubled down on restful principles, said hello to the doomed active resource and mourned the loss of
00:08:35.279 active web service and its first party processing of wisdals and soap.
00:08:41.360 Just kidding. Good riddens. Rails 2.1 was released during Rails Comp 2008 and Jeremy Dar spoke about
00:08:48.160 implementing performance test generators in 2009. We heard that whenever we got
00:08:53.279 someone new on Rails core, it was almost a right of passage for them to reimplement the router. Someone must
00:08:59.360 have joined the core team because 2009 saw a new router. Rails 3 comes out and uses Bundler for
00:09:06.320 dependency management and there was push back for Bundler.
00:09:12.720 horrifying. And of course, a new router.
00:09:18.160 Welcome to the core team, whoever you were. With Wales 3.1 just around the corner, we saw jQuery included as the
00:09:24.480 default front-end framework, and we found out that we were all getting coffecript, whether we wanted it or not.
00:09:31.760 2013 saw Aaron Patterson solved computer science with active support halts. E. He
00:09:36.880 demonstrated how our test suites were going to be faster, not by making them run faster, but by improving boot time.
00:09:43.120 He also warned us that not everything he says on stage is necessarily true.
00:09:49.600 The Rails 4.1 train pulled into Chicago in 2014, and we got to see some caching work that went into active record. The
00:09:56.480 excitement was high as Rails 5 was nearing release featuring action cable. Aaron Patterson uh shared that the core
00:10:03.440 team comes to RailsCom for the same reasons we all do, to hear about Action Cable for the first time.
00:10:10.640 Rails 5 did not yet have a release candidate, but they said it was just
00:10:16.000 around the corner and we all knew it was going to drop during the conference that year.
00:10:21.200 2016 version 5 brought a lot of changes, including a code of conduct.
00:10:28.000 I mean, it would when it came out 2 days after everyone went home.
00:10:34.160 Next mainstage update wasn't until 2018 where we got to see some of the work that went into the forking parallelizer.
00:10:40.399 And remotely in 2020, we heard from Eileen, you should tell about the long journey of upstreaming multiple database
00:10:45.839 support. Another remote Rails comp in an interview format. We got the scoop on
00:10:51.120 Stimulus and Turbo Hotwire and the email application that was its real world test
00:10:56.160 bed. 2022 didn't have much to say other than Aaron Patterson listing front-end
00:11:01.680 changes he had nothing to do with. Not not that he was trying to distance
00:11:07.120 himself from them, just that they are front end and he is not.
00:11:13.600 Just buckle in, Iron. As the platform is more stable, the announcements are less groundbreaking.
00:11:20.000 But hey, we can see where a route is defined now. Well, beyond the what, we often talk
00:11:26.480 about the why. Because Rails as a framework is opinionated. There is a Rails way, a Rails philosophy.
00:11:33.839 What is this philosophy? What about it is compelling enough for the keynote stage?
00:11:39.600 In 2006, Martin Fowler attributed the success of Rails to the expressiveness of the Ruby language and Rails
00:11:45.120 opinionated simplicity. you to implement a feature in a couple of hours to be able to discuss it with the customer
00:11:51.120 quickly iterate to yield a working version based on real user feedback. He called this fire first and aim later
00:11:58.640 all possible because Rails keeps you out of the plumbing taking responsibility itself for low-level implementation.
00:12:06.079 Keeping us out of the plumbing is a common idea in Eileen's talks in 2020. She said Rails takes on complexity and
00:12:12.800 gets out of your way. The framework should have the point of view for what the most natural and straightforward way
00:12:18.320 to use a feature is. In 23, Eileen said, "All of these different things that make the Rails internals difficult to
00:12:24.399 understand make your codebase easier to understand. Rails cares more about your
00:12:30.079 application than its own internals.
00:12:35.279 So much of the apps that we build are going to be the same, and by sharing those parts, we'll all work faster and
00:12:40.720 better." Yehuda challenged a common refrain amongst Rails detractors that by relying on common solutions, we were
00:12:47.120 dooming ourselves to leaky abstractions. But we're not building Rails apps by soldering transistors here. All
00:12:53.680 computing is abstractions. The bleeding edge feels leaky because it's still experimental. They forget the
00:12:59.360 mountain of shared solutions they're sitting on. The job is realizing when experimentation is over, the abstraction
00:13:05.920 becomes basically free and we can build higher.
00:13:11.600 But still many of the common problems being solved in unique ways aren't actually unique problems. Instead of
00:13:17.360 one-offs reinventing the wheel, Eileen urges us to have an upstream first mentality. Share the maintenance burgeon
00:13:23.279 and everyone can make use of the improvements. Reiterating those commonalities in 2023,
00:13:28.959 saying Rails is so much more than a framework. It's a community because Rails is extracted from real
00:13:34.880 applications. It's based on use cases grown from production solutions. Core team members Michael Kosarkski and
00:13:41.600 Jamus Buck refactored an actual Rails application during their keynote. They focused on what they said should be
00:13:47.279 done, showing the Rails way. Much of this advice is still familiar to us in 2025, like skinny controllers and
00:13:54.800 rich models, be cautious of overd drying, overwriting two param for friendly URLs, and to prefer clarity
00:14:02.079 over cleverness. The message being to find simplicity in understanding Rails conventions and
00:14:08.079 applying them judiciously. In 2007, Jark Lane used a metaphor of an
00:14:13.760 angel and a devil sitting on our shoulders. Don't listen to the devil of overengineering and hacking around Rails
00:14:19.519 constraints. Do listen to the angel of framework features and leaning on community practices.
00:14:25.360 Much like Martin Fowler the year before, Lane said, "Rails is about trusting the framework simplicity and focusing on
00:14:31.360 user centric development." These speakers weren't using the familiar phrase, but they were talking
00:14:37.279 about convention over configuration. Number one with a gold star amongst the
00:14:42.399 Ruby on Rails feature set. Yehuda again in 2014 introduced the term
00:14:49.199 ego depletion. Probably better known these days as decision fatigue. Decisions draw from the same finite pool
00:14:55.360 of resources taxed by willpower, emotional regulation, planning, and organization. To spend as much time as
00:15:01.680 possible on relevant choices, convention over configuration saves your resources
00:15:07.199 because defaults are the most powerful weapon to fight against cognitive depletion.
00:15:12.720 Rails doesn't leave us thinking, "Oh, if only my web framework had a good abstraction for databases, I wouldn't
00:15:17.839 have to think about connection pooling." Brian Lile called decisions like choosing an OM or view templating
00:15:23.680 language configuration tax and labeled it as a form of technical debt
00:15:29.519 because in Rails opinion, constraints are liberating. And I agree though my
00:15:34.880 usual way to express this is that creativity happens in a box meant to run counter to the platitude of think
00:15:40.720 outside the box. pushing against or giving into your constraints yields a better result. And Rails gives you
00:15:46.480 constraints that aren't even detrimental. I had to get something in here, right?
00:15:52.480 Here's another one. Small, simple objects sending messages.
00:15:57.680 Nobody went to my other talks. All right. So, we're going to take the first detour
00:16:03.199 of the morning
00:16:10.320 because not all the topics of the talks jump smoothly from one to the next. So, let me try again for Ruby's 21st 25th
00:16:16.959 anniversary and I'll see what I can do. It's no secret that Rails is a darling to startups. The productivity, time to
00:16:24.160 market, quick iteration cycle are all bullse eyes for the needs of new software products.
00:16:30.000 Though not as much in the last 10 or so years, having speakers who were involved in entrepreneurship, startups
00:16:35.279 non-technically was a mainstay of the first era of RailsCom. Sarah Chip shared her journey of
00:16:41.839 bringing a physical product, Jewelbots, to market. And despite the incalculable differences between software and
00:16:47.519 hardware, on the face of it, so much was recognizable. She and her partners made sure to talk with their users and they
00:16:53.759 iterated with Arduinos instead of Ruby because you can't tell your audience what they will be excited by. Hardware
00:17:00.720 or software, a startup needs to listen. Be tiny until you shouldn't be. No
00:17:07.199 heruristic was given. assume that you're wrong and be open to randomness
00:17:13.679 because a startup is a human institution designed to deliver a new product or service under conditions of extreme
00:17:19.600 uncertainty. It's an experiment not trying to answer can this be built but should this be
00:17:25.919 built and I feel like more startups need to watch this talk
00:17:31.280 and to Ree the most important part of the entrepreneurs toolkit is the pivot
00:17:38.000 entrepreneur Gary Vaynerchuk called us to action to have honest relationships through our products part of this
00:17:44.000 session get a new life in the current context of AI when the internet is flooded with vibecoded garbage and
00:17:49.760 conversations between agentic robots are being prioritized over conversations with people. It's going to be authentic
00:17:55.760 human connection that wins the day. Why combinators Paul Graham spoke about
00:18:01.200 how insider projects are often hindered by excessive scope and inability to take risks and the weight of expectations.
00:18:08.160 While outsiders have fewer expectations and less to lose, closer contact to users and a comfort with looking
00:18:14.160 undignified. He said outsiders should embrace being small, working cheap,
00:18:20.320 focus on vertical slices, and don't imitate the flaws of successful people.
00:18:26.960 This tapered off, and after 2015, we didn't have the same presence for startups, incubators, and entrepreneurship on the keynote stage.
00:18:34.480 Until Detroit, Arena Nazova started her presentation with the question all Rails doves, Rails
00:18:41.919 devs love to hear. No, not but does it scale? It's not 2008. They ask, "Isra Rail's
00:18:49.840 dead?" I mean, hell, I've heard this for all 10 years of my career. She wanted to
00:18:55.200 know why people won't give up on this question. What are they really asking?
00:19:00.320 It's are people choosing Rails in 2024? The logos of established Rails adopters
00:19:06.640 are seen all over the years of Railscom sponsor lists, Shopify, GitHub, Gusto,
00:19:12.320 Chime, Beyond Finance, and more. But where are the stories of new businesses
00:19:17.600 starting with or switching to Rails? The opening keynote at Detroit broke the
00:19:22.880 silence and Nadia Oduio enthralled us with the story of zero to two million users as a onewoman dev team. Viral
00:19:29.520 success built with Ruby on Rails.
00:19:39.760 I'll let it finish taking a picture of herself.
00:19:46.960 But last I noticed, the title of that talk was 0 to 4 million users as a onewoman dev team. And I hope she never
00:19:53.200 stops having to update it. Arena highlighted other stories that
00:19:58.720 prove what we all suspected, that the reports of Ruby's death have been greatly exaggerated. Repeat founders
00:20:04.799 choosing Rails a second time with craft work. Young founders inexperienced with serverful application architecture,
00:20:11.919 rapidly growing startups on Rails, an established company switching from
00:20:16.960 Java microservices to a majestic Ruby on Rails monolith, even if at first they
00:20:22.480 weren't convinced. Right, Dan.
00:20:29.360 Let's continue to raise these kind of stories into the limelight. Rails doesn't need a new hype train. It's time
00:20:35.200 to share this 20 years strong hype train with new passengers. So, punch your
00:20:40.240 ticket to hype town. Choo choo. I'll stop.
00:20:47.760 Here we are back on track. I guess I had one more. True that Rails cannot be
00:20:53.840 separated from the context where it exists. Now I don't mean startups but open source. Members of the core team
00:21:00.559 held a panel in '09. The question was asked, "There are more of us, the community, than there are of you, the
00:21:07.120 core team. What do you want the community to be doing?" Well, in 2019, Aaron Patterson shared
00:21:26.159 He did this to himself. In 2019, Aaron Patterson shared that
00:21:32.240 he's often stopped to be thanked by a member of the community for all of the work that he does in open source. But
00:21:37.440 the real story is thanks to us, the ones who are building companies in Rails, programming in Ruby, creating demand for
00:21:44.000 the language. That's what enables him to have Ruby as his day job. Gratitude
00:21:49.120 works in both ways. Shaveier told us in 2022 the story of
00:21:54.720 building Zite work all on top of a deprecated language feature Matt strongly thought should be removed.
00:22:01.120 Because Shaviier was respectful in sharing what Zitework was able to do with the deprecated feature, it created
00:22:06.400 the space for Matts and the Ruby team to come to the conversation in the same way. They could have a technical
00:22:12.240 discussions around what problems were being solved because there was no need for being defensive or protective of
00:22:17.440 their time. You have to approach open source with humility. You have to know that you don't always have the same
00:22:23.679 context as the maintainers. being respectful for other members and accepting decisions about ideas that you
00:22:29.679 might have that they are the ultimate stewards of their decisions
00:22:35.360 because all the other people out there doing open source are your co-workers.
00:22:41.919 Eileen posed a question to leadership teams that don't see the value in open source work. How can Rails not be
00:22:48.080 important to your product if the entire company depends on it? Investing in Rails is proactive. Rewriting an
00:22:55.039 application in Go Microservices is reactive. And which do you think is better for your business?
00:23:02.559 Because selling this work needs you to tell a story. Features tell their own stories. Open source performance, all of
00:23:08.960 those unglamorous necessities need help. So not just the panel in 2009, over the
00:23:15.039 life of Rails Comp, what has the core team said about our involvement? that the people reading your PRs are people
00:23:21.280 too. Keep humility, improve the tools you rely on upstream instead of monkey patch. Advocate for
00:23:28.320 open source in your company and keep showing up. If you're thinking about advocating to
00:23:34.559 your leadership about investing in open source, watch this talk, 2022, Eileen.
00:23:40.240 She gives actionable strategies for framing your argument in terms that matter to their goals. And a talk to
00:23:45.840 watch if you want to start contributing to Rails is this one. You'll be introduced to the Rails project governance model, low barrier ways to
00:23:52.240 get involved and a highle tour of how the whole thing fits together. So jumping into the repo won't feel so out
00:23:57.679 of reach. I know Eileen, sorry you're in this a lot, but if you stop saying
00:24:03.039 awesome things, I will stop putting them in slides.
00:24:14.000 But know that there is no expectation for you to repay some kind of karmic debt to the core team or any
00:24:19.600 maintainers. It's in the language the core team uses towards the community. Sharing, gratitude, humility, a love
00:24:28.400 letter that too is part of the rails way.
00:24:35.520 It's now time for a second detour which I have entitled Why is Aaron Patterson?
00:24:45.520 I was trying to type who is Aaron Patterson but I typoed why and I thought it was better so I left it.
00:24:52.640 Of the 94 keynotes, 14 of them were given by Aaron Patterson. After later today, that total will be 15, putting
00:24:59.760 him at three more presentations than the runnerup, making him the all-time Rails Comp World Champion.
00:25:12.000 Yeah. Marking yet another instance where an American would declare another American
00:25:17.039 the world champion without a Rails comp ever having happened outside the United States.
00:25:23.200 If you've seen several of his talks, you would be forgiven if you were to consider them formulaic. At first, I
00:25:28.320 thought I'd be breaking new ground by saying that, but no. At least twice before, he's given away the formula. A
00:25:35.440 format he calls the reverse mullet because
00:25:43.600 it's party in the front and business in the back.
00:25:50.000 Not to mention the supposedly unauthorized bingo card in 2019.
00:25:56.880 He'll start with some jokes about the small mom and pop shop he works for, which during his Railscom tenure has
00:26:02.400 been AT&T, Jitub, and Shopify. He'll go into some local jokes,
00:26:07.760 essentially the same joke as The Last Step, but with local giant companies. He'll tell a story about writing a
00:26:13.520 script that attempted to charge his credit card thousands of times. respond to the opening speaker having said
00:26:19.120 something bonkers that could be dangerous if left unchecked and end with a picture of his cat.
00:26:32.799 Of course, what follows is the technical part, which very often is about performance, but maybe it's a list of
00:26:38.400 projects he doesn't have time to do, but still wants to see happen, or an overly
00:26:43.600 complicated recreation of a common feature that takes 50 ridiculous steps and often ends in a pun, like recreating
00:26:51.039 SSL by shortcircuiting shortcircuiting assembly code into his smart fridges ice maker, all because his manager said they
00:26:57.840 were on a code freeze. His
00:27:02.880 talks are usually at the end of the conference. He asks very tired brains to go on these incredibly complicated
00:27:08.559 technical journeys, deep dives into the weeds, the kind of subjects that should be dry and far from compelling when half
00:27:15.520 of us are still recovering from karaoke. But we don't feel like we're being taught principles for properly
00:27:21.360 benchmarking or about an inline cache that happens within VM bite code. We're laughing along trying to uncover the
00:27:27.760 longest, silliest method name defined by metaroming in the Rails codebase.
00:27:33.279 We walk away remembering that single quotes are always faster because you don't have to hold the shift key.
00:27:42.559 But sneakily, he's walked us through something we never thought to try and understand and shown us that it might be
00:27:48.000 a lot. But wait, I I actually did get that. And maybe if performance work is
00:27:53.360 something that I can tackle. I mean, at the very least, I wouldn't be trying to do it with one hand tied behind my back,
00:27:58.640 only allowed to use a bootleg Super Mario Brothers ROM as an IDE.
00:28:03.919 So, yeah, maybe I do know a little more about Mark and Sweep Garbage Collection after all. Hey, wait a minute. That guy
00:28:09.679 with the green screen oper. Oh, that's why Aaron Patterson.
00:28:18.559 Sorry, sorry, sorry. Rails Comp World Champion Aaron Patterson.
00:28:35.840 So just like there's a Rails way, there's also a Ruby way. And that philosophy shapes the way that Rails thinks. Rich Hickey, a propon a
00:28:43.440 proponent of functional languages and not a rubist, spoke in 2012 and advised rigid rigid dedication to an opaque
00:28:50.159 concept of simplicity. I would call it a rare miss in Railscom's tradition of inviting voices
00:28:56.080 from outside our community. But it did broaden the discussion because that session came up again and again in other
00:29:02.720 sessions the same year like James Edward Grace saying that a simple thing plus a simple thing plus a
00:29:08.880 simple thing doesn't always result in a simple thing. Fellow Ruby rogue Avi Grim
00:29:15.200 said that all sufficiently large and successful systems eventually evolve into object-oriented ones.
00:29:21.679 Y though Hickeyy's session landed flat, it doesn't mean that we are adverse to
00:29:27.919 learning and understanding different approaches or languages. Enter 2001's computer science performant art where
00:29:34.640 Guy Steel and Richard Gabriel spoke 50 statements, each with exactly 50 words
00:29:39.679 about 50 different programming languages. Whether you're going to enjoy this one
00:29:45.120 or not, you probably already knew 30 minutes ago when I said the phrase multimedia spoken word computer science
00:29:50.799 performance art piece. In 2010, Robert Martin talked about how
00:29:56.000 nothing has changed in programming since 1962, which if true would have made the 50 statements piece more like 12.
00:30:04.320 The language Ruby shares the most with is small talk, and the comparisons were common in the early days. Avi Bryant
00:30:10.000 styled himself as a messenger from the future because he comes from small talk and we could learn from their experience. He proposed some ambitious
00:30:17.679 solutions to Ruby's perceived performance problems, including alternative VM implementations like
00:30:23.039 Small Talk's proprietary gemstone VM. While that wasn't widely adopted,
00:30:28.080 conversations started by Avi could be said to influence alternative Ruby implementations like J Ruby and
00:30:33.600 Rubinius. People are here and I probably just said something wrong about
00:30:39.919 Robert Martin's 2009 keynote was called what killed small talk could kill Ruby too. Small talk he said had some pretty
00:30:47.120 serious projects going for it and it disappeared nonetheless. his theory there was an arrogance to the community
00:30:54.159 like our language is so good we can behave however we want alienate whoever we want but that was received outside
00:31:01.120 the small talk world with they don't seem to like us very much let's go somewhere else
00:31:07.600 so what's the antidote if community can bring down an otherwise successful
00:31:12.640 programming language in 2007 say Frank held up core values
00:31:18.240 like conversation community and belonging longing, treating technology as a facilitator of human connection,
00:31:24.960 reminding us that the Rails community and the web at large thrive on interaction, playfulness, and
00:31:30.000 collaboration. In 2016, Jeremy Dar celebrated Rails adopting a code of conduct. He credits
00:31:36.960 Ruby with setting up the kind of community that we would want to work in.
00:31:42.240 Corey Haynes proclaimed, "The Rails community is awesome, encouraging us to keep up the mentality of sharing and
00:31:48.880 supporting reminding us that the shest way to being and staying awesome was through
00:31:54.399 practice, to learn in public, to build things and share it. A great way to contribute as well as building your own
00:32:00.960 skill. Dan Melton praised the community for sharing learning and the tools that we
00:32:06.480 build. He drew correlations between Ruby and activist groups, being self-organized, opinionated,
00:32:12.480 decentralized, and generate generating a lot of stuff.
00:32:17.600 What was Martin's antidote to what killed small talk? He called it professionalism. The discipline of
00:32:23.840 wielding power. Making the active decision and effort that we're not going to denigrate people who don't share our
00:32:30.159 privileges. What will save Rails and Ruby from the same demise? The community is more
00:32:36.080 dynamic and larger. Doesn't she? We will have humility and we will keep the
00:32:41.519 community open. Generous read on that talk. I know.
00:32:49.360 That is the community we recognize, right? But it took work. Martin Fowler
00:32:54.640 wrote about his time with Rubious since 2007, and someone from the Sage said the Rails community had a reputation as a
00:33:00.240 bunch of arrogant bastards and cringed as a group in the room raised a triumphant cheer.
00:33:07.200 Joel Spolski paused in the middle of his presentation to say, "I just noticed there aren't many women in the
00:33:12.720 audience." Tim Bray from Sun Microsystems came to Railscom Portland to sell computers, but
00:33:19.840 still pointed out that the audience was almost all men and asked the room if they were okay with that and if not,
00:33:25.760 what they were going to do about it. The same year, Dave Thomas emphasized
00:33:30.799 inclusion, saying the Rails community has a real opportunity to set the standard for welcoming all people in.
00:33:38.000 Martin Farlo continued in his writing about 2007 that there was a strong push from Ruby leadership to try and change
00:33:44.399 all of this. A theme from several talks was that our community had an opportunity to try to lead the software
00:33:51.039 profession away from this tarpit of nastiness and lack of diversity to create a community that really welcomed
00:33:57.039 many types of people into a nurturing environment because we need to invest in new ideas.
00:34:04.240 One of the things that has enabled some of the most impactful contributions of our team is hiring people with different
00:34:09.359 backgrounds and ideas. A diverse team has enabled, if not led to, some of the greatest innovations that have empowered
00:34:16.240 the entire community. But inclusion most often comes first.
00:34:22.079 Inclusion means that beyond those diversity statistics, companies like to show off, that those people have a seat
00:34:27.599 at the table. Diversity and inclusion have a symbiotic relationship. Diversity
00:34:32.960 can come along more easily when you prove that you're inclusive.
00:34:43.040 Little water emoji tells me to drink water.
00:34:48.800 Yeah, water. Ultimately, part of why we come together is to talk about the process of our
00:34:53.839 work, to shape our workplaces into the kinds of workplaces we can thrive in.
00:34:59.280 2008, Kent Beck traced the evolution of software ideas like automated testing and extreme programming and the nearly
00:35:05.280 20 years it took each idea to take hold. If 20 years is the amount of time
00:35:10.320 required to shift the industry, what have we influenced about the way that we work through 20 years of Rails comp
00:35:15.680 conversations? Chad Dickerson asked, "Why is the assembly line so dehumanizing?
00:35:22.000 It deprivives the worker the satisfaction of finishing a job optimized to efficiently crank out a
00:35:27.680 single step. He gave an example of an airplane factory inviting the assembly line workers to have contact with their
00:35:34.480 completed planes and to talk to the pilots, the users of their output
00:35:40.000 to experience the final product. If companies really want their workers to produce, they should try to impart a
00:35:46.320 sense of meaning and not just through vision statements. Allow employees to feel a sense of completion and ensuring
00:35:53.040 that a job well done is acknowledged. In 2022, Videoshi shared a story of
00:36:00.320 burnout of how we humans are hardwired for curiosity gives us meaning. She
00:36:06.079 urged us to protect our curiosity because there isn't a chance of phys
00:36:12.240 physical connection to what we build. Shavear worked as his new autoloader
00:36:17.680 even before changing Matt's mind about the deprecation. It was his grail project. Nurturing his creativity,
00:36:24.240 delivering the solution brought immense personal satisfaction.
00:36:30.000 Kentback challenged himself to come in front of a thousand rubists and talk about feeling uncomfortable at work.
00:36:36.880 Here he is, creator of Extreme Programming, using his platform to talk about empathy.
00:36:44.240 He said, "Feelings are a noisy signal, but they're telling you something. Am I sure what I'm doing matters? If not,
00:36:51.599 he's going to find out. Does my code work? If not confident, he takes the
00:36:57.280 steps to get confident. Do I trust my curiosity?
00:37:11.359 But he didn't trust her curiosity and it took a toll. Shavier followed his curiosity and it
00:37:17.280 benefited Rails and the whole community. Kent encourages his curiosity and that
00:37:22.400 contributes to his well-being. A consistent message about finding meaning in your work by supporting
00:37:28.320 yourself, your curiosity, and your creativity. Okay, but I said creativity. Is that
00:37:35.040 even the domain of engineers? I'll do it. Are we even engineers?
00:37:41.680 Engineering that comes to many people's minds is civil engineering. It's the discipline that's easy to see in the
00:37:46.960 built environment. In engineering of that sort, the engineer makes the specification, the builders execute the
00:37:53.520 specification, and the final product is an overpass or a bridge. The
00:37:58.800 construction is the most expensive phase of a civil engineering project by far.
00:38:04.720 the math, the modeling, the engineering to support the builders executing correctly. The first and only time.
00:38:14.240 Before the early to mid60s, this is how software was made. Engineers wrote a design document, handed it off to the
00:38:20.480 programmers that would make the final product, the source code. But eventually they said, "Wait a minute, we have never
00:38:27.119 been able to specify a program enough to avoid a lot of iteration or just outright failure." So we shifted left.
00:38:34.480 The engineers and programmers became the same people. And a shipped application is the final product. The source code
00:38:41.359 isn't the output. It's the specification. But the previous thinking still ruled.
00:38:47.520 Rigorous definition of requirements overload phase one because phase 3 is expensive.
00:38:54.079 But without heavy machinery, what is the third step? It's an automated tool chain. Compilers, cloud deploys. For our
00:39:00.720 work, phase three is by far the cheapest step. It's practically free.
00:39:06.720 If we've proven time and time again that no specification is good enough to avoid iterating, and we know that iterating is
00:39:13.040 the best way to build a good product, we need to stop treating phase 3 like it's the hard part. Build again and again.
00:39:19.920 Get feedback. Build it again. In 2018, stepping in for a presenter who
00:39:26.640 the travel gods thought would be better in 2019. Sarah May said that software is more like a group of theater people
00:39:32.560 putting on a play than an assembly line. Maybe the problem is in the word architecture.
00:39:38.320 What if software is more like Manhattan? The infrastructure and buildings already exist, but we can choose or change the
00:39:45.200 interior space. But software interior designer doesn't have uh quite a ring to
00:39:51.280 it. We're told that what you produce is your value. that meritocracy exists and will
00:39:57.599 lead to a truth decoupled from our humanity. These things are a myth.
00:40:03.680 Our bodies send noisy signals, but pay attention. What do we perceive when we're overrun and we find ourselves on
00:40:09.920 the drama triangle? Persecutor says, "It's all your fault." Rescuer says, "Don't worry, I'll handle it."
00:40:18.320 Victim: Why does this always happen to me? How do you get off the drama triangle?
00:40:24.079 You recognize the sensation of your body. Breathe
00:40:29.520 and pause before you continue. Persecutor becomes the challenger. Truth tellers but not blamers. Is that really
00:40:37.119 what's happening? They ask. The victim becomes the creator. Forward movement looking for wins. And the rescuer
00:40:44.400 becomes the coach. See the creator in the people you support. Not attached to outcome but holding accountability.
00:40:53.520 Nick Means recounted the development of advanced spy planes by Loheed Martin's skunk works team in 2016.
00:41:00.800 The true story of an engineering and design team that consistently took unreasonable deadlines and unprecedented
00:41:06.880 requirements and turned them into machines that accomplished what no machines had done before or since. The
00:41:14.400 team spent their time figuring out how to do the important things and hacked their way around the other stuff. One of
00:41:20.160 these high performance planes would drip fuel while on the runway, but no
00:41:25.359 material existed to seal the tank that would survive the vehicle's staggering operating envelope. The important thing
00:41:31.440 was to fly higher and faster than any other plane.
00:41:36.560 How did that impossible situation become real? It was the trust that leadership
00:41:42.319 put in the team. So, your team should know the most important things about what you're building.
00:41:48.720 You should know the goals so that you can contribute beyond just writing code. If that's not the case for you, push
00:41:54.960 back hard and change it. If you're in a leadership role, make sure you're clearly communicating the
00:42:01.599 two or three most important things. Give your team the context for decisions and trust them to make the right ones. Do
00:42:08.880 you get that, Dan? Because culture matters. Spend time on
00:42:15.599 it. Less of the right people can do more.
00:42:21.520 Chad Dickerson told us about the push train at Etsy, a self-managed production deploy line. Works like an airport
00:42:28.560 without an air traffic controller where the planes line themselves up on the runway. They have non-coders participate
00:42:35.119 in the push train, and everyone there had pressed the deploy button more than once.
00:42:41.440 Recognize what it feels like when you're hijacked. Remember your own agency and fight to
00:42:47.440 give that agency to your team. Use tools to build happy communities and your team
00:42:52.880 is one of your communities. Optimize the team for the happiness of
00:42:58.160 your people. What makes a user unhappy? Joel Spolski
00:43:04.240 says it's not being in control. Think of the average user's experience of Windows. Constantly being told, "Do
00:43:11.119 this, update that." Being bered by the OS for 30 minutes before you can use the
00:43:16.400 computer you're supposed to be in charge of. MP3 players all do the same thing, but
00:43:23.119 the iPod sold millions and the Zoom didn't. The best products make users feel like
00:43:29.359 they have agency over their experience, even if it's been finally tailored.
00:43:34.880 That's Rails. Developer experience of using Rails is top of mind as it's being
00:43:39.920 designed, built, and maintained. We choose Ruby and Rails because of the joy and the work that we have. Even
00:43:46.640 though the end result, a server sending HTML is the same as Django.NET or
00:43:51.920 enterprise Java. Shopify introduced sorbet. And
00:43:57.119 originally, Rafael Fransa wasn't sold. Said it was a solution in search of a problem.
00:44:03.040 What changed his mind? Surveys that showed the the impact to the developers, not system metrics. He
00:44:10.480 saw it bringing satisfaction, maybe even joy to the team.
00:44:15.680 The user experience of building a system extends far beyond the technology choices. If you see a problem in the
00:44:22.319 code, it's reflecting a problem in your communication structure. Doesn't then Conway's law imply that by fixing
00:44:29.200 communication and team culture, we fix our code. It's never a code problem, is it? Right?
00:44:36.640 Creating good habits, deciding as a team to create a space to exist in together.
00:44:42.800 Don't ask for permission, but be upfront. Don't ask for forgiveness, but learn
00:44:48.160 every time. Do ask for advice, but don't always take it.
00:44:54.560 What if instead of a place you have to live, your codebase was a place you get to live?
00:45:03.119 Linear scaling is easy to achieve. It's almost always enabled purely by the technology. Participation in people
00:45:10.000 create hyperlinear scaling. by fighting hero culture, making it safe to question
00:45:16.000 and learn, collaborating by default, and holding empathy as a core value.
00:45:23.520 Teaching scales, sharing learning scales. This community here in this room
00:45:29.119 makes us scale. So, does Rails scale? Sure, but we do it better.
00:45:37.440 Barack Obama and Michael Bloomberg said everyone should learn to code. Not that everyone should have a career as a
00:45:43.599 programmer. In an increasingly technologically intertwined world, everyone should have a chance to peak
00:45:49.680 behind the curtain of the internet. Conversational coders like conversational language speakers that
00:45:54.960 have other roles on the team. Product people who can understand a little of the conceptual level and customer
00:46:01.280 centric developers who understand the business needs and the user problems. Wouldn't that make for an excellent
00:46:07.520 crossunctional team? Using archetypes to describe personalities on teams, Michael Lop
00:46:14.480 named stables and volatiles. Stables happily work with direction and schedules. They value efficiently run no
00:46:21.280 drama teams. Assess risk and generate process. Volatiles hold themselves up in
00:46:26.880 a room and build a thing in 3 weeks. They find thrill in risk, crave chaos, and don't care how you feel. Lap says we
00:46:34.480 need both of these folks. That both are right. also that they hate each other.
00:46:40.880 A successful team must have them in balance and they must work together.
00:46:47.440 Justin Surl said that when we're taught, we learned what a program is, but not how to program.
00:46:54.560 Thought process. Well, everyone is either making it up as they go or pretending they understand it.
00:47:01.040 Who's going to succeed in that environment? Well, it's the people with the overconfidence of having been told
00:47:06.640 they're brilliant their entire lives. Imagine you walk into a room and you lack the privilege of having been told
00:47:12.560 that you're brilliant by society. If no one can actually explain what it is that we're doing and we want to make
00:47:18.240 programming a more diverse and inclusive industry, Justin says we really need to solve this.
00:47:24.400 So his talk introduced the Surlesbriggs programmer personality test inspired by the MyersBriggs type indicator, the
00:47:31.920 worst type system. It assigned labels and gave us language
00:47:38.480 to explain how we might think. Stable and volatile were hiding in that test.
00:47:43.839 Probably even the persecutor, rescuer, coach, and creator. I was fault, by the
00:47:49.599 way. Justin was salt.
00:47:54.640 And as you might have guessed, that QR code will take you to a PDF version of the test.
00:48:02.240 Make your codebase a livable space. Remember that people scale more than machines. Be a customer centric
00:48:10.079 developer. Share your thinking, especially with those who are new.
00:48:26.559 So you hit a cat. He destroyed the argument that shared
00:48:31.920 solutions should be avoided. Rails has just proven that this is not true. One phrase from Yehuda in 2014 stood out to
00:48:39.599 me because it sums up so much of what the defining phrase of the Rails philosophy means.
00:48:45.520 We need to push back on the excuses that drive us apart instead of the things that bind us together.
00:48:52.160 Dan Melton believes the Ruby community has values that can be a positive influence on the world. values that
00:48:57.520 pervade the work that we do. James Duncan Davidson visited the Star Wars filming set in the Tunisian desert
00:49:04.240 and was surprised to see in a place that felt so remote, people tweeting.
00:49:10.880 Tunisia was the crucible of the Arab Spring, a nonviolent movement that caught fire throughout social networks
00:49:16.720 that we all watched happen live on Twitter. Twitter started on Rails. Let's
00:49:22.319 not get into it. a region of the world standing together
00:49:28.559 only a handful of years after Rails knew. James wanted us to ask if we create more
00:49:35.760 value than we capture and not to stop at don't be evil.
00:49:44.400 The impact of the Arab Spring didn't last the way that we had hoped. And maybe in 2025, 15-minute blogs are more
00:49:51.599 closely tied to the subversion of democracy than to hope.
00:49:56.720 But maybe that's a more powerful wakeup call that our work affects the world outside of Palo Alto or Chicago.
00:50:05.520 By 2019, Brady Chris knew what Davidson didn't. That we are living in the worst
00:50:10.800 timeline. How can we make an impact? We see the outsized impact of our industry, but
00:50:17.200 individually we're a drop in the bucket. Brady said, "Be a drop in the bucket.
00:50:23.280 Choose which bucket with intention because nothing that changed the world has ever truly been created by a single
00:50:28.640 person. I've always believed that just building a team that cares about how we work and
00:50:35.680 dares to be inclusive can be a radical act in and of itself.
00:50:48.720 There's one talk that means more to me than any of the
00:50:54.319 other talks I've seen live recorded or reimagined.
00:51:00.079 It's just a few stories from Marco Rogers experience as a black man in tech
00:51:06.160 and it's one of the most memorable sessions in my RailsCom career in my life.
00:51:11.520 He called it survival tips for being black in tech but it wasn't actually for
00:51:16.559 other marginalized folks. in all likelihood they have already discovered their own versions of them.
00:51:23.760 He said, "If you take nothing else away from this talk,
00:51:31.040 let it be hearing from me that being black always matters. Whatever it is you're trying to do, I'm
00:51:36.720 trying to do it, too. But I'm trying to do it while black." And that means that the rules might be different.
00:51:44.640 The tip was learning that this kind of advice
00:51:49.839 even exists and how much it dominates the experience
00:51:56.000 of those that live them.
00:52:04.800 I was asked to examine my participation in the systems that make simply having a day job,
00:52:14.319 something akin to survival.
00:52:20.240 To see that not talking about politics at works only deepens the need for these defenses.
00:52:29.440 Everyone has I would hope a personal journey towards being a better person
00:52:36.160 and this is a definitive moment in mind
00:53:02.640 It happened at Railscom. So I want to ask without Rails comp
00:53:12.720 what might we lose?
00:53:19.119 I know that Railscom isn't the only place this community exists, but it is
00:53:24.480 soon was an important part of it.
00:53:34.319 We came together here because of a web development framework, but we took much more home.
00:53:41.520 Without a doubt, Rails Comp created more value than it captured.
00:53:47.359 Because we came here to find commonality and to push back on the excuses that drive us apart instead of the things
00:53:53.440 that bind us together. We came here for the new folks who might
00:53:59.680 be terrified to attend their first tech conference
00:54:04.720 after a career pivot. We came here so they could walk straight into the arms of a welcoming, diverse, inclusive,
00:54:11.040 inspired, and supportive group of enthusiasts. Yeah, enthusiasts for Rails.
00:54:18.079 Yes, enthusiasts for community. We cannot shake that word. We are
00:54:24.000 community simply by being we.
00:54:29.200 I want us to persist. I want us to commit to continue to learn from those outside our community and
00:54:36.960 listen to the experiences of people who are not part of our bubbles. I want us to continue admitting that we
00:54:43.520 don't know everything and that we can learn from everyone.
00:54:49.839 What might we lose if all the talk should be of a technical nature?
00:54:55.040 You could ask, what might we lose when our viewpoints aren't challenged, we don't grow,
00:55:01.119 and we only listen to things that are out of date long before we arrive at next year's hotel ballroom.
00:55:07.839 Fundamentally, our values about creating software that are reflected in Ruby on Rails built by us, the community,
00:55:15.839 align very closely with our values about how we want to treat each other.
00:55:22.079 You don't have to go very far these days to find someone whose rhetoric starts at divisive and goes down from there.
00:55:28.480 But what this 20-year experiment has shown me is that kind of small, scared behavior is not only repugnant, but it's
00:55:34.240 the antithesis of Ruby on Rails. It's the antithesis of why we've come
00:55:41.200 these last 20 years to Chicago, to Portland, Las Vegas, to Baltimore,
00:55:47.359 Austin, Atlanta, Kansas City, to Pittsburgh, and
00:55:52.640 Phoenix. It stands in diametric opposition to why we've come here to Philadelphia.
00:55:59.040 The values of this community are baked into this framework.
00:56:04.400 And now more than ever, they are our shared responsibility to live.
00:56:48.720 Um,
Explore all talks recorded at RailsConf 2025
Ben Sheldon
Sam Poder
Rhiannon Payne
Joe Masilotti
Josh Puetz
Wade Winningham
Irina Nazarova
Tess Griffin
+77