 One complication is that I'm not going to give this talk as myself. I'm going to give this talk to somebody else. All right, he's got to button this up and we're off. Whoo. What a great room. Austin hands down one of my favorite cities. I was telling them on the plane how tremendous the crowds in Austin are. Thank you, Brandon. He's a really nice guy, isn't he? Thank you, Brandon. Whoo. All right. Got all the nerves out. All right. So, yeah, everyone, please live tweet your grievances to at Searle's and I will retweet the most terrible things that you say. If your team needs more developers, my company test double. Our developers are the best of the best. I stand before you today to deliver. It's okay. It's intentionally black. I stand before you today to deliver a very simple message. Ruby's heroes have failed you. Ruby is a spectacular language, but unlike every other language, Ruby has always been led by heroes. But today they're ineffective and spineless leadership threatens the very survival of Ruby and only we can save it. Together, we are going to take our language back. This goes all the way back, folks, to how Ruby was first created. Now in the beginning, unintentional black, there was mats. Some people tell me that mats is a Japanese, which I think is fantastic. The Japanese love me. I'm told he's very nice, but that was not enough for him to become Ruby King. Mats was so weak, it took a decade for Ruby to spread beyond Japan seriously. And thanks to mats' weak leadership, we became dependent on other Ruby heroes. First came pragmatic Dave Thomas and Andy Hunt, who wrote a very long and very boring book about Ruby and pickaxes. Now this book showed how tremendous Ruby is, but Prague Dave and Prague Andy lined their pockets building a corrupt publishing empire that today is the biggest source of totally biased technology books on the planet. Later, cheeky Chad Fowler and Jolly Jim Wyrick, so-called community organizers, went on to create a national Ruby conference. And together, they started a service called Ruby Gems, so they could spread their lies and propaganda more easily. Jolly Jim went so far as to make a corrupt tool called Rake to force us to build gems how he wanted us to. And these corrupt heroes created Ruby Gems with totally open borders, letting in hippies like Wacky Y and D-List DHH. And they've been flooding in ever since. Why acted like the purpose of Ruby was to make art? He had no respect for the free market. He yanked all of his gems, which was totally unprofessional and not nice, total disaster. D-List DHH was so desperate to have an NBC framework written in Ruby that he ported Java struts as Ruby on Rails. And personally, I prefer frameworks that weren't ported. But soon, things settled down. The tyranny of heroes receded. Ruby entered its golden age. Developers were unbelievably productive. In no time at all, we built hugely successful companies. And also daily ideal coupon sites. And it was all thanks to Ruby. Ruby was winning. Every new startup was using Rails, even if their staff had no clue how to write Ruby. It didn't matter. Ruby's poll numbers were through the roof. Every developer on Earth was either writing Ruby or jealous of people writing Ruby. And I remember those days, I wrote a lot of skinny controllers back then, let me tell you. In fact, people told me that my Ruby was the cleanest code they'd ever seen. We need to get back to that Ruby. But soon, the establishment venture capitalists wanted to change Ruby. They wanted scale. They wanted enterprise. And our feckless, weak-need heroes were all too happy to oblige. Jumpy Jose Valim worked to make Rails 2 thread safe. The trader, Zed Shah, made the mongrel server fast and concurrent. Aluf Yehuda made bundler, a hostile takeover of your dependency management. And everyone's favorite, chicken tenderlove, spent years of his life rewriting the slow and confusing Errol API for Rails' active record, which allowed people to create massive enterprise sequel statements so fast that we didn't even stop to ask if we should. But now that Ruby is mature, your heroes got bored and deserted you for other languages. We're left with B tier heroes, too low energy to switch languages like Terence Lee and Richard Schneemann. With our heroes gone, Ruby isn't winning anymore. Ruby has become a loser language and it's time to take action. As a result, I, Justin A. Searles, am calling for a total and complete shutdown of Ruby heroes switching to Elixir and Rust until we can figure out what the hell is going on. We need to start planning for life without our heroes. And if you support me, we can make Ruby great again. We have to move beyond the hero system, folks. Their phony loyalty to a language as delightful as Ruby is a disgrace. And you know the worst part? Heroes have known this for years and yet they did nothing. Here's what a left-wing, agile school called Extremist Programming. They're not willing to call it that, but let's be honest, it's Extremist Programming. It's what Extremist Programmer had to say. Heroes go it alone, working long hours writing buggy code to accomplish what others think is impossible in the time available. The result is unrealistic expectations by management and inevitably results in a death spiral as the whole team falls further and further behind. That's the ballgame, folks. Heroes knew that they were creating a death spiral and yet they did nothing. Truly disgusting. Now, some of our Ruby heroes, I assume, are good people. Many did decent work for the language, but they got greedy, addicted to your retweets and cushy conference speaking fees. They closed the door on us. Ruby heroes became the ultimate insiders and they shut us out. Heroes hid behind shadowy acronyms like the NIH to explain why we should use their gems instead of writing our own. They lied or they let our thoughts and they told us that we couldn't be heroes too. And then those same heroes abandoned us for newer, more attractive languages. And now we've become helpless without them. That ends today. And by the way, somebody needs to say this and I'm not afraid to say it. Ruby Hero Delist DHH was the worst abuser of Sember in the history of programming. And Rails Clore was a total enabler. Let me be clear. If Rails won't lock down their versioning, we should lock them up. The establishment venture capitalist that once profited off Ruby are now shipping our jobs to other languages and frameworks. Nobody makes things in Ruby anymore. We need to send them a message. They're afraid to hear power. They know that I'm the only one who can bring jobs back to Ruby. The venture capitalist in their ivory tower, silicon valley, open plant offices have rigged the mainstream media like the failing hacker news against Ruby. If you open a hacker newspaper, the entire front page will tell you to build your app in anything but Ruby, Elixir, Go, Elm, Clojure, Rust, and of course, Node.js and React. But for Ruby to survive, these other languages must be defeated. It's as simple as that. Our ineffective heroes have let these other languages walk all over us. And some Ruby heroes are trying to distract from their dirty secret that they are in fact only one X programmers, but they falsely claim that I have something to hide in my RuboCop report. These are bald-faced lies. I promise you I will release my full, unabridged RuboCop report. But unfortunately, I am currently under a code audit. For some reason happens to me every single year I get audited. I'd be stupid to release them until the code audit is complete. Only an idiot would release their RuboCop report while under audit. But I will gladly release my RuboCop report as soon as Node.js returns the 30,000 deleted emails that stack over posters were lost because I didn't call catch at the end of a promise chain. Unbelievable. Node.js. Such a nasty runtime. First let's us out in the cold, but I guarantee I know more about defeating these other languages than all of Ruby's heroes put together. I will go to the other languages and negotiate better deals so that Ruby can start winning again. In fact, I have learned that Ruby hero Jumpy Jose Valim is the founder of Elixir. And because he's a hero, people turn a blind eye. Totally shameless. Jumpy Jose founded Elixir and he has a secret plan to destroy Ruby. But can anyone imagine using Elixir? No way. It doesn't look very production to me. You know, I saw some Elixir when I walked by a co-worker screen. I wasn't. It didn't feel as free as Ruby. Ruby was great because it was free. We didn't need heroes to tell us how to code and Ruby is golden age. We felt free to write whatever weird code we wanted and we need to realize that we are stranger together. A lot of people don't know this but Ruby runs on weirdness. Our heroes failed policies left Ruby's weird reserves at historic lows. Our heroes use code words like mature to discourage creativity that they deem too weird. Heroes like shady sandy mess would rather show you the syntactically correct way to write Ruby. But I talked to a lot of developers and they are sick and tired of all of the syntactical correctness. Ruby heroes called our creativity weird because they were afraid we wouldn't need them anymore. They were right to be afraid. We didn't need them. Anyone can make their own gems. In fact, I made two gems just today. Tremendous gems. Code climate love them. If we're going to say Ruby we need to rediscover its weirdness and the first step stop listening to our remaining heroes other than keep listening to me. Some people are saying and I'm not saying this but some people I've been told that we should unfollow these heroes heroes like chicken tenderloin ruthless Ryan Davis cranky Gary Bernhardt and by the way since chicken tenderloin and ruthless Ryan are the founding members of Seattle dot rb something needs to be said folks most Rubyist are too afraid to call Seattle rb what it is radical parenthetical terrorism. It's just horrible. More parentheses are omitted and killed by Rubyist in Seattle and anywhere else in the world. And not heroes stood by and did nothing. If you support me I will deport Seattle rb to Vancouver Canada. Without heroes we all need to step up and make Ruby great again post on the blogs record a screencast start a weird newsletter and stop reading the lies in the failing hacker news that tell you that Ruby isn't great their liars all of them and I've been doing this for years by the way ask anyone they will tell you that Justin Searles writes the wordiest blogs and reports the longest screencast and if you see any of my other talks nobody makes more slides at Ruby conferences than me. No one I've built the most tremendous slides but I'm just one person and that's not been enough to slow Ruby's demise. We all need to step up and say what's really on our mind. So if you have an idea write your own job you learn something terrific publish on the blogs and if you're angry about something argue about it with others on twitter.com or on the failing hacker news comments section because if we can't show that Ruby is a strong language the other languages will keep walking all over us back when Ruby was winning if someone wanted to learn how to make a new web app people would assume that they should learn Ruby but now people learn to program computers and don't even know what Ruby is they simply don't know these smug elitist people from other languages are ignoring you and your hard work and to make Ruby great again we have to make deals with the other languages starting with the most popular JavaScript. JavaScript is a total lightweight like a lot of you I simply fail to understand why JavaScript is so popular. You know my opinion JavaScript is a four tops maybe a five if it loses the semicolon and JavaScript is very weak on types unbelievable how weak on types it is have you ever tried comparing two days I will be very strong on trade with JavaScript because Ruby has tremendous wealth wealth like you wouldn't believe we have been testing we have conventions over configurations we have the path of least surprise which if you've never been there it's a beautiful path the best path our weak and ineffective heroes foolishly tried to hide JavaScript from us for years RJS turbo links action cable this week isolationist strategy totally failed and is leaving the Ruby dying out and that's why I propose we go to JavaScript and do what any good leader would do negotiate a better deal so that Ruby can start winning again instead of continuing D list DHH is failed policies of mixing JavaScript into our server side HTML I am going to build a wall between our Ruby and our JavaScript don't worry we'll make JavaScript pay for all the HTML Ruby will provide quite generously API's but JavaScript is what created this mess in our Ruby web apps and it will pay to fix it we need to be tough on JavaScript but I'll also be very very fair much more fair than JavaScript has been to us let me tell you look what they did last time we helped them by giving them coffee script they stole all of coffee scripts good ideas and they totally choked their interpolation is a joke their arrow functions are a mess JavaScript secret cabal of language elites the TC 39 is a total disaster unbelievable and now some truly bad hombres have claimed that my ultimate goal is to transpile Ruby into JavaScript these are heinous lies and nothing could be further from the truth and besides JavaScript wouldn't be my first choice is a transpilation target let me tell you nice try so people say the Ruby is dead but you're all here aren't you look around you in this room you came to this rally today because you believe Ruby can be great but it doesn't feel safe to talk about Ruby anymore if you're caught using Ruby in public others will attack your first amendment rights by disagreeing with you there's a silent majority that stands with Ruby and the system is rigged folks the establishment venture capitalist don't want you to believe Ruby has a future they want teams to build overengineered massively complex micro NodeJS services and react website for their unproven startups in order to justify their pyramid funding schemes they want to ensure that it takes thousands of developers to build a taxi car app and numerous years to figure out how to sync a directory of files to a server the establishment venture capitalist know how productive Ruby development is but they don't want your team to be productive they want it to be huge their entire empire is threatened by Ruby's productivity I'm in business I know this better than anyone the DCs are so desperate that they've been digging through my old repos horrible people and so my staff have asked me that I make the following statement before we continue I apologize for using domain specific languages in a project from 11 years ago it was the fullest decision one that I regret my use of Ruby DSL has become an unfortunate distraction from the issues that really matter in truth it was just locker room code it's all in books programmers been working on private source code servers who's DSL's all the time in fact even the great chicken tender love used our spec on a project as recently as last year truly disgusting and I gotta tell you I don't believe the polls anymore I think Ruby is still really really popular everybody I talk to loves Ruby teams quietly use Ruby all around the world but Ruby teams are just too busy being massively productive and making tons of money to stop working so they can go comment about it on Hacker News and if after all I've done you don't help to save Ruby this will have been the biggest monumental waste of time and energy in my life if you don't save Ruby after this Austin I'll be honest I'll never forgive you I'll never come back but irregardless I will totally graciously accept the result of your team's election for its next programming language it's Ruby okay that's all it's so much more clearly now I'm gonna hot up here so let's bring this back to reality where I I co-own a serious company called test double and which hopes that you all understand what satire is so there's a good chance you're very confused right now do I think that heroes who made Ruby great are bad people of course not some of my best friends are Ruby heroes okay seriously I'm done that was the last that was the last one I was like Trump obsessed with being validated by others and I made it my five-year mission to become a Ruby hero myself I wanted to see what it felt like to be on the inside and overall it's been a fantastic experience if a lot of work but when I hear that Ruby isn't inclusive it's our outsider insider system of thought leaders that always stood out to me as wrong why is there this huge divide by the people who make gems and the people who consume them because we're a very small pond in the grand scheme of things and we've just stocked it with some relatively big fish so that makes us unusual but I don't think that we've done the job of asking ourselves what problems our system of Ruby heroes has created because I can tell you I've met dozens of teams and hundreds of developers in my travels and I've like seen what the learned helplessness that comes from looking to a small vocal minority as the solution to every problem can cause worse we have this habit of appeals to authority they're very common in Ruby and people not to be creative Katie wanted to to do this but we told her no because Sandy's book says to do it that way instead these sorts of arguments suck the joy out of programming Sam built his own module of plain old Ruby objects but then we fixed it by deleting them and showing him the rails way now Trump Searles has a point because as Ruby became mature a lot of our heroes left thought leaders run on retweets and the maturity of Ruby maturity is a known retweet allergen so they moved on and early on most people assumed when they came to Ruby because all these heroes that keeping Ruby relevant was going to be somebody else's job but now if we do nothing I think that eventually Ruby is going to be relegated to like a cute little scripting language status like Pearl House and so even if we want to replace our heroes with new heroes I don't think that's going to work because Ruby is not the hottest language in the world anymore passively attracting tons and tons of new talent today that language is called JavaScript so we have to look within to chart Ruby's future Ruby has its work cut out for it and I'd rather that we all become heroes than just select a handful arbitrarily so it'll be a steep climb but I honestly I don't think it's insurmountable you look at languages like no JS and delixir they have really fast async I.O and that's something that Ruby could do better Rust and Go are just really fast period and that's something that Ruby could do better but if you look at all the other popular languages they are opportunities for us to showcase what we love about Ruby Ruby still has meaningful things to say we have tools programmer happiness and productivity promoting obviousness via the path of least surprise consistency through well-considered conventions carefully designed value-based test suites all that represents a niche that is really valuable even if it's currently out of fashion so the hardest problem in application development is not achieving performance or physical scale if anything all of these innovations we've seen in DevOps it's kind of taking Ruby's performance concerns off the table neither is the hardest problem in having billions of packages depend on in fact dependency churn is this under-appreciated tax on a lot of teams productivity the hardest problem has always been long-term maintainability and Ruby is are well-suited I think to show the world how to build more maintainable applications Ruby's focus on programmer happiness gives us a certain empathy for future maintainers Ruby helps Ruby is create thoughtful designs thoughtful tests and the conventions are strong enough that your skills are portable from project to project even over years we're already seeing this apps project teams are asking like what just happened how how we get to this big ball of yarn highly maintainable and understandable Ruby could be one potential answer for teams like that but we have to show up so my final plea is that if you do believe that you prefer Ruby for some reason tell people about it blog about long-term maintainability even as it's a boring topic compare Ruby to other ecosystems screencast tutorials about design lessons you're learning even if other people have said them before how you say it will be different find an organization like girl development or black girls code and show them the gentle on ramp of Ruby's syntax and community and I don't recommend ever visiting the failing hacker news but if you're there stand up for Ruby hacker news drives a lot of decisions about the tech that company is used which is totally ridiculous but true and and and Ruby is rarely mentioned there anymore because it's not new and trendy so the solution can't just be like Trump like tribalism it's not us versus them let's all be polyglots is the only where we're going going to draw in language like JavaScript empathize be kind don't assume the others have had the same lessons that you learned doing Ruby you have valuable things to teach them just like they have valuable things to teach you so anyway that's what we try to do at my company test double we like Ruby a lot but we also engage with people working in other languages because we want to help developers where they already are and we're looking for help so if you want to work with us you know test doubles always hiring always interviewing if you want to make Ruby great again first time shoot us an email at join at test double dot com you know it's a real easy conversation we don't start with a whiteboard exam we just talk to you about who you are what you like to do how you like to work and then tell you about how we work and see whether or not that sounds like something you want to do also I have stickers so so I'm going to be around all all evening I've got a bunch of test double stickers and I also printed up a thousand make Ruby great again a whole bunch of my back here so I hope I get a chance to meet all of you today thanks so much for keeping it weird