 Fy enw i. Gweithio yn RubyConf! Gweithio! Gweithio yn ymgyrch. Mae'r amser yn ystod. Mae'r amser yn Andrew Faraday, ydych chi'n gweithio'n gwneud hynny o'r fath o'r RubyConf. Ac mae'n gweithio'n gweithio'n gwneud y ffantastig o'r ysgrifennu o'r amser yma'r amser yma. Yn ymgyrch ymlaen, yw RubyConf, gan gweithio. Mae'n gweithio'n gwneud y gweithio i wneud y panallus o'r perthynu gyda byddai ddafawr i ddefnyddol. Yn ymgyrch ymlaen, mae'n mhagosio arall. Yn ymgyrch ymlaen, mae'n ddefnyddol oherwydd i'n deallu'n gweithio. Dyna'r fath o considerum, felly mae'n gwneud o gychwyn hynny. Mae'r gweithio'n gwneud hynny. Mae ymlaen i ddadfyn y panallus, mae'n gwneud. Mae'r game yn ymgyrchol ac mae'n bwysig i gael eu ffordd yna a'u ei gael eu gweithio. Felly, mae'n ddweud y panel yn rhaid i'r gweithio. Felly, mae'n gweithio. Rhaid i'r gweithio, rhaid i'r gweithio. Rhaid i'r gweithio. Rhaid i'n ddweud yma, mae'n ddweud eich gweithio. Rhaid i'n ddweud eich gweithio. Mae'n ddweud eich gweithio er mwynnwysau'r llanlyst, mae'r panellistau ei ddim yn gweithio ar y dda, have been broken. And those can be might subjective. So if you feel that they're being unjewel-y-harsh, by all means, do let me in the panel know that as well. And this one last far more important thing I need from you. Now the show always starts exactly the same way with an exuberant statement of welcome and the theme music. And as soon as you hear that piano music kick in, I need you all to raise the proverbial roof. Can Can you do that for me? Okay, here goes. Welcome to Just A Minute! That's right, good afternoon and welcome to a very special edition of Just A Ruby Minute here in the fine city of Cincinnati, Ohio. We're halfway through day one of RubyConf 2016. Now we're going to play a few rounds of the game called Just A Minute, the beloved elder relative of all panel games. And what's going to happen each round, I'm going to choose one of the witty, insightful, and of course horrified individuals currently arrayed before you, and give them a topic that's of some interest to Ruby developers. They'll be challenged to speak about that without hesitation, including pauses, hedging noises, elongation of words, repetition of words that particular panelist has used during the current round, or deviation when they're simply no longer talking about the topic they have been given. Now if those rules are broken, the panelists can challenge by pressing their buzzers, the time will stop, and if their challenge is correct, they'll gain a point, but also gain control of the topic, and the time away is left off. They'll be allowed to continue speaking until the minute is over, or they are in turn challenged. Whoever's speaking at the end of a minute will gain a point for doing so, and incorrect challenges will pass control back to the original speaker, along with an extra point. So that's the rules, they're all very simple, it's a lot of fun, we do play along with us, and let's meet the panel shall we? So first up, and further from me, our spec maintainer, Sam Phippen. Next along the line we have the mind behind goat user stories, please welcome Tara Shernadilifwente. Next up we have the owner of two Ruby famous cats, and the founder of the Friday hug. Please welcome Aaron Patterson. And last but certainly not least, a huge part of both Cubmo and Bridge Foundry, Kinsey Ann Durham. Sam Phippen, you are first up to speak, and your topic is the worst bug I have introduced. Starting with a difficult one, so Sam. That isn't even spelled right. What is it? A deviation from the English language? No points. I'll allow repetitions of both introduced and interjudiced. That is entirely my fault, Sam. You have 60 seconds starting now. The worst bug I have introduced was this one time in production when I decided it would be a good idea to flush a reddish cache that actually wasn't just being used as a cache, but also, thank you. Repetition of cache. Repetition of cache, completely correct. And Patterson has a point. Wow. For those of you who missed last year, Aaron was on round four before this first point. So he's thrilled. Okay, Aaron, you have 45 seconds starting now. The worst bug I have introduced is something that I don't really want to talk about because it is embarrassing to me. Hesitation. Hesitation, definitely. So Kinsey's got a point and a fan. And you have 35 seconds starting now. The worst bug I have introduced wasn't necessarily a bug, but my pair and I, Kim Barnes, who is actually sitting in the audience right now, right there. Repetition of right. Repetition of right, absolutely correct. So Aaron, you have 23 seconds. On the worst bug I have introduced starting now. As I was saying before, I was so rudely interrupted by Kinsey. Deviation, he's talking about the interruption and not the subject itself. No, no. I was continuing. No. I've got to give you that, Sam. So you have 18 seconds remaining starting now. The worst bug I have introduced is an interesting subject because we as programmers spend so much time introducing bugs into the systems of bugs. I'm going to say a repetition of bugs because he said that the first time. Did he say bugs before? The plural, the first time he spoke. Does anyone remember? I don't think that's cool. I don't think so. To be clear, that would be... Am I supposed to be pressing this button, by the way? Point, is that a thing? You certainly could have done. I didn't hear bugs before. It would have been a legitimate challenge, but unfortunately I don't think that was. So Sam, you've got a point. You have seven seconds remaining starting now. The worst bug I have introduced, a topic that we can discuss here at the conference, as we... Repetition of we. He said we like eight times. So Sam Fiffen gets the point for the end of that round and takes the early lead. Tara, you're first to speak in this round, and this one was selected especially for you. Goat user stories. So this is Tara Shernadolofente on goat user stories starting now. When I was working at Living Social with at least one member of the audience, I created goat user stories with the DevOps manager, Matt Robinson. We really enjoyed talking about goats in the office, and we made up user stories where we drew goats on... Repetition of goats. Yes. You could have repeated goats, but not goats. There was also some hesitation by that. You stole the goats from me? You're not getting a sticker. So Sam gets a point, but not a sticker for that. And you have 34 seconds starting now. The reason I like goat user stories is that I find that they're very relatable to my everyday work as a developer who faces users, building systems that also need to function and listening to their stories. The idea of a user story comes originally from Agile, which allows us to think about ways that we can develop our software in reaction to our customers with goats, I guess. Repetition of goats? Yes. Absolutely. Yes! Ah! So you've got a sticker. And you have eight seconds remaining on goat user stories starting now. Goat user stories is a topic that I am extremely familiar with because they are about user stories. I didn't even know where I was going with that. So Aaron, you got the point for the end of that round and have drawn level with Sam Pippen. You're next up to speak as well. I really should have paid more attention to my spelling. You gotta say it like that, too. Again, I'll accept repetitions both with or without the key. This is what happens when I do the preparation on the plane. So Aaron Paterson on submitting a pull request starting now. When I'm submitting a pull request... What? Hesitation. I was in the middle of saying it. I had to go one round further than last year. An unpopular and yet correct challenge for Sam Pippen. You have 57 seconds. Sorry, not sorry. You have 57 seconds starting now. As an aspect maintainer, when I'm submitting a pull request I find that it's very important to think about the contents of the pull request. The description, the commits, whether I've rebased correctly and a number of other important factors. Repetition of important. Yes! Well, listen. Aaron, yes, you have the point. You have 43 seconds on submitting a pull request starting now. Submitting a pull request is a thing that people do when their hands are very cold. So they... You managed to speak through one bout of laughter. I'm going to guess that's hesitation. Hesitation, yeah. You have the point. You have 36 seconds starting now. So as I was saying, when I'm submitting a pull request I find that it's useful to consider the other people that will be reading the context of that pull request that I have submitted. Hes said I probably ten times. Yeah, there was a lot of eyes. Got to give you that. So Kinsey, you have a point. You have 24 seconds on submitting a pull request starting now. Submitting a pull request to an open source project can be very scary because there are mean people who maintain the libraries who do not want to welcome new people doing a pull request. Repetition of people. Repetition of people, completely correct. Well listen, so Tara, you have the last six seconds of this round. Starting now. Submitting or submitting a pull request is very important when you are... Yes! So as Tara, Shona Dullafrante speaking at the end of that round for a second point. Kinsey, up next to start. This topic could have started elsewhere. The topic is moving to New York. Which I should explain for anyone who's unaware of this. Sanforddon has just recently done. So, Kinsey, you have 60 seconds on moving to New York starting now. Moving to New York would be awesome because there's a lot of good food and people and things to do in the city. Moving to New York would be expensive because a lot... Repetition of the calls. Yes! Repetition of the calls. Or don't? So Sam, you've gained that point. You have 45 seconds starting now. Moving to New York is a song by the Wombats. The seminal chorus line... It was on the topic of moving to New York by the Wombats. It was very clear that that was the topic in hand. You're the judge. Sam, you've gained the point. You have 45 seconds remaining starting now. As I was saying, this piece of music by the band whose name I mentioned in my earlier speech and so won't mention in this one, features... Repetition of mention. Yes, so that was correct. You've gained the point. You have 33 seconds starting now. Moving to New York is something that Sam Phippen has recently done to... I'm guessing that's hesitation. Yes, hesitation. Sorry. Okay. Hiddie, you have 26 seconds starting now. Moving to New York is fun because they're... Repetition of because. That is correct when Kinsey was speaking of it. I don't know what to say about this. Whoever was clapping, you're my favourite person. Sam, you have the topic. You have 19 seconds starting now. Moving to New York was a really interesting process. Repetition of interesting. He said that the first time he was speaking. He did. He was less interesting this time. I'll give you that. You have 15 seconds remaining starting now. Moving to New York is weird. I don't know what to say about this. I can't do this. Clearly hesitation. Clearly hesitation. Absolutely correct, Sam. You have 10 seconds remaining and indeed 10 points starting now. So far, I've rather enjoyed moving to New York, although at times it has been a little bit difficult and scary. There are many things that happen in the United States. Sam Fifman consolidating that lead, speaking at the end of the round, and your own fact to speak for the next round. Your topic is why I code with Ruby. Ruby? You don't have to say Ruby. Wait, who's turn is it? You may. Sam, you have 60 seconds starting now. Why I code with Ruby? What a great question. I mean, really, why does anyone code with Ruby? In this room, I feel like we could get a lot of answers to that question that we might otherwise ask why I code. Repetition. Oh, shit. There was repetition in there. There was a repetition for... Question. Repetition question. Yes! So I'm going to give Kinsey in that section of the audience a point. There's no rule that says they can't help me and knew there was repetition. So, Kinsey, you have 42 seconds on why I code with Ruby starting now. Why I code with Ruby is a very good question because Ruby was the first language that I started programming with. Why I code with Ruby is because the community is so awesome. Look around this room. There are so many people... Repetition of so. I said it probably four times. I'm going to call that an incorrect challenge. So, Kinsey, you have the point. You have 21 seconds. Why I code with Ruby? Starting now. Why I code with Ruby would be an interesting preguta to ask the rest of the audience in this room. Deviation from English. I have two points, people. Please cheer my challenge. I'll take that. I was told I could speak in a different language. Usually, I would allow that one. I didn't have the language skills to tell if it worked as a sentence. It did, it means questions. Thank you. Notice the end of my last name. I'm going to give that on to Tara. You have 12 seconds on why I code with Ruby, starting now. Why I code with Ruby is because I do not code with Python, Java, JavaScript, Perl. I'm not hearing a challenge. I'm waiting. I've been on the challenge. I'm going to judge that I did not hear any hesitation. Java and JavaScript are clearly two different words. That was an incorrect challenge. Tara, you have a point. You have 2.1 seconds remaining, starting now. Why I code with Ruby? Nicely done. Tara, you speak at the end of that round. Thank you for your audience participation on these last round. You've gained the point for doing so. You're also first up to speak in the next round, Tara. Your topic is when to stop coding. You have 60 seconds starting now. There are so many ways to know when to stop coding. One of those is when it is 2 a.m. or 3 a.m. He was going to do it. That's the only reason I pressed the button. I saw him about to touch it. He cannot get a point. I knew what I'd done wrong. Totally fair. I'm guessing you're on the repetition of a.m. here. Yes, completely correct. Kinzie, you have the point. You have 48 seconds starting now. When to stop coding is a great question, because a lot of people don't stop coding when they should. You need to take a break, go eat and ride a bike and fish in the river, which is what I like to do when I stop coding. When to stop coding is something that we should teach junior developers to do, so they don't develop something called burnout. It's a very common thing that happens when you don't know when to stop coding. When to stop coding should be taught at coding boot camps. Repetition of should, like so many times. However, that was 53 seconds, but I am impressed. However, that was a completely correct challenge. Tara, you have a point. You have 7 seconds on when to stop coding starting now. When to stop coding is a question Kinzie was addressing quite nicely before I interrupted her. Tara, speaking at the end of that round, you've got the point. You are currently tied. Second place, leaving Aaron just behind. I've got a new strategy. I started with such a strong leech. Aaron, you are first to speak in this round. Your topic is an interesting one. What to put in application controller? Just to be clear, I will accept repetitions of application and controller as separate words, this sort of one word sort of two. So you have 60 seconds starting now. What to put in application controller is an interesting topic to speak about because what I like to put in application controller is all of my code, like as if application controller was a CGI bin file where I would just dump everything that I could ever possibly think of into that file and then run. Repetition of everything and file? Yes. Completely correct, Kinzie. You have 39 seconds. What to put in application controller starting now? What to put in application controller is an interesting question to ask. I personally put all of my model logic like user RB into my application controller because I don't really know what should go in an application controller because I rarely open that file. At my current job, I know if I open that file. Oh, shoot. Repetition of file? Yes, you could have had repetition of open as well. Oh, I thought you got it. Did I not got that one? Yes. So Sam, you have 13 seconds starting now. What to put in application controller is an interesting question that we can discuss here at this conference as a number of developers who work in the Ruby programming language naturally we end up writing application. Repetition of we. It was only two. Still, that's repetition. I was totally repetition. I've got to give you that. I don't particularly wish to enrage the audience so Kinzie's got one point. And a second and a half remaining on this topic starting now. What to put in application controller. I got to get him. So, Kinzie against the point for the end of that round. I think we are going to have to move into the final round of today's game. Kinzie, your first to speak, your topic is when not to commit. So this is Kinzie and Durham when not to commit starting now. When not to commit is a good question because I really never know when I should commit. That's when I ask my manager, hey, can you look at this before I commit? Because I really don't want to piss her off. Repetition of because. I didn't hear because before. Did anyone pick? No. Did I say because twice? She said it at the beginning. Mumbles of a sense. I've ruled against, I'm quite a lot on this. I'm going to give him that point. 45 seconds on when not to commit starting now. When not to commit is not just a question that we can apply to technology but also to our dating lives. In most of the time, when not to commit. Deviation from good taste. I think we enjoyed that enough to earn the point there. There's no way I'm going to be able to do this for 35 seconds but I think that was pretty good. That was pretty good. I'm impressed. 35 seconds starting now. Tomorrow in my talk I will be discussing when not to commit and when to commit. In that slideshow I will be presenting a number of goats from my Twitter account that I hope you look at. One of the things I'll say about when not to commit is that you should have a great commit message and if you don't, then you need to write one. Repetition of you? You're really going to support someone besides... Well he is kind of... You need a point. You know, I... It's not Sam, so let's give it to him. It's not Sam, so... I've got to give that one to Aaron. You have 10 seconds remaining on when not to commit starting now. Commit or not to commit. That is the question that is on the screen in front of me now. I want to beat Sam, but it's not looking like I'm going to. A hesitation. That was a hesitation. I have to give you that. Also I really don't want to lose my first game, so... It's not looking lightly. Okay, Kinsey, you have a third of a second on when not to commit. Are you going to start the timer? Starting now was the end of today's show. Thank you very much for listening. I have been showing my favourite thing in the world. I just skipped the challenge. However, thank you very much for listening. For historical reasons I must now thank EMS who created this game almost 50 years ago and Nicholas Parsons who has been hosting it in the real world all that time. Now, please... No. You should totally give her another point because Sam said he would retire if he beat her. And so if you tie them, Sam is no longer retired and we can continue mocking him for years to come. One more point! Who thinks I should force a draw here? Just to dishonest. I'm sorry. There are 10 votes in this country lately. Please, for the love of all that is holy, give her another point. We need a point. Erica needs this. We'll just remember this. I protest this action immensely. Double draw here. So thank you Ruby Comfort for joining in my little game. Please do join me once again showing your appreciation even for today's panel. Thank you very much. I'll be around all week.