CHUCK:
Okay, that’s just creepy, Dave.
DAVID:
Is it the eyeball picture?
CHUCK:
Yeah.
SARON:
Yeah, it’s really scary. [Chuckles]
DAVID:
Completely by accident, the eyeball is perfectly centered so that when people are calling me or I’m ringing back to them, the Ajax spinner goes right around the pupil. [Laughter]
CHUCK:
Completely by accident, huh?
SARON:
That’s [awful]. That makes it okay. Now I’m okay with it.
DAVID:
Yeah.
AVDI:
[Laughs]
CHUCK:
Because that’s not more creepy, right?
DAVID:
Exactly.
SARON:
It’s gone past the creepy level into awesome level.
DAVID:
[Laughs] I can die happy.
[This episode is sponsored by Rackspace. Are you looking for a place to host your latest creation? Want terrific support, high performance all backed by the largest open source cloud? What if you could try it for free? Try out Rackspace at RubyRogues.com/Rackspace and get a $300 credit over six months. That’s $50 per month at RubyRogues.com/Rackspace.]
[This episode is sponsored by Codeship.io. Don’t you wish you could simply deploy your code every time your tests pass? Wouldn’t it be nice if it were tied into a nice continuous integration system? That’s Codeship. They run your code. If all your tests pass, they deploy your code automatically. For fuss-free continuous deliver, check them out at Codeship.io, continuous delivery made simple.]
[This episode is sponsored by Hired.com. Every week on Hired, they run an auction where over a thousand tech companies in San Francisco, New York, and L.A. bid on Ruby developers, providing them with salary and equity upfront. The average Ruby developer gets an average of 5 to 15 introductory offers and an average salary offer of $130,000 a year. Users can either accept an offer and go right into interviewing with the company or deny them without any continuing obligations. It’s totally free for users. And when you’re hired, they also give you a $2,000 signing bonus as a thank you for using them. But if you use the Ruby Rogues link, you’ll get a $4,000 bonus instead. Finally, if you’re not looking for a job and know someone who is, you can refer them to Hired and get a $1,337 bonus if they accept a job. Go sign up at Hired.com/RubyRoguesPodcast.]
[Snap is a hosted CI and continuous delivery services that goes far beyond letting you do continuous deployment. Snap’s first class support for deployment pipelines lets you push any healthy build to multiple environments automatically and on demand. This means with Snap, you can deploy your staging environment today. Verify it works and later deploy the exact same build to production. Snap deploys your application to cloud services like Heroku, Digital Ocean, AWS, and many, many more. You can also use Snap to push your gems to RubyGems. Best of all, setting up your build is simple and intuitive. Try Snap free for 30 days. Sign up at SnapCI.com/RubyRogues.]
CHUCK:
Hey everybody and welcome to episode 167 of the Ruby Rogues Podcast. This week on our panel, we have Avdi Grimm.
AVDI:
Hello, hello.
CHUCKL:
Saron Yitbarek.
SARON:
Hey everybody.
CHUCK:
David Brady.
DAVID:
[Male computer voice] It has been [Female computer voice] zero days [Male computer voice] since the last diet coke incident.
CHUCK:
I’m Charles Max Wood from DevChat.TV. And this week we’re going to be talking about speaking at conferences.
DAVID:
Didn’t we already do this show?
CHUCK:
Yeah, it was episode 64.
DAVID:
64. But we talked about it as a bunch of cranky old neck-beards. And now we’re going to be mellow old neck-beards?
CHUCK:
I think we, at that time had varied experience speaking, but for the most part we had all done it several times.
DAVID:
Yeah.
CHUCK:
And so, I think the conversation is going to be a little different, mainly because I think Saron’s experience has been different. She pointed this out before the show, so I know it has been. And the other thing is that it’s been two years since we’ve talked about it.
DAVID:
Yeah.
CHUCK:
So, some things have changed. I think the Ruby community has changed. I think there are a lot of things that we need to think about and be aware of that we really weren’t thinking about two years ago. So, even there I think there’s plenty to cover that isn’t specifically the same as what we were talking about two years ago.
DAVID:
Yeah. In the preshow for the listener’s benefit a big reason we’re redoing this is because Saron had a whole bunch of great questions and really good answers. So, I’m tempted to just turn control of the show over to her.
SARON:
Oh my goodness, that’s so much responsibility.
DAVID:
Yeah, I didn’t want to tell you in advance that we were going to that because I wanted to see how you’d react. [Laughter]
SARON:
Well, this is how I’m reacting. It’s going to be great.
DAVID:
Awesome.
SARON:
Yeah. So, I guess the biggest thing is what do you talk about? That’s the hardest thing. And when I did my CFP for RailsConf and I did it on reading code, I did that one because that was literally the only idea I had. And so, I wanted to have a conversation on what do you base your talks on. I’ve heard people say that they base it on what they’ve been doing, what they find interesting. But I’ve also heard a lot of speakers tell me that they do it on something they actually don’t know anything about and they use the talk and the CFP as an opportunity to explore something that they don’t really know about, which makes me feel a little cheated as a listener. But yeah, what are your thoughts on that?
DAVID:
For starters, you mentioned you spoke about the only thing you could think of. I don’t think that’s a bad thing. If you can think of something to talk about, I think you’re done. I don’t think you have to say, “Well, I could talk about these 27 things, but I’m going to…” Well, unless you’re James Edward Gray, and then you say, “I’m going to talk about ten things,” and then you show up and talk about 39. But that’s his shtick.
CHUCK:
I don’t know. I’ve written talk proposals on both. It seems like some of them get accepted and some don’t, and I’m not sure even still exactly why. I think it depends on what the conference is looking for.
DAVID:
Yeah.
CHUCK:
But really, it’s just anything that you’re interested in talking to other people about, because inevitably you’re going to give that talk and the people are going to want to talk to you about it.
DAVID:
Saron, are you asking specifically if it’s cool to submit multiple CFPs or multiple proposals?
SARON:
No. I think that for the most part, I found that that is okay and I think a lot of people do that. But it’s more of just what do you talk about and how do you decide? When I decided to do the one on reading code, I was comfortable submitting it because it was something that I had actually done. It was something that I did regularly, but also, because I really don’t like talks that are very theoretical. And I don’t like talks that don’t really have context and don’t tell a story.
And I wanted to do something that was very practical, that you could listen to and leave and say, “I’m going to do this one thing differently. And I know exactly how to do it and I know how to start.” And I wanted to be very, very practical. And so, it worked out the idea I had, also fulfill those other things that I just wanted every talk that I give to be. And I’m curious what kinds of things that you guys consider and what you think about when you’re putting a talk together.
AVDI:
I definitely look at, basically what you were just saying, what kind of talk would I want to sit through. That doesn’t always give me a lot of help topic-wise, but I guess it does at least help with the style of talk that I want to give, because there are a lot of options out there for what style of talk you can give. And sometimes, I’ll just think for a while, what are the kinds of talks that I’ve enjoyed sitting through versus the kinds of talks where I got bored and surfed the internet. And that gives me some guidance.
DAVID:
Yeah.
AVDI:
That can mean different things. Yeah, absolutely. Passion, it can be, okay I want to hear something that somebody cares a lot about. But on the other hand, I’ve also enjoyed talks where I was just entertained. And it’s like a talk that I did recently. It was more aimed towards, I know I like some talks that are about silly things that entertain me. So, I did a talk that was more in that vein.
DAVID:
Also keep in mind that conferences, they stack out their schedule. And they consider things like brain fatigue and, “Okay this is the morning after the drink up so let’s not hurt the people that are hung over.” Right? And so, let’s put in a fluffy, fun talk and right before lunch on the first day, that’s where we’re going to put the guy who wants to decompile the live Ruby running process and patch it in memory in Assembly language. That actually happened at Mountain West Ruby Conf a few years ago. And he’s like, “So, let’s open this up and decompile,” and he dumped a page of PowerPC assembly instructions. And everyone went, “Uuh,” and he says, “It’s just assembly code. We’re fine.”
CHUCK:
[Laughs]
DAVID:
And then he proceeded to monkey patch the Ruby binaries. It was awesome. That talk would not have flown at 6pm on a Friday. But it did fly at 11am on Thursday, the first day of the conference.
SARON:
But did he have a picture of a cat in it?
CHUCK:
[Laughs]
DAVID:
He was more in danger of the wall of text. I’ve been trying to get gray page to catch on and it just hasn’t caught on. In the Ruby community we call it ‘wall of text’ and that’s when you put up a slide that nobody can read. From the back of the room, it just looks like a gray smear. You can’t read anything on the page. And he was more in danger of wall of text. It was five years ago. Don’t quote me on this, but I want to say he didn’t have a single picture. [Chuckles]
SARON:
Oh.
CHUCK:
So, are there guidelines then, for figuring out what a particular conference is looking for? Email the organizers? Is that taboo?
DAVID:
I would like to say I have a clever trick for this, but it didn’t work. Boulder did a, it’s the one that sounds like Mountain West Ruby Conf but it’s not Mountain West Ruby Conf. man, I can’t remember. I am sorry guys in Boulder. You’ll never have me over to speak ever now. Great. [Laughter]
DAVID:
Because I can’t remember the name. But it’s the Ruby conference in Boulder. And it’s great, and
it’s a lot like Mountain West. It’s highly technical and there are …
CHUCK:
Rocky Mountain.
DAVID:
Rocky Mountain Ruby. Thank you.
CHUCK:
I should have remembered that, because I’ve spoken at it. [Chuckles]
DAVID:
Yes. And I did. I contacted the organizers and I said, “What are you interested in?” And they’re like, “You know what? We want things from all across the board.” So, I submitted three different proposals. And they ranged from very technical to all the way to up very fluffy. No takers. They wrote back and said, “Yeah, you just weren’t what we’re looking for.” [Chuckles] So, maybe it’s a personal thing. Maybe I never had a chance. I don’t know.
CHUCK:
Well, the other thing is the way that they select the talks has changed.
DAVID:
Yeah.
CHUCK:
Because before, I know I’ve talked to several organizers. And they look over the list of people who submitted and they look over the list of topics that they submitted and they just handpick them. Sometimes, they’d have a board or a group of people who would vote on them. But then it was still full information. And with the latest rounds of people trying to be more fair and open to minorities, they’ve actually done more voting where it’s just the topics and submissions. And then they move into, okay, now we can see who the top ones are and pick from those. And so, they give unknowns and minorities I guess a fairer chance of making it because they’re not selecting based on names of submissions.
DAVID:
Yeah. That’s a thing that’s changed in the past couple of years, ever since I think Brit Ruby was the poster child for selection bias. And we all collectively learned a lesson from that. And a lot of conferences now, they’re selecting the CFPs double blinded or single blinded. Anyway, they select blind. You don’t know who wrote the proposal.
CHUCK:
Yeah.
AVDI:
Something that might be worth mentioning here is Noel Rappin has an article he wrote this spring called ‘What I learned from reading 429 conference proposals’ which goes over some of his experiences selecting for RailsConf, and talks about what makes for a good conference proposal.
SARON:
I remember reading that. That was a really good post.
AVDI:
So Saron, you picked code reading as your topic. And you did that talk. How do you feel about it?
SARON:
I have mixed feelings about it. I think that was the first time I was on a stage since maybe high school. And so, it was really fun and awesome to get to present and talk to a crown of people, and that just was a great experience and I just really enjoyed that aspect of it. I was really, really happy with, and kind of surprised, by how well it connected with people. And I got a lot of really good feedback on Twitter and in email and in person. So, I’m glad that the thing that I wanted to happen totally happened and then some.
But the thing that bothers me now is I feel like I am the [co now] where everyone’s like what gem should I use, and what library should I read, and how do I do this too? And now, when I’m getting invited to speak at places, they all want me to talk about that topic. And it’s really not the topic that I’m necessarily most passionate about. It was just the one that I knew I could speak about and in a way that would be helpful and informative. So, I feel more tied to the topic than I meant to be, and that I expect to be, and that’s the downside of it, if that makes sense.
AVDI:
That rings true. I can understand that.
CHUCK:
I think Katrina went through this too, where she did therapeutic refactoring and then people wanted her to come and talk about just that a lot. And just things like that where she became an instant expert on the one topic.
DAVID:
Yeah.
CHUCK:
And people miss some important things about who you are and what else you have to offer.
DAVID:
Yeah. You can get typecast.
SARON:
Yeah, exactly.
DAVID:
I wonder if there’s a good judo move against that. If somebody says, “Hey, would you come speak about this thing that you always speak about?” If you could say, “You know I’d be happy to but I’m really passionate about this other topic. Could I come speak about that instead?” and spring forward from it instead of feeling like you’re trying to back out of the niche that you’re in, if that makes sense.
SARON:
Yeah. See, the thing is, I have to go find other topics now. [Laughter] AVDI:
Yeah, yeah. That’s the trick. And it can be attractive just sticking with what you know. But I think it’s really important to branch out.
SARON:
And it’s really hard to not do it again, because I already have the cartoons for it, which took a while. And I already have the slides for it, so it’s really easy to just do that one thing.
DAVID:
Time to draw new cartoons.
SARON:
Yeah, exactly. But I think the other interesting part about RailsConf and speaking in general, just for me at least, is the obligation. I feel very, very obligated, as a woman, as a person of color, as an immigrant, as a not computer science degree person, I feel very obligated to represent a whole group of people. And I feel like I have to tweet a lot and I have to blog a lot and I have to speak a lot. And if I’m invited to anything, I’m probably going to do it, whether or not I think it’s going to be fun or enjoyable, because I feel like I have to be the voice. And it only gets further enforced because I have a ton of people, honestly mostly black women, coming to me and saying it’s so refreshing to see you and to see what you’re doing because there just aren’t people that look like us. And it’s an awesome feeling but it also creates all this other pressure to represent other people.
That’s been interesting to deal with.
DAVID:
And that doesn’t happen to me.
CHUCK:
[Laughs] I was about to say, I really don’t have any perspective on this at all. [Chuckles]
CHUCK:
I show up to a conference, I look like everybody else. And the other interesting thing is that I think it shapes my world view of the minority groups that are participating, because sometimes I notice and sometimes I don’t. With you being on the last several episodes of the podcast, at this point I don’t think about you in those categories. I just think about you as Saron because you’re there.
SARON:
I appreciate it.
CHUCK:
And so, I don’t know. I don’t have anything to offer there, because it’s not something that affects my world view very much.
SARON:
And that’s really interesting, because that’s the other thing. I don’t know what people see. I know what I see. I know that when I walk into any room, the first thing I do is I count the number of women and I count the number of minorities, literally. And I’m almost always disappointed. So, it’s very visible and very obvious to me, which leads me to assume that everyone else can see what I
see. But that’s probably not true. And I’d love to hear the rest of the panel’s ideas on do you notice those things? Is that something that stands out to you?
CHUCK:
We had a discussion a year, maybe a little longer ago, where we talked about privilege. We’ve talked about it a few times on the show. And yeah, for the most part like I said, it’s not something that I really think about. And so, it’s not something that I pay attention to, unless somebody puts it in my face and says, “Hey, there’s this thing that you should be thinking about.” And it’s yes, I can accept that and I want to support the movement there. But at the same time, since it’s not something that I’m involved in a lot, it’s like, “Okay, now what do I do?”
DAVID:
Yeah. It’s the trap of privilege guilt. I’ve got all this ability and power. What do I do with it? I don’t feel like I’m doing enough with it. I don’t know if this is the right answer, but I feel like one of the best uses of surplus privilege is to find invisible doors and unlock them for people. And the way I’ve been trying to apply that personally is things like conference talks, trying to get people to propose, trying to convince people with impostor syndrome that “Yeah, you should totally give a talk.” “You should totally run for president of your club.” “What are you talking about? I just joined a month ago.” That kind of thing. And anybody who feels that they can’t, try to by action and gesture indicate that this road is open to you. Try to go that way.
SARON:
Good.
CHUCK:
I think that’s exactly what you’re talking about there, Saron. It’s just that you being who you are and fitting the categories that you fit, by going out and doing this, you are opening some of those doors.
SARON:
Yeah. I think so. I [inaudible] a blog post [inaudible] months ago. It was by Anil Dash who has I think 100,000 followers on Twitter. And he went through a little experiment that he did for the past year that he didn’t tell anybody about until the experiment was over, where he decided that he was really interested in promoting women and women in tech. And that he decided the only people he was going to retweet for the next year was only going to be women. And he saw that as his personal way of amplifying voices that he felt weren’t being amplified very much. And I really love that idea. And it made me very aware of who it is that I amplify myself.
So, if I decide that it’s important to me to have more minorities or more people who are low income or immigrants or whatever group of people that I feel are at a disadvantage, if I decide that those are the people that I really want to promote then some of the easiest ways to do that are to just retweet them, or to retweet their blog post, or to reach out to them and to connect. And because I’ve made, honestly not even that big of an effort because it’s just part of who I am, of doing those things. It’s really interesting, because if you look at my followers and people that I follow, it’s really diverse. And I actually know a lot of female programmers. And I know a lot of programmers of color.
And so I think that it really starts with developing and building your own network, and then paying a lot of attention to who it is that you promote in the smallest of ways, just as much as it is getting someone to actually speak. There’s a lot of really small ways to do it as well.
CHUCK:
Yeah. I think the other thing that is interesting here is that, and it harks back to you answer or your question a little bit as far as should I be doing this and how much should I be doing it and things like that. I think there’s something to be said for going outside of your comfort zone to make some of this happen and to promote some of this important work. But at the same time I also want it to be genuine and I want it to be, I don’t want you to feel like you’re there because you’re obligated to speak at yet another conference. I want you to be there because you genuinely want to be there and sharing your knowledge in that way. And so, if you’re a little uncomfortable, then I think you’re okay. And if you just don’t feel like you can and you feel that sense of obligation, then maybe it’s something that you should really think about, whether or not you should go.
SARON:
Yeah. And what’s interesting about that is exploring where that discomfort comes from. So, if it comes from the fact that you’re self-conscious because you’re not an experienced speaker, then there’s definitely speaking classes and seminars and there are a lot of workshops, especially for tech talks, that you can look into to be a better speaker. If the reason why you’re uncomfortable is because you just don’t have the technical background and experience, I think that that’s not necessarily a very good reason as I found, because a lot of newbies have interesting perspectives as well.
So, I think it’s less about do you feel comfortable and not, but more of why do you feel uncomfortable and what are things that we can do to make it better. For me, when I look at CFPs and I look at who else is speaking and I see a few women, that makes me feel instantly more comfortable. If I look at CFPs and I look at the language especially, and they say things like we’re willing to coach or we encourage first-time speakers, that makes me feel comfortable. And there’s a lot of just really small things that you can do to decrease that discomfort, because I really don’t think that being uncomfortable with something is a very good reason not to do it. But if you understand where that discomfort comes from, there are ways to tackle that.
AVDI:
That’s a fantastic point about the language of CFPs.
SARON:
Especially just even having a code of conduct is huge. [Chuckles] If you don’t have a code of conduct, I’m a little worried. And it’s funny, because I’ve heard people say that, “Oh, if I put up a code of conduct, it looks like my conference has an issue,” which I think is just a ridiculous argument to not, because to me it says you understand that there are issues that need to be addressed in this community and you are demonstrating that you take it seriously. I think that’s what that says. And so, even just having something up as simple as that really goes a long way.
AVDI:
Thankfully, it does look like a lot of conferences are taking that to heart at this point.
CHUCK:
Yeah. And I’m also encouraged that they’re inviting you to come speak because you really do have a lot to say and share. And just seeing the way that you express your thoughts is something that I honestly with I was better at and I think a lot of people benefit from.
SARON:
Well, if you ever want a cartooning lesson, we can definitely set that up. I’ll be happy to show you how to draw. [Chuckles]
DAVID:
That would be an awesome talk, actually.
CHUCK:
I was going to say, I may just take you up on that. [Chuckles]
AVDI:
Yeah. [Chuckles]
SARON:
You know, it’s funny because I gave a talk last night actually about drawing, and it was called ‘Drawing Adam’s Face’. And it’s funny because he’s going to hear this and he’s going to be so embarrassed. And so, Adam is Adam Enbar who’s the founder, or one of the founders of the Flatiron School. And for my application, I drew him a picture, or I drew a picture telling my story. And one of the frames was of him yelling, “You got a brief code. Can you brief code?” which is not a direct quote, but it’s pretty close.
And so, I gave a talk last night at ManhattanJS about what it was like to draw his face and draw his cartoon. And I showed all the different iterations that I had to go through to finally end up at the one that worked and all the different ways to do that. It was a lot of fun. It was a lot of fun. And I got to make fun of him while he was in the room, which is pretty awesome.
DAVID:
[Laughs]
AVDI:
I want to say that with regard to feeling a sense of responsibility, obviously I don’t experience it in the same way that you do, but I think it’s true that if you are in the public eye in any capacity, you’re going to start feeling pressure of some kind regardless.
CHUCK:
Yeah, I think to that degree, I’ve felt that to some degree where people email me or text me or tweet at me and say, “Hey, are you going to this conference? Are you speaking at this conference?” But yeah, I don’t think it’s quite the same as what Saron is talking about.
SARON:
Yeah, I know. That’s interesting, because for different reasons, I feel the same way about going to, I feel really bad because I don’t go to a lot of meet-ups and things in New York that are always happening with code. And I feel like I’m supposed to. I feel like once that, I’ve given that one talk and given a couple of others, I’m always supposed to be in the know on conferences and talks in general. And I’m really not. Usually I’m busy coding. [Chuckles] And I feel bad about that.
AVDI:
[Chuckles] I feel like I’m expected to top the confident code talk all the time.
SARON:
Oh.
CHUCK:
Oh, that’s an interesting thing to talk about, where you have a popular hit talk.
AVDI:
Yeah.
CHUCK:
Do you feel pressure?
AVDI:
Yeah, and that’s what I mean by that. It’s just that there’s pressure, well to continue being what people see you as. If you’ve delighted people once, there’s a sense of pressure to continue delighting people, that kind of thing, or to delight them even more than the last time because nobody likes, at least internally the voice is nobody likes someone who just coasts, who does something cool and then coasts.
DAVID:
Right.
AVDI:
So, you got to do better.
DAVID:
Right. But on the other hand, you’ve got that sense of you’re waiting for people in the audience to say, “You know, I like Avdi’s stuff ever since he changed his sound and went acoustic, but this new experimental stuff is just too out there.”
AVDI:
[Laughs]
[Chuckles]
SARON:
Well, I want to ask you, ask all of you, do you feel obligated to give very technical talks versus more fluffier pieces? How do you balance the technical degree of your talks?
DAVID:
I very much don’t, which might explain why nobody’s accepting my proposals. [Laughter]
DAVID:
No, so the thing for me is when I first got into Ruby, I wanted to give a lot of technical talks, explaining here’s what the enumerable module does, and all the nooks and crannies that you can do, or here’s what this library does, or here’s what this other thing does. And now that I’m a crotchety old neck-beard in Ruby, the last two talks I’ve given were last minute. They were at Mountain West Ruby Conf and I just happen to be rooming with one of the organizers when a speaker canceled. And he’s like, “Guess what dude. You’re speaking tomorrow.” And I’m like, “Oh, crud. Okay.”
SARON:
[Chuckles]
DAVID:
And so, I’d stay up until four in the morning writing a talk about what I was really passionate about at that moment, and it would invariably be an aspect of the programming life rather than any specific technology. So, the last two or three talks that I’ve given have been on brain hacking and about very squishy stuff, like left brain/right brain stuff and that kind of thing. And the last one I gave was actually in theory about refactoring. But at the end of the talk, it was basically about being inclusive and being accepting of other people around you that have different ideas and welcoming different paradigms. Even though you look at a weird paradigm and you know it’s just wrong, take some time to with with that paradigm. Maybe it’s got two or three fundamental assumptions that you have to accept before it makes sense. But once you do, it’s very, very valuable.
SARON:
That’s awesome. I love that. I love that you went from refactoring to inclusive. That just sounds very poetic.
AVDI:
I almost feel the opposite from pressure to be technical, because for me, from the background I’m coming from, doing a tech talk is, well, the nasty voice in my head says it’s basically a cop out.
CHUCK:
I knew you were going to say that. [Laughter]
AVDI:
You know, because I can, at least as far as Ruby goes. There are a lot of things that I know at this point. And certainly, doing Ruby Tapas helps a lot with that as well. And so, there’s stuff that I can talk about technically. But there’s that voice in my head that says, “Okay, yeah. You can talk about this stuff until the end of time. But how are you actually changing the world with this talk?” So, for me there’s that my internal pressure is I feel like I ought to be saying something bigger.
SARON:
Oh. What would bigger look like?
AVDI:
I can say from, so okay, the stabs that I’ve made at it are I spent a year talking more about pair programming, trying to get people to diversely pair program with each other on things that weren’t just the project they were working on. And that was about encouraging people to expand their horizons. And so, I guess that’s a bigger thing. That’s not really a technical thing. I sort of disguised as a technical talk, but it was more about that. So, that’s the kind of thing, it’s those big ideas.
That’s where I feel like I fall short and I wish I could do better.
CHUCK:
I think the other thing, at least in my mind, is so the technical aspects of programming are more or less, especially if you get into a language like Ruby or something like that, they’re pretty well set, because you’re talking about the capability of the language, or the capability of a library, and what I does and how it can be used. But the really interesting parts of programming are how you organize your code, how you solve problems, how you participate in the community, how you learn, and things like that. And those, a lot of those, are more fluffy, more gooey, but they really get to the heart of what programming is and what being a programmer is. And so, I think there is definitely a use for exposing people to those technical topics, but I tend to agree that it’s much less well defined and much more interesting to have somebody talk about the way that they solve these other problems,
SARON:
I like that, because to me the bigger problems and the potentially world changing problems are the ones that are more interesting to look into. But I feel obligated, I guess my internal voice would tell me that not doing a technical talk and one that involves white coding or something hardcore like that, is a copout for me, because I feel like that’s the scarier, more intimidating thing than talking more about high level concepts and ideas and people. So, it’s interesting, because I did a little bit of searching on what makes a good talk. And I came across a couple of times people saying that having a lot of code and showing your code is a lot easier and talking more about concepts and ideas, which I never ever would have thought that that would be the case.
CHUCK:
I think it also speaks a little bit to how long you’ve been a programmer, where I think at least when I was newer at programming, newer at Ruby, I thought there was a whole lot more out there that I
didn’t know than I think there actually was. And so, I underestimated my capability. So, by doing that you do find the technical topics more intimidating because you look at it and you know that there are things that other people know more about than you do. And so, why would I want to talk about those things? Where in reality, what we really want to know is what your experience is and how it affects me and how we can make your experience better. And those are the major things that come away from talks, especially talks by people who haven’t been programming for ten zillion years.
DAVID:
Saron, can I ask you a tough question on this topic?
SARON:
Yes, but I cannot promise an answer.
DAVID:
You’re fairly new to programming. And you feel a pressure to give technical talks. I want to know as delicately and kindly as possible, with as much respect for you as possible, is it your impostor syndrome speaking that if you stand up and don’t give a technically beefy talk, that you’re afraid that I’m going to sit back and go, “She doesn’t know how to program so she’s talking fluffy stuff”?
SARON:
Oh yeah, that’s exactly what it is, totally.
DAVID:
Okay, okay.
SARON:
Yeah, and it’s particularly strange for me because at work I work with someone who also graduated from the Flatiron School and we’re pretty much at the same level. So, I really don’t know how good I am or I’m not. I have no sense of my own skills, because I’m comparing it with someone who knows pretty much what I do. So, going out into the real world and telling you what I know technically is just very, that would be very, very uncomfortable because I have no sense of it myself. I’d like to think that if I did do a highly technical talk, I would make sure to be super prepared and have a lot of people look at it and give me feedback and prevent that opportunity from happening. But yeah, that has a lot to do with it. Cartoons are awesome because people love them and they get really excited about it. It’s really fun. And I think that that differentiates me and my style from a lot of other people’s. And it’s a really great excuse to not do something super technical where impostor syndrome definitely kicks in.
DAVID:
So, I have a response to that, and then a follow-on question. And I will keep the response short, because you are kicking butt in this discussion and I want you to keep running with the ball. Your impostor syndrome is wrong. I would love to hear you talk about drawing, or to hear you talk about life at the Flatiron School, or life at whatever. And to come at some of these softer topics the way that we would expect our luminaries to approach, like DHH or Uncle Bob or whatever, to talk about a broad spectrum aspect topic, I would love to hear those from somebody who’s new. So, having said that, I realize that my own impostor syndrome has fantastic antibodies to statements like that, that, “Yeah, yeah, yeah, I appreciate you saying that, but…”
SARON:
[Chuckles]
DAVID:
So, the follow –on question is, how do you think you can, and I’m asking this because there are other newbies going, “Yeah, Dave says that he’d like to hear me talk about this, but not really,” so maybe they’ll listen to you because you’re actually more of an expert on this. How do you get past that?
SARON:
Yeah. I think that for me, it’s been really important to have other people who get it, which is why I started the code newbie chat on Wednesday nights at 9pm eastern time, specifically to find other people who are around the same place. And we can talk about our problems, and our issues, and our wins, and our losses together. And actually, we had I think it was last week, we had a chat and the theme was impostor syndrome. And we talked about, and it was really interesting to me because I’m very familiar with the concept.
And I heard about it I think a couple of years ago, for the first time. But a lot of the code newbies had never heard of it as a term. They didn’t know that it was a thing that people dealt with. They thought it was just them on their own, feeling like they didn’t belong. And they were alone in that. And so, it was really, really great to hear people say, “Oh my god, I feel that way all the time,” and someone else saying, “Yeah, me too. And I’ve been coding for ten years.” And just knowing that everyone else is going through it regardless of how experienced they are, I’ve seen to be very helpful in other people and it’s been really, really helpful to me.
I think the other thing that I’m starting to do more and I wish I’d done sooner, was to tell other people the things that you want. And so, when I started at the New York Tech Meetup, my goal was to do at least one talk before I left. And this fellowship is seven months long, so within seven months I was going to do at least one talk. And whether or not it made me comfortable, whether or not I wanted to, I was going to do it because I knew that I would be good for me and it would be great for my career. And it’s something that I just had to do.
And once I’ve decided that and I started telling people about it, opportunities started coming to me, where people said, “Hey, I know so and so is looking for a speaker for this thing. Would you be interested in that?” And so, I feel like the more open I was about my dreams and my goals, the more willing other people were to tell me and to help me get there. And then it was like a team effort to do the thing that I was always afraid of, and it made it feel a lot less scary. So, yeah.
DAVID:
That’s awesome. I think you’ve got a really great tip there about talking about what you want, because whether you’ve been coding for three months or 30 years, there’s always another level that you want to get to. And so, if you stand up and you say, “I’m here and I want to get there,” that’s going to resonate with everybody at every experience level in the audience.
SARON:
Yes, exactly. And that’s the interesting thing, is before programming I was in the startup world and the goal was always to prove to everyone else that you already had everything figured out. You’re always pitching; you’re always selling, always making yourself bigger than what you are. And you’re not supposed to tell people what you’re looking for, because then it means you don’t already have it. And so, I had to change my mindset to be, it’s okay to admit that you don’t understand these things, and it’s okay to talk about your failures because that shows that at least you’re trying and you’re improving and you’re getting there. And I found that that has been just way more helpful in both growing as a person, growing as a programmer, but also just meeting new people and connecting with people when I’m more honest about what I know, what I don’t know, and what I want to know.
DAVID:
Awesome.
AVDI:
I will say that I’ve found it’s been easier to make admissions like that, it’s been easier to make admissions about what I don’t know and to say things like, “Gosh, I’m a terrible programmer,” I
don’t know, as I’ve gotten older, as I’ve gotten I guess more successful. And that’s one of those great ironies I think of life is that it’s easier to admit you don’t know things when a lot of people think that you know things. [Laughter]
SARON:
Nice.
DAVID:
Yes.
AVDI:
I guess the only reason I’m noting this is that I’m just noting it because it’s tough when you’re newer. It felt like there were, when I was newer to the game, when I didn’t feel like I proved myself to people, I felt so much more pressure to appear knowledgeable.
SARON:
Yeah, one thing that I found that helps me out in that too is talking about all the things that I’ve tried and all the ways that they haven’t worked. Because then, it’s me showing that I don’t necessarily know the right way, but I understand the process and I’ve tried a bunch of other things. And when I started doing that, I found that people really appreciate it and people really appreciate the effort and the curiosity, and they forgive, sometimes don’t even notice that I don’t actually have the right answer. I just have ten wrong answers. And those have led to some really interesting conversations. And before you know it, a lot of times we’re troubleshooting together, we’re figuring out together. And becomes a really interesting conversation. People are a lot nicer and more understanding than I think I thought that they would be [chuckles] at the beginning of all this.
AVDI:
That’s an amazing point. When you approach it from that direction, you’re allying people with you rather than confronting them, I guess.
DAVID:
Yeah.
SARON:
Yes, exactly.
AVDI:
I want to talk about where ideas come from, for talks. Saron, when was the last time that an idea popped into your head. You were just suddenly, “Hey, I can do a talk about that.”
SARON:
I don’t know if that’s ever happened.
AVDI:
Okay.
SARON:
I think that there are things that, so I guess the drawing one was something that I’ve wanted to do. And I wanted to do something on drawing and cartooning because I’ve gotten just a lot of really positive feedback from it. And then the person who invited me actually said, “Can you talk about drawing?” I was like, “Great. I’ve wanted to do that.” And there are other topics that I think are just interesting to me, but I don’t know that they’d be interesting to other people. and I guess I feel like if it’s not, if I don’t know or have proof that it would be interesting to other people, then I don’t think I’d consider it for a talk, which is probably not good.
AVDI:
So, here’s a question. What do you find yourself getting really animatedly engaged in conversation about?
SARON:
I think the two things that I get really excited about are process and the big picture of a product. And so, I didn’t realize how obsessed I was over process until we’re building out this app and we’re thinking through how did we do that and how did we do it well and not so well, and what our goals and what are our metrics, and understanding just how to do things, and that the how is just as important, if not more, than the what. And so, I get really, really excited about hearing other people’s fork flows and how they make decisions, and what they did right and how they know that it was right.
And the how I think is just absolutely fascinating. I think the other thing is just the product as a whole. I did not appreciate how complex the whole product development cycle was until I did it. And there are just so many pieces and ideas, and so many people’s opinions you have to think about. And there’s just so much. And I’m really, really interested in learning more about, and hearing people talk about how they got from this idea in my head to this working product, and how did they know that was going to be the right product, if that makes sense.
AVDI:
So, my next question for you is when can we expect a talk on that?
SARON:
[Chuckles] Oh man, you totally tricked me. [Laughter]
SARON:
That was good. That was very good. I’m going to do that to other people from now on.
AVDI:
[Laughs]
SARON:
That’s a great checkmate.
AVDI:
I’m dead serious. That’s where it comes from, right? It’s that thing that you find yourself talking about, and getting really excited about.
SARON:
Yeah, yeah. I guess you’re right. I guess it just comes back to a lot of, the two things that I’ve talked about. I have a lot more questions about them than I do have answers. And I still have this feeling that if you’re speaking, you should have answers.
DAVID:
I disagree so much. If you’re excited about something and you are full of questions about it, you should totally give a talk about it, because in the three months coming up to that conference, you’re going to have to find out answers to a bunch of that stuff. And you’re going to end up with qquestions that you haven’t answered. And that excites me. I want to hear that talk. I totally do.
CHUCK:
The other thing that I want to throw on top of this is that even if you don’t get all the answers before you give the talk, what’s going to happen is you’re going to go in, you’re to give the talk. People are going to come up afterward and talk to you about it. You’re going to wind up going to lunch with some of them, and you are going to have this just awesome conversation where you really do explore the edges of what you talked about. And so, if it’s something that you’re passionate about, one of the best ways to learn about it like Dave said, is to give the talk about it because you’re explore it as you lead up to it. And then you’ll have those conversations afterward.
AVDI:
It also gives you a great excuse to pick the brains of people that you might otherwise have felt intimidated about talking to.
DAVID:
Yeah.
CHUCK:
Yes.
AVDI:
If you’re preparing for a talk like that, and you’re like, “Wow. I don’t know anything about this topic. It’s easier than I think to write an email to someone that you really respect and say, “Look, here’s who I am. I’m supposed to be doing this talk on this topic, and I would really love to have your answers to these questions. And I’ve done that and gotten some amazing feedback from people in the past, for talks that I’ve done. And it really helped.
DAVID:
There’s a specific brain back that I’d like to throw out here as well, which is I’ll go to lunch after a talk. And yeah, these great conversations come up and somebody will start, they start mining you for information right? Because they’ve got all these questions left over now that you’ve finished your talk. And there’s this moment that happens to me a lot in that conversation, that lunch discussion, where somebody will ask a question or they’ll make a comment. And I’ll go, “Oh. I totally should have said that in my talk.”
SARON:
Yeah. [Chuckles]
DAVID:
And I have this huge negative emotional attachment to it. And finally, I just flipped the switch in my brain and said, that is not a negative thing. That is a huge win. It doesn’t mean I failed in the talk. It means I succeeded in getting this [person so engaged that they came to me afterwards and we talked about it. and they gave me this power up. and so, I got this huge personal direct benefit from having done my best on the talk. And they got a benefit from it because they came up with the idea. And yeah, okay, I still wish I had said that in my talk, but at the same time that even happening is representative of having given a good talk that engaged and brought people, got them thinking, and they’re still thinking. And now they’re having ideas, and that’s awesome.
SARON:
Yeah.
AVDI:
Coincidentally, this is one of the greatest justifications I know of for doing the same like a similar talk several times. There are definitely mixed feelings on that. But one of the pros is you stir the pot the first time you do it and then you get all this amazing feedback. And then you get to do a really great talk the next time.
SARON:
Sure. But yeah, I guess you’re right. Well, now this is recorded. I guess I have two talks to prepare for. [Laughter]
DAVID:
Excellent. We win.
SARON:
[Laughs]
CHUCK:
Yeah. RubyConf call for proposals is open until the end of August.
SARON:
True, true. Alright. I’ll let you know how that goes.
AVDI:
Another approach that you can take as a speaker is that you’re telling stories for people that maybe aren’t interested in telling their own stories. So, if you’ve had some really interesting discussions about the product process, chances are there’s someone or there are a few someones that you know that you think have some really great insights about that at the company that you work at.
And they’ve said some things that really spark your thinking about it and you’re like, “Wow, that’s really cool.” And if that’s a person that for whatever reason doesn’t get out and do a lot of speaking, somebody needs to be the journalist or whatever to bring that wisdom to the world.
SARON:
Yeah. That’s a really good way to think about it.
AVDI:
Because there are people that just aren’t interested. They’re interested in the work, but they’re not interested in talking about it as much, or at least not in a public context.
SARON:
Yup.
AVDI:
What kind of talks do you like? What was the last talk that you went to that was like, “Wow, that’s really cool”?
SARON: Hmm.
CHUCK:
The right answer was, “It was Avdi’s talk.” [Laughter]
SARON:
Yes. I guess one that I really liked, and I connected with specifically was, oh my god, we had her on the show and I totally am blanking on her name. The woman that we had with Katrina, the talk that she gave about apprenticeships was definitely one of my favorite ones. Because I felt like it tackled, it talked about a very different, it had a very different angle than I would have expected for RailsConf where it was about us as almost like an economy, like a workforce, versus just people who code and build thing on a more individual level.
And I really like the way it was approached. It was very, very holistic and very high level and also ore of a talk about the society and how we work and how we think about things and how we’re going to grow or not grow, just more holistically than I would have expected out of a tech talk. And so, I appreciated just the different angle. I appreciated the different perspective. And obviously, because that was my first RailsConf and because I’m more new to this, I appreciated the concerns that I brought up about the pipeline and about bringing new people into this. Yes, that one ‘Artisans and Apprentices’, yeah.
CHUCK:
I also wanted you to say the DHH keynote at RailsConf.
SARON:
[Chuckles] I did like the DHH keynote. I felt very poetic after that. And I really like being a software writer. That was nice.
DAVID:
I think the best talk I’ve seen that I, the most enjoyable talk that immediately comes to mind was Eileen Uchitelle spoke about understanding Active Record under the hood. And she was coming at it from, I didn’t really understand how Active Record worked and I was doing stuff and it was taking forever. So, I got under the hood of Active Record and oh my gosh, it was all these horrible things that it was doing. And here are the high level things that you can do to make it work better. And here’s now what happens under the hood is very slick and very fast.
And it was a technical talk. She picked a module in Rails to talk about. But the amount of technical detail spanned the entire ladder from really tight corners about doing bulk inserts and left outer joins and that kind of stuff, all the way up to high level architectural concerns with the way that you write your code when you’re up in high level Ruby and everything’s magical and you’re just saying, telling your objects to save themselves. And I really enjoyed that. As much as I’d like to give brain hack-y soft aspect-y talks, the best talk I think I’ve seen recently was a technical one. So, there you go.
CHUCK:
Yeah. I really like some of the, I love both. One of the ones that really come to mind that made a huge impact on me was at Mountain West JavaScript Conference. Ryan Florence gave a talk and he basically hacked the style sheets for a website. I don’t remember which one it was. But he hacked it so that everything was white. None of the images showed up. All of the text was white. All of the background was white and everything. And then he turned on a screen reader and he said, “Okay. This is how a blind person interacts with this website.”
And so, it’s like saying random words [chuckles] and stuff like that. And you’re just sitting there going, “Yeah. How would anybody reasonably use the site in this way?” And so, then he talked about some of the details in how you make a website accessible. And we had, was it Brian Hogan, come talk to us. This was a long time ago that we had him on talking about accessibility. And you don’t think about it, because I can see the webpage. And so, I know where to click. And just the overwhelming sense of empathy for somebody who has to deal with this all the time really struck me.
And then there was another talk that was also just fun, but technical, was Jamison Dance had a bunch of robotic stuff that he showed off. And it’s just fun. It’s just whatever. And so, I think there are all kinds. But those are the two that come to mind from the last conference that I remember going to and really having talks impact me one way or another.
SARON:
Avdi, I think it’s your turn.
AVDI:
I saw a lot of great talks at the last conference I went to, which is Midwest.io and it’s really hard to pick one. I saw, there was a great talk on Haskell. There was, the last two talks both stuck with me and I guess that could partly be because they were the last two talks. But Jessica Kerr who we’ve had on had a great talk on property-based testing. And then right after that, Hoop Somuah had a fantastic talk on actors in Windows Azure using the project Orleans framework, which was a really interesting take on taking the actor model to another level.
And so, both of those were technical in nature, and I guess some of the things that stood out about them I guess, well, there’s the fact that they were both from software ecosystems I don’t spend a lot of time in. And that’s one of the reasons I love these polyglot conferences and I hope that there are more and more of them. The property testing is something that goes on a lot more in Scala. And of course the Windows Azure stuff is all a different ecosystem than I usually work in.
And there was that and there was also I think a very strong lessons learned component to those, which is always interesting to not just hear about technology from someone, but hear about how they used it, and what worked and what didn’t, and what they learned from that. I love those lessons learned talks.
CHUCK:
Yeah, kind of an experience report.
AVDI:
Yeah, yeah. For a long time, I ranted about the just dry here’s the technology and here’s how to use it talks. But if you take that and then you add, here’s how we used it to solve a problem, and here are the parts that worked and here are the parts that didn’t work despite the hype, those really catch my attention.
SARON:
I love those. Actually, that reminded me. There’s another one at RailsConf that I really, really liked. And it was the Upworthy engineers talking about how they developed the app all the way from the beginning, how it started. I think it started as a Padrino app actually. And then how they moved it to a MonoRail app and how they split it off. And I love that exactly for that reason, because it told a story, it gave a real life example with a product that I’ve heard of and I knew about, and then talked about all the pros and cons. And it was just very, it was a very human talk. It was really nice to hear both the experience, but also knowing that even people with a lot of experience still made a lot of not great decisions and then learned from them. And just seeing that process and how they worked and developed and grew as a team was really, really fascinating.
CHUCK:
Awesome. Well, we’re getting toward the edge of the time that we have for this. Are there any other things that we should talk about before we get into the picks?
SARON:
I actually had one question that I wanted to ask everybody, and that was, do you guys have a prespeaker checklist of any sort? Any kind of things that you make sure to do before you actually take the mic?
CHUCK:
That’s a good question. Usually what I do is I’ll find out what room I’m speaking in and I will find a time where I go into that room before I have to speak. So, I’ll show up to the conference early, or during lunch or something, and I’ll hook my equipment up to the speaking equipment.
AVDI:
Yes.
CHUCK:
They usually have it in the speaker room and it’s usually the same. But I don’t always trust that. So, I just go hook it up in the room that I’m in and just make sure that everything works.
DAVID:
Yeah. If you don’t do this, you’ll spend a minute fiddling with screen resolutions. And then when you start up Keynote or PowerPoint, your notes will be on the projector and your talk will be on your laptop.
SARON:
[Chuckles] Nice.
CHUCK:
Yeah.
AVDI:
Yeah, that’s a great point.
CHUCK:
The other thing I do is I go rate the water, whatever it is. So, if they have a jug with cups or if they have water bottles, sometimes I’ll actually just go to the little shop in the convention center and just buy a couple of bottles of water, and just make sure that they’re up there with me. Because sometimes, my throat gets dry or whatever. And so, it’s nice to have something there that’s available to just clear my throat and give me a second to think. And it is a tactic that I use sometimes if I need a second to think about exactly how I want to frame something. I’ll grab the water and just sip it for a second.
SARON:
You know, I was really surprised at how thirsty I get when I speak. I was not ready for that. I can go through multiple bottles of water in a single talk. [Chuckles] It’s crazy.
DAVID:
Yeah.
CHUCK:
Yeah. And the other thing is I like to practice my talks. I don’t always have time, but I like to practice them a few times at least. If I have more lead time, then I’ll practice them in the time loop going up to the conference. And that helps settle my nerves because I’ve done it a few times and I know how it’s going to go.
DAVID:
Yeah. I do this weird compass needle thing. It’s the only way I can describe it as the metaphor in my mind, where the time and place of my talk is due north. And until I give my talk, that’s the only thing I can think about. And so, I’ll look and I’ll see, am I speaking before lunch, after lunch, late in the day, earlier in the day. And I’ll consider my audience’s probable frame of mind, state of exhaustion going into the talk. But I’ll also give myself time to go back and prepare extra, a little bit. And I’ve actually gone to conference presenters who had me scheduled to speak at the end of the second day. And I told them upfront, I am not going to be able to think about anything except my talk until I had given it. I would love to come to this conference and I will sit in all these sessions and just think about my talk instead of what I’m hearing. Is there any way I can move my talk earlier? [Chuckles] Could I speak on the first day? And they usually tell me no, because I’m not special.
AVDI: [Chuckles]
DAVID:
And that’s okay. But one conference did move me. They’re like, “Yeah, you know what? We’ll have you speak right before lunch on the first day.” And I’m like, “Oh, thank you.” This way, I get to attend the other three quarters of the conference.
SARON:
Yeah.
DAVID:
It also helps at 4 in the morning, it also helps at 4 in the morning the day that you have to speak, to remind yourself to go to bed if you’re thinking about speaking in five hours.
SARON:
Yup.
AVDI:
I will say that that gets easier, at least in my experience. Yeah, absolutely the earlier I go back in my speaking experience, the harder it was to think about anything other than the talk up until the talk. And then I could finally relax after that.
DAVID:
Yeah.
AVDI:
It’s still true that there’s a lead up period and a coast period for me. Those periods are centered around giving the talk. But I do find that the more I do it, the easier I find it to enjoy the reset of the conference before I talk. So, it does get better.
DAVID:
It also is easier for me the more I have rehearsed my talk. The more comfortable I am with my talk, the less I’m fretting about it before I go into it.
AVDI:
Yeah, yeah. I absolutely make an effort to practice it, usually. Obviously, I’ll be practicing it in the weeks before the talk. But also, like the last talk I did, I attended the opening keynote. It was an afternoon talk and I attended the opening keynote. And then I blew off the rest of the morning and went back to my room and I went through the whole talk twice. And at that point, I was feeling pretty good about it. And then I came back and went through the whole afternoon and went to other people’s talks. And I like to practice. But then there’s also a point where I think it’s important to just cut it off. I feel like practicing right up to the moment can actually do more harm than good. There’s a point where I have to just stop and say, “Okay. Now it’s just going to sit there in the back of my mind and stew for a little while.”
DAVID:
Yeah.
AVDI:
And I don’t want to think about it anymore. I could talk about a lot of little preparatory things. And actually, one thing that I’ll sometimes do if I’m feeling particularly nervous or if there’s more setup for this talk than usual is I will actually write myself a little note on a 3 x 5 card with a checklist on it.
DAVID:
Nice.
AVDI:
Just to make sure that I don’t freak myself out by missing something. So, I’ll just put that down on the podium as soon as I get up there. And it’s like, “Okay, let’s see. Next on my checklist is take off my speaker badge.” [Chuckles]
AVDI:
So, it doesn’t interfere with the mic or look stupid on the video.
CHUCK:
[Laughs]
AVDI:
Next on my checklist is turn off the physical wireless connection button on my laptop so it is incapable of receiving signals from outside, because I find that most of the unexpected interruptions that computers generate, not all but most of them, come from some sort of interaction with the outside world.
CHUCK:
Dare I admit that I’ve taken advantage of that when someone else was giving a talk? [Laughter]
DAVID:
I will confess to sending at Avdi pooping tweets, not at Avdi, but at the speaker, just to see if they’ve got Twitter on. [Laughter]
AVDI:
Yeah. I usually, I try to make sure that notifications are off and stuff like that. But it’s amazing how many interruptions you can avoid just by disabling your computer’s connection to all of the things. But yeah, you know what has been helping me a lot? I do still get nervous sometimes before talks. Not as much as I used to, but I still do, depending on the talk, especially if it’s a brand new talk. And I’ve tried doing stuff like meditating before talks. And it can help. But it’s always a little difficult. The more nervous you are, the harder it is to focus on not focusing.
So, lately I’ve been trying to get involved in a conversation right before I go up. It seems like the ideal situation is I get engaged in a conversation just before it’s time to talk. People are milling around, filing into the room, and I get engaged in a conversation right before I’m supposed to go on stage. And so, it actually comes as a surprise when somebody comes up to me and says, “You need to get up there now.” And that’s ideal.
SARON:
[Chuckles]
AVDI:
Because I’m not freaking out and overthinking about the talk in the moments before I go up on stage. I’m just chatting with someone.
DAVID:
Yeah.
AVDI:
And so, that happened accidentally a few times. And now I’ve started to actively seek it out. I’ve started to look around for someone to be like, “Hey, what’s going on?” If I’m distracted before the talk, I’ll be more relaxed going into it.
SARON:
And you get to meet somebody new.
AVDI:
Yeah.
CHUCK:
Awesome. Alright, let’s do us some picks. Saron, do you want to go first?
SARON:
Sure. I have two. One is a book that I finished reading I think a couple of weeks ago called ‘Think Like a Freak’. It is the third book in the Freakonomics series. And it’s really, really, really good. And I really like it. And I think programmers particularly will appreciate it. So, the idea is the Freakonomics podcast has been around for a while. And they explore how things work and what the economics and the problems and solutions are for very random interesting topics. And so, their listeners emailed them and said, “Could you find out more about this problem I’m having, and this problem I’m having?”
And so, instead of doing another Freakonomics book about finding different correlations between different topics, instead they wrote a whole book on how you can problem solve the Freakonomics way. And they call it thinking like a freak. And it’s really, really interesting. They have stories about this hot dog eating contestant who the average hot dogs that can be eaten in I don’t know how many minutes used to be 25. And just by thinking through the problem differently, he broke it and ate 52 hot dogs or something insane like that.
DAVID:
Wow.
SARON:
Yeah. And it sounds gross, but also very awesome. And they talk about a lot of just different records that were broken and things that were just thought a very different way. And it really talks about how to break down a problem, but for societal issues and problems that we see. So, it was really, really good and really entertaining.
The second one is a YouTube video that I saw yesterday. It’s old but I think it’s awesome and I just died laughing. And it’s called ‘The Website Is Down’, Sales Guy versus Web Dude.
DAVID:
Yes. [Chuckles]
AVDI:
Oh. [Laughs]
DAVID:
Yes.
SARON:
[Laughs]
CHUCK:
Now I have to go watch it. It sounds like I’m the only one that hasn’t seen it.
SARON:
[Laughs]
DAVID:
I sent you that email. Uh, no you didn’t. [Chuckles]
SARON:
[Chuckles] Yeah. Oh thank god. It was great. I don’t really want to say more on it.
DAVID:
Yes.
SARON:
Because I just want you all to watch it.
DAVID:
It’s awesome.
SARON:
It’s just beautiful, just beautiful. I thought it was real. I really thought it was real. And then it had credits and then it wasn’t. But it was great. So, if you’re a developer you’ll appreciate this.
CHUCK:
Awesome. Avdi, what are your picks?
AVDI:
You know, I thought I had more picks this week. But you know what? I’m just going to pick some random stuff. My boots are, I don’t think I’ve picked these before. I finally got myself a pair of Doc Martens. I’ve had a lot of combat boots over the years, but for some reason I never got a pair of Docs. And I have to say, I’ve been very, very pleased with them. They are startlingly comfortable for boots. They’re actually my preferred boots for walking around town when I go to conferences. And they’re also pretty decent to stand in when I’m at my standing desk. So, yeah they’re not kidding about the air sole or whatever it is on these things. They’re nice, comfortable boots.
You know what? I haven’t done a beer pick for a while. You know what’s a good beer? Burton Baton by Dogfish Head Brewing company. That one probably has fairly decent distribution so a lot of people that hear this might be able to find it. It’s an oak aged imperial IPA. And it’s quite good.
And I think that will do it for now. I don’t feel like doing any tech picks.
CHUCK:
Alright. David, what are your picks?
DAVID:
Oh, gosh. I got a bunch. But I’ll just do two or three. I think the first one, Keep Ruby Weird. Their CFP closes, if you’re listening to this on the day we release it, their CFP closes tomorrow. So, their CFP closes on July 31st. They have already sold out their first round of tickets. They are going to sell another round. So, there’s still a chance you can get to this conference. But if you want to go to Austin and talk about the weirdest thing you’ve done in Ruby, the safest way to ensure that you can go is to get your talk accepted. So, given that that’s what we’ve been talking about today, submit a proposal to Keep Ruby Weird. They’re @KeepRubyWeird on Twitter and KeepRubyWeird.com I think, on the internet.
My other pick is, I’ll do two really quick, one frivolous and one kind of awesome. Simon Tatham’s puzzle collection. This is available on pretty much all platforms. I’ll put a link in the show notes. But you can search for just Simon Tatham, T-A-T-H-A-M, in the app store or in Google Play Market. And it will come up. It’s on iPad. It’s on iPhone, et cetera. And it’s just 34 different puzzle games that you can play. And some of them, I’ve never seen anywhere else.
My favorites are galaxies and undead, which are galaxies are you just try to draw shapes that are rotationally symmetric on a checker board. And the game just tells you where the centers are and you have to use up all the space. And undead is like the old lasers puzzles where you get numbers telling you, the beam goes in here and it comes out here. Well, they give you, if you look into the box here, your vision will bounce off of some mirrors. It will come out here. And you see this many monsters. And you have to follow the rule of if you look right at a vampire, you can see them. But if you look at him in a mirror, you can’t, so the number changes. If you look right at a ghost you can’t see it, but if you look at it through a mirror, you can. And so, it’s fun. And there are 35 other games in the set, everything from minesweeper up to Sudoku and that sort of thing.
And then a useful really cool thing, IPViking is a honeypot software that a company called Norse has spread this out into every major internet exchange around the world, pretty much except for inside China I think. And what happens is when people launch an attack and they start port scanning servers, they’ll hit Comcast servers, or GoDaddy servers, or whatever. But they’ll also end up hitting one of these honeypot servers. And IPViking logs it. And so, if you get on the internet and go to map.ipviking.com, you can see a real-time animated map of malware and DDOS attacks going on, on the internet right now. It’s like DEFCON 5 for the internet in live real-time. It’s really, really cool.
CHUCK:
Alright. I’ve got a couple of picks. The first one is a ‘Gee, whiz’ pick. I don’t have one of these to disclaim to the people out there who don’t like me picking things that I haven’t tried. But it looks cool and I’m too broke to buy one. It’s a 105-inch Samsung UHD TV. It will be available for preorder soon. It’s a 105-inch TV. It costs $120,000. So, if you have $120,000 burning a hole in your pocket…
[Laughter]
CHUCK:
I know that Avdi is world-famous so he might wind up getting one of these.
AVDI:
[Laughs]
CHUCK:
But for the rest of us, we can dream, right? Anyway, it’s got a curved screen. I don’t think I want one in my living room just because I think I’d have to raise the ceiling height. But yeah, I thought it was interesting. [Chuckles] So anyway.
AVDI:
Does anybody remember the Weird Al song, ‘Frank’s 2000 inch TV’?
DAVID:
Yes.
CHUCK:
I will have to put a link to that in the show notes as well. So, the other picks I have are both Chrome plugins. The first one is ModHeader. And what it does is it allows you to change the headers that it sends to the server. I’ve got an app that I’ve written that provides RSS feeds. In fact, if you’re listening to this episode, you’re either subscribed to a feed that is built by that tool, or you’re subscribed to the feed that’s hosted by that tool. And yeah, so I had to modify the headers so that I could pretend to be different agents just to make sure that they were all getting RSS instead of HTML. Pretty handy.
The other one is Pretty JSON. And what that does is if you’re getting a JSON response back, then it pretties it up. So, instead of getting a wall of text, you actually get, it basically just adds newlines and tabs so that you can see what’s nested in what and what’s under which key. And if you have HTML content in any of those screens, it actually renders that as well. One issue I have found with it is that if you are rendering a JSON response with something like Rails and you want to get the development mode error screen, it will try and interpret it as JSON and it will complain at you. So, you have to open it in incognito mode in Chrome, which turns off all of your plugins and then you can see it. So, just a heads up there. But otherwise, it’s pretty handy and makes it so you can actually read your JSON responses. Those are my picks.
Refactoring:
Ruby Edition’. So, go get the book and read it. And that’s it. We’ll catch you all next week.
DAVID:
And then come up with a conference talk.
CHUCK:
Yes.
[Chuckles]
[A special thanks to Honeybadger.io for sponsoring Ruby Rogues. They do exception monitoring, uptime, and performance metrics and are an active part of the Ruby community.]
[Hosting and bandwidth provided by the Blue Box Group. Check them out at Bluebox.net.]
[Bandwidth for this segment is provided by CacheFly, the world’s fastest CDN. Deliver your content fast with CacheFly. Visit CacheFly.com to learn more.]
[Would you like to join a conversation with the Rogues and their guests? Want to support the show? We have a forum that allows you to join the conversation and support the show at the same time. You can sign up at RubyRogues.com/Parley.]