This week the rogues discuss the importance of conferences and user groups to the Ruby community.
[Intro song: Memories by Weezer]
DAVID: Welcome to Ruby Rogues. I'm your temporary host, David Brady. Chuck Wood is out for the moment. Today’s panel, we have Peter Cooper who says he is ideally the editor of Ruby Inside and Ruby Weekly, and the author of Beginning Ruby. We've got Marty Haught, who is from Hot Code Works. He’s also in the Boulder Ruby Users Group, the mountain.rb. Marty, did you say you are one of the organizers of mountain.rb?
MARTY: I am.
DAVID: Awesome. We've gone Mike Moore, who is some idiot from Utah. I'm allowed to say that because I had lunch with him recently and we hung out and stuff. No, Mike is one of the most awesome rubyists in the state of Utah; he organizes the Mountain West Ruby Conf, and he is also the organizer of the Utah Valley Ruby Users Group. And so I see him at least once a year at that conference and about once a month at Ruby meetups and about once a week when we get together and hack. Oh yeah, and then James Edward Gray who is… well, I'm not as good at this as Chuck is. He’s with Gray Productions. He also organizers the OK.rb. No wait, James do you run the users group as well?
JAMES: I do. I will be doing that the second I hang up on this call.
DAVID: Fantastic. So we'll have to hurry, guys. And James is also the organizer of the Red Dirt Ruby Conf. And I'm your host, David Brady and I do not organize any conferences, and I do not run any Ruby users group, so I'm not really sure why I'm here. I'm not even recording the call today, because my computer sucks. So, Mike is actually stepping in to save the day. JAMES: But you are another idiot from Utah.
DAVID: I am another idiot from Utah; which means tonight’s Ruby Rogues has 100% more idiots from Utah than you are… oh, wait, wait, wait, no, no, no, we are maintaining parity because Chuck is from Utah. So we have lost Chuck, but the conservation of the idiots from Utah has been maintained.
MIKE: I like to think that my level can even surpass Chuck, though. I'm hopeful that we are going to represent Utah even more.
DAVID: You know, if you throw soft balls like that right over the play, now this early in the podcast, I'm just going to let it go. [Laughs] Today, were talking about Users Groups and Conferences. And seeing as I don’t do either of those, I just attend them, I´ll just be your fan boy. So who wants to kick us off, talking about how you organize your conferences?
JAMES: How about we just go around the horn, talk about what you attend or what you host and how you think they are or are not important?
DAVID: That sounds awesome. Do you wanna start, James?
JAMES: Sure. So I've run the Oklahoma Ruby Users Group for many years. I do that. And then the last two years, I did the Red Dirt Ruby Conf. I was an organizer of that. So those are my involvements in that conversation. For me, they are super important. Like, I always feel like when I meet people and they say they are rubyists, I'm like, “Oh, that’s cool. Do you go to the user group, the conferences and things like that.” And when they say, “No.” I always feel like, “Oh, you are missing it. You don’t get it yet.” Or that it’s such an important part of our community. That we're so good at doing the community interactions and learning from each other and stuff like that, that I worry that people that aren’t taking advantage of that, are missing a major piece of our community. So that’s why it was very interesting to me and that’s why I love running users groups and conferences.
MIKE: So I've been doing Mountain West Ruby Conference for the past five years; one of the first original conferences and I think the oldest continuing to run conference. And then before that, I started the Boise Ruby Brigade. And I'm also involved in the Utah Users Group as well. I think one of the things I like the most about the whole conference scene is the reach that it has I think is unseen. One of the things that we did early on was we decided that we wanted to record and distribute the conference proceedings, put up on the internet and let people see it and learn from it. That was one of the things that when I started going to Ruby conferences that I really appreciated; the times when things were recorded and as someone new to Ruby, I can go back and kind of go at my own pace. But I think one of the things I'm most proud of is that there's so many conferences that are putting their proceedings online; either streaming it live or putting it to download afterwards on Confreaks or the other sites. And there is a huge group of people around the world, that are pulling down these contents and learning from it. And that’s the thing that I'm the most proud of because there's so many regional conferences going out today. But the very, very far reach that they have, that is kind of unseen is just one of the things that I like the most about it. The other thing I wanted to add too is I'm a big fan of the podcast. And I don’t drink, but I went out and I got myself a Bundaberg Root Beer, which is an Australian root beer. So I'm going to pop that open and enjoy one while doing this.
JAMES: That's awesome.
DAVID: [Chuckles] That’s awesome. Cool. Marty, what conferences do you do and which do you attend and why?
MARTY: Okay. In terms of conferences, I'm a bit of a conference junkie and my wife is not a big fan of that. I organize Mountain.rb from last year, which is now called Rocky Mountain Ruby, which will be in September in Boulder, this year. And I have done a lot of conferences; I went to Ruby Conf when it was in Denver in 2006 and I've been to each one after that. I've been to Rails Conf a number of times and some other regional conferences. I also helped Mike and Pat with Mountain West back in their early years in that conference and been through a number of conferences. So I really love conferences. It was in Scotland. That was a lot of fun earlier this year, and I think they are great. They do so many things for the community. If you think about how things are now, we are very much an online-based community. Sometimes people don’t even know what other people look like; if you run into them, you wouldn’t know that’s who this online personality is. And so conferences really do that. You get all set and okay, now you have face. Maybe you didn’t already know that to the name, to the personality, then you have to talk to them over stack break, over diner or over questions after a session or what not. And I think that’s really important. I know a lot of people really love the hallway track. The time in between sessions at conferences. And it’s really rare -- maybe impossible -- really to get all these people together, short of conferences. And that’s really pretty special and I love that aspect of it. One of the things I try to do in… I think most of the regional conferences do this too, is I want to create that when I put on my conference. The other thing that I really like touching on the other subjective user group, user groups are great. I think that they are vital. When I moved to Colorado, I moved to Colorado in 2005 from Kansas and I didn’t know anyone and I really wanted to do a live networking. I was new to Ruby at that point, and so I started Boulder Ruby selfishly, so that there will be a gathering of rubyists that I can go and hang out with. And that was the motivating factor for me in doing that and that’s why I continue to do that. I do love community and building it. And the monthly user group meetings are great. From that, I've seen a lot of things develop in our local community from those meetings. And I think those benefits are totally worth the extra time and work to get the users group going and maintain it.
DAVID: Cool. How about you, Peter?
PETER: I live in the middle of absolutely nowhere, so traveling to things, I find quite difficult. So I've only actually been to three different kind of like Ruby-focused conferences and that’s EuRuKo 2008, which was in Prague; Ruby Force in 2008 which was in Copenhagen and Rails Conf 2009, which I think some people would say was kind of like the heir of the Rails Confs. It was kind of like one of the quieter ones as far as ---. It was in Vegas and I think a lot of people doesn’t want to go to Vegas and all that kind of thing. But I definitely see value in the user groups perhaps more. The conferences, I've always found to be a bit of a drag, quite expensive. And it’s nice to meet up with people, of course. Always like to bump into Dr. Nick and you get these people that like goes to every single conference. And you are guaranteed to bump into them and it’s always fun. But this kind of artificial atmospheres I'm not really keen on about some of these things. And it costs so much money. I think they'll spend like four grand or something, by getting to Rails Conf. And like just getting all different things around it and hotels. It’s just like it’s a big expense. I could buy a new Mac; I’d rather just have that. So, user groups is something that I'm much more kind of --- on I guess because they tend to be local or you can sort of attend one if you are like on vacation somewhere, you can drop in. I've done that before in London. I don’t live anywhere near London, but when I've been to London I can sort of drop in on a group, which is good. I'm the co-organizer of a group here in the city I live in which is pretty much like the Kansas of England, very empty. And you know, I think like half the people that go are rubyists in some form or another, but not sort of like full time. And half the people who go are marketing people, and so there's no real focus on Ruby there. We just end up coming and talking about it afterwards. And the other thing that I attend is Leeds Ruby Thing. They call it Leeds Ruby Thing rather than user group because basically, it involves a bunch of rubyists in a certain area of England, going to the pub and getting drunk and arguing about things that almost never to do with Ruby, whatsoever. I mean this is the thing about English meet-ups in general is that generally, there will be the pub is involved and drinking is involved -- it’s just the English way, unfortunately. I would like to go to other meet-ups that are in other places, especially like in California or places like that, where it sounds like people really like geeking out in the technology a little bit more. But over here, it’s kind of like its time to like decompress and not focus on the technical stuff so much, which I find a shame because I'm not a drinker. But you know, it’s just how the English people rolls. I'm sure you’ve met many of us before, who are always drinking or perhaps Irish people, even. So yeah, that’s what my experience is with it. I'm sort of slightly evolved and I do attend a few, but I definitely don’t think I get the same experience here, as I would in the US just literally because like in Europe, the different languages and so on, we don’t tend to visit each other countries perhaps as much for these kind of events, whereas you guys can just hop in a car, you can drive to a different state or whatever, it’s a lot easier to move around and kind of work with people in that way whereas I only know two rubyists and that’s it and it’s just kind of like that.
MIKE: That’s okay, Peter. I never liked meeting you at conferences anyway.
MIKE: I'm just kidding. We've transitioned here in the west, in the Utah region, we've kind of transitioned our lunch meet-ups to be the sensible hacking lunches, but they just kind of evolved to a just bunch of chit chat and folks getting to know each other. And I find it strange. I visited Seattle.rb a few months ago, and it was kind of not chaotic, but it’s just a group of people in a room, kind of hacking and talking and doing stuff. Now, our user group meetings, the are only successful when we have a plan; when we were able to publish a schedule of who is speaking about what and how long type of a thing.
DAVID: Our meet-ups are very type a.
MIKE: Yeah, they really are. But the lunches I think have been really good for us because that just gives us an opportunity and excuse to be a lot more relaxed and get to know everybody that way.
MARTY: So, Mike, why do you think that is? Why do you think when you don’t have a schedule, that they don’t show up?
MIKE: I think people are busy and it’s just a cost benefit.
DAVID: I´ll chime in as well -- at the risk of incurring the wrath of my fellow Utahns -- Utah has no culture. Like we have no night life. There's just no concept of you would not go downtown on Friday night just to go downtown. We just don’t do that. We live in the middle of a very sparsely populated state and we like it that way. We just keep our distance. And so, unless there are some excuse to get together, people are just like, “Oh, why would I go do that?”
MIKE: Well, a lot of people have responsibilities and things that they have to do, and so there is always a tradeoff; people are trading off doing something with their family to go out and to meet with a bunch of pasty white guys at night, you know?
PETER: Rural places are places like that though. Like, more to me, I see. That’s the rural lifestyle, isn’t it?
JAMES: So Dr. Nic has been going around giving this talk recently about how were not very good as a community of like building user groups that take the experts, train up the people that are just getting in to the language and things like that, training them up and then letting them become experts and take over like a lot of successful groups do. It’s counter example is the Toastmasters Groups, where they teach you to give presentations and then eventually you end up ideally running your own Toastmasters Group, teaching others. He’s been pushing us to see what more we can do in that direction, so we can make our users groups more open to people. And I've been trying to implement some of his ideas. Here in Oklahoma, I definitely feel like that is a problem, like we used to get together and talk about NoSQL stuff and crap like that just because it interests all of us old timers that have played with everything. And so, I think we were very off putting to new people. And the fact that tonight’s meeting, we are going to have a very simple problem and we are going to pair program our way through it and things like that. So I'm trying to turn that around, but I would be interested to hear other’s thoughts on that, like Mike made it sound kind of like the Seattle.rb may have a little bit of the same disease.
DAVID: I was actually going to turn that around and ask you immediately, James, how you are planning to address that. Our very last Utah Valley meet up was very informal; we all got around together at a table. We were chit chatting and we had a guess from out of town, and 45 minutes after we were supposed to start, he says, “So are we going to have to Ruby meet up?” [Chuckles] Were like, “Oh, we should probably do that.”
MIKE: You might wanna start at some point.
DAVID: We might wanna start. So yeah, I'm going to leave the round of answers to that with my suggestion which is that you should start your meeting just ever, really. [Laughter] Who wants jump on this? How do you mentor the new guys? How do you break up the cliques? How do you keep the meeting from becoming socially stagnant?
MIKE: James, I haven’t seen Dr. Nick’s session on this, so can you share what some of those ideas are, some of the things that he is suggesting that we do to improve a situation like that?
JAMES: Dr. Nic puts his interest on it and you guys know he worked hard to bring the Rails installer up recently. And he basically talks about how, for the longest time, if you went and Google “how do I get started on Rails on Windows,” that you would come to this answer that told you to do this thing and he would walk you through what that experience is basically like, and it basically a nightmare and none of it worked anymore because it was all old instant installer stuff. So he was basically saying whether we just replace that documentation with a thing that says ‘I hate you’ because it’s basically the same thing.
DAVID: No, actually it’s not the same thing because ‘I hate you’, is a lot more honest.
JAMES: Right, its more helpful.
DAVID: It’s less deceptive.
JAMES: [Chuckles] So anyways, he basically talks about things like that. So, to give an example, one of the problems we do have is that some people there are new enough, that they don’t have a great Ruby environment ready to go for something like this pair programing and stuff. And eventually, I wanna have sessions where we help people get installed and ready to go. Though, I would definitely need some help for the Windows side of that. But, one of the things we are going to do tonight, we have built an OK.rb at EC2 instance, with everything you need ready to go. So if you come tonight and you don’t really have a good environment, we can just spin up another instance for you and you can play on that. So we are trying to get better about bringing those people in and doing more. We were very much a presentation group -- that was our thing. But, the presentation is always run by the same 3 or 4 people that had done all that beginning stuff a long time ago, so we never really talked about that at all. So like, at last week’s meeting, I went up there and I purposely prepared nothing, thinking that then, I could only use stuff that was basically automatic to me, because I’d have to talk and type at the same time and things like that. So I just went over some really basic Ruby stuff, like I can get the command line switches in Ruby and all the cool things you can make Ruby do from the command line when you wanna use it through your shell. And then I went into Rails a little bit and showed some simple association stuff. And that seemed very positive and we had a big group and a lot of the new comers told me that was helpful. So, things like that, that we tend to be a little off putting to certain groups.
MIKE: Yeah, I certainly think that’s important to get the new guys involved. And we like to ask them to present, right? Someone shows up, they are there for a couple of months, we give them something that they should present on like a design pattern or something simple.
DAVID: Yeah, the other thing that we've started doing just recently is we've started talking about apprenticeship patterns. We've got a couple of people who are new that are older, they are like more mature. They are not like just new programmers or they're people that have gone partway through like marketing careers and then switched over to programing. And so, they’ve got a lot of wisdom and a lot of knowledge about how to mature themselves and how to grow themselves. And for them, a lot of the unknowns in programing are actually known unknowns to them. They are like, there's this field of knowledge that I am aware of that I need to have inside of my head, so how do I get it. And it’s awesome because they are actually the ones that are driving it. They are basically stepping up and saying, “I wanna learn how to program. How do I get more out of this?” And so they are stepping up and doing apprenticeship stuff. Like last month, one of the programmers just stepped up and said, “One apprenticeship pattern is sweeping the floor for the master, so is there somebody here who is programing something that wouldn’t mind me just sitting by, pairing with you, watching what you are doing and then documenting your stuff for you?” And everybody love somebody else to do the documentation. So that was like, everyone was like, “Yes you can come work with me.” And he got a huge amount of training. It was awesome.
JAMES: You’ve just hit on one of the reasons I think that users group and stuff is so important and conferences to an extent. I think programing is so much to keep in your head. And even if you are good and you can learn all that stuff on your own and things, which still plenty of people can, a lot of the times it’s like, how many languages do we need to display a webpage today? You know what I mean? You got HTML, CSS, you may be using some SaaS, HAML, you got Ruby -- all that kind of stuff -- just to display a webpage. And it’s like, I think one of the advantages of a mentor is he can tell you things like, you know what? Let’s not worry about this right now. Because you have no idea when you are trying to assimilate all that, at what point do you stop on the regular expressions or whatever. It helps to have somebody to kind of guide you along that path. And that’s why I think mentoring and apprenticeship is so important; and that’s why I think users groups is so important is you’ll never get another opportunity where you can learn so much from people that can help guide you down the path quicker.
MIKE: I absolutely agree. I know there's a lot of people that are talking about trying to make Ruby a lot more friendly to new programmers. And not just people who are unfamiliar with Ruby, but people who are unfamiliar with programing. And that to me just seems a weird thing to spend a whole lot of time on. I wish people who think that way and want to approach that well, and I hope it works. My approach has always been, if you want to know more, just come out to a users group meeting, right? We'll just go at your pace; we'll figure out what your needs are and we'll just kind of address them overtime.
MARTY: How big is your group, Mike? How many people normally come out?
MIKE: We got like 500 or 600 people on the mailing list. So we got a group down south of the Utah Valley that’s about 25 people. A group up in Salt Lake, that’s about another 30. I think there’s another 50 or so, North of Southlake.
MARTY: That’s the number of people that actually show up?
MIKE: Those are the people that show up, yeah.
MARTY: Yeah, okay.
MIKE: And you don’t reach everybody that way, but I think that there's this drive to try and get a one size fits all training and education system to help people learn, but people are all over the map, you know? You just never know where their gaps are. And it’s much better to do that in person; just come on out, meet people. You´ll gravitate towards people that are going to be more helpful to you and you go that way. I mean, that was the thing that I really loved about the Ruby community when I first found it, was this whole notion of MINASWAN, right? Everyone is nice. Everyone wants to help you progress and wants to help you learn. And there's just no better way of doing that than in person.
JAMES: So, another thing kind of thinking on what Mike was just saying is that for example, me, I love to teach. I love to help. That’s like my favorite thing to do. So I just love to go out and help people in Ruby. Unfortunately, due to like the Dreyfus Model of Skill Acquisition, if you'd ever looked at that at all, I'm actually a really bad person to teach a beginning programmer because I'm so far from that. It’s been a long time since I've had those horribly painful conversations with the compiler. And so now I don’t remember as much as how frustrating that was. I can skip a lot of those baby steps that I didn’t have to or that I needed way back when. So that’s another reason the users groups are important. Like Mike said, you gravitate toward the people that can help you. You need somebody ideally, that's just one or two levels above you because they have the knowledge that you need, but they are still close enough to that situation, that they are good at putting it back in your terms.
MIKE: Absolutely, 100% agree.
DAVID: That’s interesting that you mentioned the Dreyfus model because when I first got into Ruby, I was very, very frustrated that there was so little documentation. I mean, the pick axe book had just come out, so we finally had some English documentation available to us, and I was very, very frustrated. And the reason I was frustrated was because I was coming from the Microsoft… everyone expects me to say .NET but that was actually before the you know like COM and that type of programming model. And the WIN32 programing model was very well documented. I didn’t need to talk to anybody else. I had it all there in my CHM files. I had it all there in my IDE. I could look anything up. I could research anything. There were examples of anything in the SDK. I had everything I needed at my fingertips to solve any problem that I thought I had in that model. And when I went to Ruby, it was just a huge revelation to me to talk to other people. And I think a lot of rubyists miss out on the fact that it’s like that Dreyfus where too many levels and now it’s just a no brainer. Let’s go to URUG, let’s go to a meet up, let’s go to the hack lunch, let’s talk to people. Let’s get on the mailing list. Let’s get on the IRC and ask people about this. Let’s talk to people. And I think a lot of people, especially new Ruby programmers they don’t get that because they are coming from the cloistered tower of having everything well documented. Having their needs cut and sliced for them. In Ruby, all those problems are solved by having a really strong networks of people around you. And so, I just don't wanna diminish the importance of that notion of talking to people; get there and get in person.
MARTY: So with the Boulder group, our meetings are mainly still very presentation based. And like Mike, I've been actively going after people to get them to present. When we started, there were really maybe three or four rubyists back in 2006 that were here, that I basically had them present most of the time. Chad Fowler, Bruce Williams, and Jeremy Hindgardner. And these four probably made up 80% of our talks the first year. But then as we start to go along, they didn’t want to speak every other month or what not, and so I started getting other people to do that. And now, today, I'm finding people that haven’t presented ever before, and I challenge them on doing a talk on whatever. And they do. And they try to vary the topics so that it’s interesting to all the levels of people that are here. And we just did an introduction to Sinatra, just last meeting and that was really popular. We actually had over 50 people attend, which are about maybe can't handle much more than in our space and it was crazy. One thing we do with our meeting format that I do is the first 30 or so minutes is all networking; we have food and we have beer. And people just hang out; they can kind of come in late, they can be 15 or 20 minutes late -- not a big deal. And people really connect and talk to each other then. And then I sort of take the temperature of the room. We have a big cow bell that we beat on when it’s time to start.
DAVID: [Chuckles] That’s cool.
MARTY: I have a fairly loud voice, so even with 50 people talking loudly and enjoying themselves, I can get their attention -- especially the cow bell of course [chuckles]. And then we start off and it works. And for those of you who know Boulder, we are in the downtown area and everything is within 5 to 6 blocks of that. There's lots of places to go. And it’s very social, it’s very fun to hang out there. And so it’s not uncommon for people after the meeting to go out and then go to either a pub or wherever and just hang out. There's a couple of things I’d mention that we’re doing to sort of outreach a bit more and break just the sort of the presentation model, because sometimes I wonder if that’s too much of the sit down, let us throw information at you and maybe you won't do anything with it and I kind of worry about that. For a few years now, we've been doing a Wednesday morning code and coffee. It’s very, very informal. People show up now meets at the Dojo 4, which is Era Howard’s Ruby consultancy. It’s right off pearl street. And that’s a lot of fun; people can show up and if they have problems or they wanna show off something cool, they’ve done to the other 6 or 8 people that are there, they can do that. And it’s nice. We also did our first code retreat a couple of months ago. Corey Haines actually came in and Chad Fowler both of them sort of tag teamed it. I think we had over 60 people at it. And it wasn’t Ruby specific though, so it was multi language. And that was really cool. A lot of people really dug that. And that was great, because some of them were pair programing for the first time. I actually found that half my sessions that I was doing there was introducing the concept of test driven development and pairing and Ruby. And so I'm like, wow I'm teaching all three of these to somebody. We are not going to get very far in the game of life in this session, but it was so useful to them. They're really happy to see that. And some of them did some crazy stuff. I think Thomas and Jeremy Hindgardner did the game of life using image magic, which is absolutely nuts. But it’s just cool to kind of do that sort of thing, and we are going to continue to do Hack fest, I don’t know, maybe 2 or 3 times a year. And the last thing I´ll mention is we also did a Rails BugMash. I think it was last month. And it’s actually nice because I didn’t organized it. One of the things I really worry about is, I don’t wanna be the guy putting everything together and sort of dominating the community. I like it when other people step up and say I think Boulder should have this event or this meeting and have them own that and I'm happy to give the support and get people out to it. And so the BugMash was this sort of event that I totally did nothing with it at all. And some of our members put it together and they squatched a bunch of Bugs -- people who didn’t really know what they are doing were just trying to help fix a Rails bug, and they learn quite a bit. So that’s some of the things we are doing out in Boulder.
JAMES: Those are some awesome ideas. Interestingly, we did an intro to Sinatra. It was a while back now. But when we did it, it was also one of our most popular meetings ever. So when Marty mentioned that, it brought that in to my mind. So if you ever wanna slam dunk for your local Ruby Users Group, but intro to Sinatra seems to be just like a total win. So that's interesting. Another thing we could probably talk about, there's been kind of a controversy going around recently because it’s a PyConf that's charging…
DAVID: Oh, evil people! [Chuckles]
JAMES: Charging their speakers to attend. Basically, their policy is everybody pays the same thing; so if you are a speaker at that conference, you pay the normal registration to attend. And everybody pays exactly the same. So let’s go around horn and see everybody’s thoughts on that one.
MARTY: I´ll start really quick. Maybe I should mention something and let you guys go around So I'm fairly passionate about this and I wrote a blog post. And I think I posted it Monday; actually I wrote it over the weekend and just never got time to actually post it. So I finally posted it, and it’s on my blog martyhaught.com, it’s the last post. I don’t post very often actually because I'm so busy. I felt compelled to post this. And sort of the underpinnings of why I think and of course I come down to the side of speakers of course, and volunteers and organizers should not pay a ticket to attend. That’s ludicrous. So to me, it’s like I can't believe we were having this conversation kind of looking at that way. And so I thought, well, I guess I should just spell it out. So I did. And actually a couple of Python guys jumped on my blog and add some comments and some of the comments are very interesting. I think I may have wrote more in the comments than I wrote in the original blog post, replying to these guys. And actually, I have another round to put out there. So I thought I’d mention that first and I have some more comments on this, but I´ll let everyone else go next.
PETER: For me it depends if someone is making money out of it. Like if it’s really a community thing and its being put together like on hoof as it were, then fine. But if it’s O'Reilly and they are running like a major conference and they are making serious money from it, because they make serious money from these events, then people shouldn’t be paying to attend they helping those guys make money. I just look at it from the money point of view. If it’s a community thing, different story.
JAMES: Even in the community things too, like I mean I run a pretty small conference here in Oklahoma city and I can tell you that in order to pay me back for the time I put in and stuff, I would have to beg a freaking lot of money. You know what I mean? I'm never going to make anywhere near that.
DAVID: And this is another thing that I think is specific to the Ruby community is… oh boy, I'm almost afraid to come out and take this position but we are really, really dismissive and abusive to speakers in the Ruby community. People don’t seem to understand that when you say, “Hey, I´ll present at a conference,” that you then spend the next 6 weeks of your life freaking out about your talk, about how you are going to do it, putting it off, then losing sleep because you are not prepared, then you go to the conference and it turns out that you are speaking on the afternoon of the last day, so you don’t enjoy the conference at all because you spend the entire conference preparing your talk. So basically, you showed up at this conference and spent the entire time working and struggling until you actually get through your talk and get it done, and then you can finally enjoy what's left of the conference. I don’t see the point of having the presenters pay to get in. I think that’s asinine. I'm almost offended by that comment. It absolutely shows no appreciation of the person who is standing up, choking down his stage fright to get in front of 200-300 people, and actually put something up on the screen that a bunch of people are going to get on IRC and snicker about. And it takes a tremendous amount of courage -- especially in our community -- to stand up and present. And I see absolutely no reason not to reward presenters for their presentation by at least giving them, you know, “you can come here for free.”
MIKE: You know, with Mountain West and Ruby Web Conference, we don’t usually charge our speakers and running a conference is very difficult, especially the smaller regional conferences because there's just not a ton of money there. And when you wanna do stuff like record it and put it out online and everything, those expenses really add up.
JAMES: And food.
MIKE: Yeah, if you are doing food, that’s a tremendous expense. But even though there's no money, you can almost always find the money to let the speakers in for free. And with Mountain West, we don’t make a lot of money at all and our tickets are only $100. James says he has a small conference and I'm thinking mine is miniscule, then. But we try as hard as we can to even pay an honorarium or to give an honorarium to the speakers who do show up. Because for me, the quality of the conference is determined by the quality of the speakers; because those speakers are bringing people that want to learn from them and that’s where the touch points are for all the conversations. And your conference just can't succeed without having really, really great speakers. And so I think there's no one on Ruby community who does not appreciate speakers. I don’t know understand where the Py Conference, where they are coming from, but obviously, it make some economic sense for them and they’ve made a decision and it seems to be okay. I don’t feel like casting stones at what they are doing, but everybody I know in the Ruby community whose involved with regional conferences, and even Chad and Dave, and all the guys at Ruby Central that do both Ruby conference and Rails conference, none of them have that perspective. So, it just seems that it is what it is and I don’t understand why a lot of people are so angry about this one conference in the Python community deciding to make a different decision.
DAVID: Wait, so this was the Python community, not the Ruby community?
DAVID: Oh, Ruby community. I apologize. I take back what I said about you.
MIKE: [Chuckles] No, it’s the Python community. It’s a Python conference that is charging speakers.
MARTY: I believe it was a Django European conference specifically. But interestingly enough, it seems to be a philosophical difference in the Python conference. I can tell from what I've learned, PyConf actually, they made a post about their policy explaining it. The thing is, what's fascinating about their approach is they don’t… it’s like they see this as some social equalization. Like the speakers are the ones who are making the most money. They have made it. And so it is sort of their social obligation to pay just like everyone else, and show up and sort of give back. It’s all about giving back. And so they had this extra burden that they think is appropriate. I'm not saying it’s not. And I definitely agree that, running a conference, that’s a personal thing; every conference is a little bit different. And you know, it’s fine for everyone to have a different take on that. I know how I wanna run my conferences and I think most of us do and we all have very similar conferences because of that. But what's interesting is they also had, in some of their their arguments with me, they were arguing about like there's no financial need for the speakers to get this money back to attend for free. So what we do is we take their registration money, we create a financial aid program. And not just that; they make a fairly hefty chunk of that budget for financial aid, so that those of lesser means can attend the conference. And so I think that it’s not some… well, maybe some of them are, they just can't manage their budget well or whatever and they just wanna charge everyone and make it simple. But some of them are making a very conscious decision that they socially think this is important; sort of like open source software where it’s all free… anyway, I don’t know. That’s kind of what I've got from it, but I don’t agree with that in that, I think because you are doing so much work, I mean I've spoken at several conferences and the amount of work I've put in is crazy. The amount of money I've lost in not billing all my time is crazy. But I do it anyway; I don’t care. And you know, I appreciate that at least I don’t have to buy a ticket my credit card, fill out the registration thing and submit. It’s like, man, I'm working for you. I'm making your conference better. I hope I am.
DAVID: I guess I could see it if the conference already had a feeling to it that the speakers were all celebrities’ where most regional conferences, 80% of the speakers are like locals or some guy from a users group. It’s you don’t have DHH keynote at every regional conference. I mean, you get one guy from Rails and one from Ruby that’s really big and if you luck out and if you get Matz on your conference, then that’s freaking awesome, but it’s not a total celebrity fest. I'm looking at the clock and were about 45 minutes in and I wanna get to the picks, but Mike asked a question at the back channel that I think is more important, so I'm going to shorten the time for our picks, if that’s all right. Mike asks what makes a good conference -- specifically as an organizer. How do you choose your presenters? How do you decide on single versus multiple track conference? How do you decide on venue? That sort of thing. I think that’s a really valid question. I think a lot of people will be really interested to see kind of the soft underbelly of conference organization. Does anybody wanna jump on that?
JAMES: Absolutely, I do. So, my thing with the Red Dirt Conference, which I think I'm going to surprise Mike here since he seems to think Red Dirt is bigger than Mountain West. I think Mountain West is actually about twice the size of Red Dirt. It’s a pretty small conference.
DAVID: How many people came at Red Dirt this year?
JAMES: A little over a hundred.
DAVID: Oh, okay.
JAMES: So yeah, I think it’s about half the size of Mountain West.
DAVID: We had 250 at Mountain West this year, Mike?
MIKE: Yeah, about that.
JAMES: And Mountain West is a great conference that absolutely everybody needs to go to. Actually, I stole a bunch of ideas for Red Dirt from Mountain West.
MIKE: I'm stealing ideas from you.
JAMES: What? That does it! [Chuckles] I'm just kidding. So, my thing with conferences and what makes a good conference is just try something new. That is my only real request. But I feel like conferences had stagnated just really bad, and they haven’t been like trying new things and stuff like that. So when we sat down at Red Dirt, I just brainstorm a bunch of random ideas. I didn’t even care if they are good ideas. I was like, “Well, we'll be different.” And some of them works the first year really, really well. For example, we did panels; so we basically pre-chose topics and then people submitted within those topics and then we let each of them speak. And then I ran a Q&A panel with them at the end, and we had everybody send questions to me and I turned those questions around on the whole panel. And I would purposely try to tilt on to things or start discussions among speakers, stuff like that. Everybody said that that was just so cool because some people said it was great because you didn’t have to be as brave to ask that question to the speaker that you are intimidated by, because all you had to do is post it on IRC and James would ask it for you. So it kind of lowered the barrier. But at the same time, we were able to weed out all of the questions that really just needed to be googled and have a link response, because we just handled that in IRC and the question was never asked to the speakers, and things like that. Plus when you can get the speakers cross talking, then you get multiple perspectives on the topic. So I found that to be really interesting and stuff. And I´ll admit that some of the things I've tried weren’t as successful and I changed them up the second year and things like that. So on what it takes to make a good conference is just the guts to try something different and I think everybody should do that.
DAVID: Cool. What about you, Mike?
MIKE: Basically with Mountain West, I have been chasing the sensation I had at Ruby conference in 2005 in San Diego. And I had found Ruby about 9 months before then and I kind of went to San Diego on a lark because it sound like a good vacation. I went there and it just melted my brain. I just came back from the conference every single day, just completely tired. And it was I think the last Ruby Conference that was fully single track. And so to me, any conference that melts my brain, just makes me physically tired, and then you have kind of that cohesive experience across all the speakers, that to me is a great experience and one that, like I said, I have been chasing for years now.
MARTY: So gosh, this is like you know, your favorite flavor of ice cream kind of questioned. I agree with James; I really like pushing the envelope. We certainly did a lot of things that were unique at Mountain.rb last year, now Rocky Mountain Ruby. Personally, I think unless you size gets to a certain point, I think single track is the way to go, I agree with mike totally on that the unified experience is great. I'm really a big proponent of the social interaction and encouraging that. Last year, we did a card game that encouraged people to trade. First of all, we had a theme; Pioneering Ruby. And so we had a pioneer card game that you are some type like a trapper or a cowboy or something and you would trade cards with other attendees and try to build the deck that was good for your type. And that was pretty successful; some people didn’t care for it and that always happens, but a lot of people really did and there are some interesting things that came from that. A lot of interaction. I really like encouraging that. I also try to facilitate a calendar schedule of the conference so that there's plenty of things going on. It’s not like at a certain point things are, you know like, oh there's nothing going on, so I guess I´ll just go home or something. I wanna make a very full experience, mixing the social, the technical and also getting outdoors a little bit; we do a little bit more outdoor stuff because were just a few minutes from the Mountains here in Boulder. I think putting that all together. And for me, it’s really important to also have a cohesive experience and decide what it’s going to be; What is your theme? What are you trying to put together when you are organizing a conference? What is your goal? And once you have that figured out, then it allows you to sort of decide, okay, “I’m going to put this event here. I'm going to do that hack fest there. I'm going to have this social thing here. This party there.” And it just makes it so that you know if you are or not on target with what you are trying to achieve.
PETER: I don’t organize, but I think Mike just hit all the nails on the head of things that I was going to mention about the single track and stuff like that. I mean, I had so much good stuff about Nordic Ruby, which is sort of held in Scandinavia. It’s a single track conference. It’s in a reasonable size and people seem to actually love that and I think they had the same with RubyFringe in Canada a few years ago. People seem to love it and just because they don’t talk about the same talk that everyone had been, so that was really good. One thing I would mention to people who are organizing conference is if you are trying to aim for international audience or people coming from all over the country to attend, sometimes some of these events they are trying to like broadcast them out to a wider audience, but the actual event perhaps isn’t substantial enough to warrant like crossing the country or even crossing oceans, continents or whatever. You know, if it’s literally just like a single day, something like that, that might not be enough just to go. So if you do really wanna make it like a bigger deal, with international people coming, perhaps there needs a little bit more spanning at least a couple of days sort of make it worth the trip as it were, or at least have all the events that are going on in town at the same time that perhaps attendees would want to attend. You can even get to other events like if it was Apache conference or Linux conference or something. You know, it would be nice to have a bigger thing to go to than just one small event.
DAVID: You know, it actually amazes me that out here in Utah, we've got the state motto was, “Greatest Snow on Earth,” and there aren’t any Ruby conferences organized in the winter time. We did actually do last year Ruby Web Conf was up in Snowbird, we were up in one of the ski resorts but we were in the off season; we were up there and there’s beautiful scenery, but there was no skiing going on. I thought that was kind of interesting.
MIKE: It did snow though.
DAVID: It did snow. That was some freakish weather. I'm going to weigh in as just the lone voice of the and I will say that one of the best conferences that I've ever been to, hands down the best conference for me for my money is Mountain West because I live here and so I don’t have to buy plane ticket, I don’t get a hotel room. Actually last year, I discover that you do actually need to get a hotel room because it just a 30 minute drive the end of having your brain just melted out through your nostrils, is just if you got a hotel that you can just walk two minutes to crash, it just makes it so much better. But one of the best away conferences I've ever been to was Lonestar. And I love dual track conferences because if you get a session that you just don’t care about, you have one alternative. It’s like you can pick the best of the two. And because there's only two things and the organizers were pretty careful, you know, they put Rails training against --- training. So that there weren’t too many people who wanted to go to both. They did a really good job of avoiding that problem where you really had like a conflict of scheduling. Rails Conf the year that I went was 2007, I think. Rails Conf was 5 or 6 tracks and I had a conflict on every single session; like I wanted to be in one. In fact, I actually session hop; I go to a session, I get twenty minutes into it and go this kind of sucks and so I’d leave and I go hang out, I go to the other session. And a lot of people were doing that and there were just no sense of community, no sense of where were you at when this happened kind of thing. Where Lonestar still managed to present most of that, but I still have to confess that a single-track conference where everybody is on the same room has a much tighter… you know, there's only one back channel that makes any sense for people to be in. You don’t get people talking about something that is not in your room.
MARTY: One thing I wanna to mention what Peter was saying is that and we kind of made this decision with Mountain Rb is that we were mainly for locals. We want it to be a destination conference and that if you come here, you are going to have a great time. But we don’t really expect a lot of people from out of the state coming and we have 75% people that attended were from the main Denver metro area and that was it. And I'm okay with that. I'm okay with that. That’s our guiding principle. It was mainly for the locals to experience Ruby and have cool people come here. So we still get speakers but you know, we don’t expect like Ruby Conf or Rails Conf where most of the Ruby communities try to make it out for that.
MIKE: I think that’s a terrific point that Marty makes. And that’s one of the things that I've seen all these regional conferences pop up is getting really, really difficult to not have conflicts anymore. And in fact, Ruby Conference moved their November date that they’ve been in for the last few years to the end of September and that caused all sorts of different problems. It’s a huge ripple effect where a lot of conferences got stomped on by Ruby Conference and now they are trying to react. And now we've got I think the weekend of Ruby web conference, there's four conferences happening on that weekend.
JAMES: I agree. It’s definitely maybe even reaching almost problematic levels.
MIKE: Like Marty said, it’s not a problem because you go to the one in your region; you don’t need to go to every Ruby single conference. And there's enough talent out there; enough really great speakers, that you are going to find people that are going to be able to speak at your conference. And so, I've kind of changed my mind in the last few years. It doesn’t bother me as much. I wanna be respectful. I don’t wanna stomp on someone’s established date, but if someone stomps on my date, I'm not nearly as upset about it as I used to be.
MARTY: I think Mike, when we originally doing Mountain West, I thought after we got going, all the regionals started to pop up and my concern was speaker drain; there wouldn’t be enough people to submit talks in and that will become a problem. I don’t think it really has, although I do see this where it seems like the same ten speakers are almost at every conference kind of thing, or it’s almost like you can guess half of the lineup, because they are almost at all the conferences. And I do wanna kind of change that up a bit. I wanna see a little bit of change. But at the same time, I'm like, “Hey, if most of the people that have seen this are just from Colorado and they don’t travel, these guys don’t leave at all. They don’t go to any of these conferences other than maybe watching a video online, they would never see these people anyway.” So I'm like, well, maybe it’s not a big deal.
MIKE: Yeah, that's exactly how I've come down to. It’s just not as big as deal as I thought it would be. And then when we are choosing the sessions that we are going to accept, because we only get to accept one out of every three or one out of every four proposals that we’re given. We do try to give deference to folks that are in the region, and to proposals that have not been given before or at very minimum, have not been recorded before because it is when you’ve watched something 3 or 4 times by the time you have seen it at a conference, it didn’t have quite has big of an impact on you. But yeah, we’re turning down at least 60% of the proposals we are getting, so I tend to have seen the effects of that drain but I do agree with you that people make the speaking circuit, and sometimes that’s really, really good and sometimes it’s not as effective.
JAMES: I absolutely agree about the reused talks; if I can point to it on Confreaks, then it’s an instant kill for me. I won't even consider the speech. If it’s on Confreaks and people saw it, it’s there and it’s good. I like to see the original stuff, the new stuff.
DAVID: That’s a really interesting point James, because I certainly am aware of people that are trying to build their brand by speaking at conferences and when I say, “I'm aware of this,” it’s because I'm trying to emulate this. I'm trying to get out, get proposals to a bunch of conference, trying to get myself out there, try to get people to recognize who David Brady is because he’s just this bald guy from Utah.
JAMES: Wait, who are we talking about?
DAVID: Uh, some guy. Anyway, so…
MIKE: Why are we always talking about David Brady? Geez.
DAVID: [Chuckles] Then it’s working!
DAVID: You know, I hate the “repeat talk” thing. And so I submitted out to three conferences right now, but I've got four different talks that I'm proposing. And so, I may manage to get out to three or four conferences this year and I would really like that, but I will not end the year being known as, “the guy who talks about X” because I'm not going to repeat over and over again. I think that's really important.
MIKE: I think that's a great general rule, there are a couple of exceptions; Glen Vanderburgh’s real software engineering should be given at every single conference.
JAMES: That’s a good point.
DAVID: Yeah, if you are DHH, go ahead and talk about Rails. That’s cool. You can do that every time.
JAMES: Good point.
DAVID: Yeah. So we are coming up right on the hour mark. James, let’s start with you. What's your pick for the week?
JAMES: Okay. So since we've been talking about conferences, I'm going to plug the RubyThere site. rubythere.com and it’s a great site for looking at what conferences are around; you’ve got an attend tab and a speak tab, so if you wanna look at cool things to attend that are coming up, you can do that. Lonestar Ruby Conf that we've mentioned is there. If you want to speak at conferences which I highly, highly recommend which we've been talking about all of, you know, original is what the conferences need more than anything. And here's my dirty little secret: when I propose a talk for a conference, it’s usually something I know quite not very much about at all. I tend to propose talks that I wanna learn about instead of talks that I already know about, and then that forces me to sit down and learn enough to be able to talk about them at a conference and stuff like that. It’s a great learning experience and it works out well, so I recommend people try that. Some awesome conferences you can propose to speak at right now are Rocky Mountain Ruby which you may know a little bit more about; Ruby Web Conference is coming up. The Big Ruby Conf which we've discussed a little bit. Also, I just proposed for Ruby Midwest which is going to be in Kansas city this November, so hopefully they will take my talk and you can propose a talk there and come out and see us there.
DAVID: Cool. Let’s see Peter you are a regular; what's your pick for the week?
PETER: Yeah, super-duper quick; it’s the patches, all the speed ups on Ruby 1.9 first started off by Xavier Shay about a week ago or something like that. But then, Ruby core swiftly came in and gave a ninja patch to Ruby head and then Todd Fischer put together the patch from Ruby head, put it into Ruby 1.9.2-p180 and I've written a post on Ruby Inside all about how to get that running. And DHH gave it a go kind of out of the blue; he said he sped up his boot time on one of his Rails apps by I think 42% or something like that. So I didn’t get that good. I got like between 15% and 25% but he obviously did pretty bigger apps than I am. Well, actually undoubtedly. So yeah, a really cool patch and you can use it right now and make sure your spec run faster and that kind go stuff.
DAVID: That is really, really exciting to me because I got asked last week or two weeks ago, “So, how much slower is Ruby for PHP?” And of course we did those benchmarks 2 and 3 years ago when Ruby was about 50% slower than PHP. So you know, we've all just kind of malingered on the fact that, “Oh, Ruby just scales horizontally better,” and all that stuff. I realized that I haven’t actually checked these benchmarks and nobody is talking about these benchmarks anymore -- the PHP guys have stopped talking about these benchmarks. And that’s because they are basically neck and neck. Ruby MRI 1.8 is 10% slower, but Ruby 1.9 is significantly faster than PHP. And yeah, the idea of patches speeding things up another 25% to 42% is very exciting to me.
PETER: And it’s very easy with RVM.
DAVID: Very cool. My pick of the week very, very quickly is Pharo, which is a dialect of Smalltalk and all I'm going to say about that is I have been reading object thinking by David West and learning how to do eastward facing software. And I figured if you are going to drink the Kool-Aid, you might as well drop the cyanide tablet into it and so I have been studying Smalltalk because this is the language that people say is all about super, super, super object orientation. I am absolutely fascinated by this language because I have been studying it now for about 8 hours solidly and I still cannot write fizz buzz, you know, just a simple trivial loop and print kind of application. This language is a --- I will figure it out. It’s so sexy. So that’s my pick. You can get Pharo at pharocasts.com, and you can read about it at pharobyexample.com. So all right, so guests, you’ve had a few minutes to think about your picks for the week. Mike Moore, what's you pick?
MIKE: So my pick is a little library that I don’t think a lot of people know about; it went into released this week and it’s called Rails.
DAVID: Oh yeah, I've heard it.
MIKE: So you should check that out.
JAMES: How’s that compare to Sinatra, exactly?
MIKE: It’s a little bigger than Sinatra, but you might have a little bit easier time scaling it, if your app really hits and gets popular. The other pick I have is a really great little library called HighLine that is useful for comandline applications and it helps automate the input taking for a commandline app. And it was written by James Edward Gray, so.
JAMES: Some weird guy.
MIKE: Yeah, some weird guy.
DAVID: And Marty, what's your pick for us?
MARTY: All right, well I got two picks and I don't know what picks have been covered before, so one in the conference space, lanyrd.com. It is sort of like Ruby, they are not exactly Ruby there's actually cooler but lanyrd is more wildly covering, I guess is the best way to describe it is lanyrd.com without the second a. It’s really cool because you can see a lot of other conferences, a lot of events that you normally wouldn’t see. It’s everything. So that’s kind of cool. And if you are a conference organizer and you are not on lanyrd.com, you should take care of that. The other one would be Padrino.Rb. And I think this is really interesting. It’s somewhere because Rails and Sinatra. So if you want a little bit more helpers and sugar and goodness than what Sinatra gave you, then you can try it out and it sort of had my attention for the last couple of weeks and that’s at padrinorb.com.
DAVID: That’s awesome. Every time I see lanyrd, I think Lynyrd Skynyrd.
MARTY: Yeah. [Laughs]
DAVID: It makes me wanna say “Lynyrd”. So, okay cool. Those are our picks. We have been your Ruby Rogues for this week. Mike Moore and Marty Haught have been our our guests. Maybe we'll have you back because you guys were awesome.
JAMES: Absolutely. Thank you.
MARTY: Thank you for having me. This was fun.
MIKE: Thanks for having us.
DAVID: Peter Cooper and James Edward Gray and myself, David Brady have been your regulars and we hope to be back again this week. Good night. That’s it.