PETER:
But I think perhaps the older you get, when you start having kids and stuff like that, the things are sort of happening to me, over the last couple of years, you start thinking, is it really important that I go online and really finish off this argument on the Internet? Really, it's not going to have any effect of what I’m doing in like, a week. Let alone a year.
AVDI:
But Peter but someone is wrong on the Internet!
PETER:
Exactly.
CHUCK:
Where? Where? This podcast is sponsored by New Relic. To track and optimize your application performance go to rubyrogues.com/new relic.
CHUCK:
Hey everybody and welcome to episode 42 of the Ruby Rogues podcast. This week, we have a special returning guess rogue, that's Peter Cooper!
PETER:
Hello!
CHUCK:
So if you’re not familiar with Peter, we’ll have him introduce himself.
PETER:
Yeah I was on, I think 10 or so episodes and I have fall off because of my training that I was doing. But if you are in the Ruby community, you may know me. I'm the guy that ran Ruby Inside for a
long period of time and now I seem to have semi-abandoned it unfortunately. But I now run Ruby Weekly, Weekly Newsletter and I’m on the Ruby show podcast with Jason Seifer and few other things like RubyFlow which is sort of community news that anyone post to. So, all over the place.
CHUCK:
Yup we also have Avdi Grimm.
AVDI:
Hello, Hello!
CHUCK:
We also have James Edward Gray.
JAMES:
I think I may be the high energy panellist today. Everybody else is asleep.
CHUCK:
(I am.) I'm Charles Max Wood from teachmetocode.com and really quickly, I just wanna mention (because I have people coming to me and going, you do other podcast? I didn’t know that!) So real quickly I’m going to let you know what's out there. There is JavaScript Jabber, where talk about JavaScript, there is Ruby Freelancers, where we talk about freelancing and Ruby. I also do teachmetocode.com. I have a podcast there and a series of screencast. I haven’t done those in a while but I'm going to put them back up so they are on the docket. So keep an eye out for new stuff there Anyway so we're talking about Peter stuff today.
PETER:
That sounds so big headed. James came to me and he said because I’d be back in the show, I thought it was for some more kind of like general, like the concept of media and selling screencast and all that type of thing in the Ruby space. And then asked you yesterday that you were like, oh yeah, the show is about you. I'm like, what?
JAMES:
So it’s like, it’s all about you; we just wanna know what makes you tick.
PETER:
Because we have so many cool people in the space like Ryan Bates is now doing the RailsCasts Pro and Geoffrey Grosenbach been an inspiration to all of us in some respect, I’m sure. So there are many things I can tie in to this at least so, it won’t be just all about me.
JAMES:
Very true. But you are the one I can pressure in to coming on to the show. I just had some blackmail material and so it works for me. So Peter tells us, like you mentioned all the different things you are doing. I mean, I don't know if people actually realize, so your newsletters have over 50,000 subscribers now is that right?
PETER:
Yeah, just not the Ruby one, the Ruby one is about 11,000 so yeah, in total.
JAMES:
So you have like HTML JavaScript and then the new one that's Status Code for just like developers right?
PETER:
Programming generally, algorithms, that kind of stuff.
JAMES:
So you build this newsletter empire and then you also do the Rails Reloaded classes, right?
PETER:
That is Ruby Reloaded, yes.
JAMES:
Ruby Reloaded that right. Tell us what that is about.
PETER:
Ruby Reloaded kind of came off the back of seeing stuff from people like Amy Hoy and Thomas Fuchs, JavaScript Performance Master class something along those lines. So they’ve got a class, been very popular they do it all over the web and it come like a webinar style and then they charge something like $500. You go on 4 hours each day, each day for two days and everyone seems to be quite happy with it and they always selling them out so that's cool. But then a saw that MarcAndré Cournoyer in Montréal, he started to put together some similar courses on Rails, there is one called Owning Rails (owningrails.com) and a very similar format, digs in to the internal of rails. How Rails work, how to build your mini version of Rails that type of thing. You know, just inspiration from seeing those guys do that stuff because I've done training in person before. Kind of didn’t really like the travelling side of it. I though hang on, I can just steal that concept as it were and just take it to a totally different space, which in my case, the space I knew the best was, kind of like, Ruby Syntax, Ruby the Best Practices, how to build a library, all that sort of side of things. So that's where it all kicked off and so I think I already had Ruby Weekly going quite well by that point. So, I used Ruby weekly as a kind of a springboard to promote it and sold the first one out in about a week, which actually is quite bad compared to Mark, who sold his Rails course out I think in 24 hours in a very similar way. I actually post it in my newsletter but mine is a little bit slower to sell. So maybe my conversion page wasn’t quite so good. But either way, it sold out and I run four of them now, so I'm doing them every month, it’s kind of almost working out that. It’s like gaps in the month or so here and there.
JAMES:
So the newsletters and the class and stuff and then you also did that Ruby 1.9 video not too long ago, which was the massive thing. I actually mentioned on the show that covered every insane detail of Ruby 1.9.
PETER:
Yeah that was very epic. The reason for that and this happens with a lot of my projects, is I promise something within the project, so those part of Ruby Reloaded, I promised to do an introduction to Ruby 1.9 and some of Ruby 1.9 specifics. But because the course is only eight hours long, and I don't sit practicing making sure that the time is absolutely perfect. I just know my material and go for it. I've kind of overpromised and I said well, okay, this sort of stuff will actually work better as a recorded video you can go back to anyway. So, what I will do is I will put together a video going deep dive into 1.9 and I did that for the people on the course, but then I thought why not make it good enough that I can sell in independently. So there are always by-products that are beginning to come off the back of the Ruby Reloaded course that were originally meant to be a part of the live sessions, but I can actually put into separate things now. So that was one of them. It was my first ever screencast that I’ve actually sold and then there was some kind of little free ones on YouTube and very scrappy type of things. That was the first one I decided to sell. And again I was inspired by people like Geoffrey Grosenbach and I think Rob Conery does the TekPub stuff and I just know a lot of people in this space. I just decided to sell it, so I sell it with getdpd (I can’t remember what the actual company name is) but it’s a site I think Avdi uses out for selling on of his eBooks as well. Set up with my PayPal account, set it all out, promote it on the newsletter on Ruby Inside, a couple of other places and I think I was in late September, it's almost sold 1000 copies now. For like four months, something like that. It’s done really, really well. So that was a very good experiment.
CHUCK:
One question I have about Ruby Reloaded is, it seems like you have a lot of things you can talk about, so how do you decide what goes into the course and what doesn’t?
PETER:
What I’ve done over the time is like I run questionnaires to the people who were taking part. Saying, what are the things that you currently know? What are the things you really want to learn?
There seems to be this general topics coming out. So people often go for buzzwords and I have to be careful about how I treat them. For example a lot of people say, I wanna learn metaprogramming. Now I know we’ve had that discussion on Ruby Rogues before I wasn't on that episode but you guys took about 10 minutes just to nail down the definition of meta-programming in Ruby.
CHUCK:
That was Josh's fault.
JAMES:
Yeah we blame Josh because he's not here.
PETER:
Exactly. So you can see how it's hard to take some of those things that people would give you these buzzwords and phrases and actually turn that into a course. But it did seem to be these common themes coming out, areas that people didn't know about, doing a DSL, best practices of building a library from scratch, things among those lines. Some of the things that actually started to come out now are things like threading, concurrency generally and I haven't actually put that in to the course yet, that's one of the things that people seem to be saying a lot in last month or two. I'd probably start to bring that in as well. So it’s really just seeing what people react to on the course, because certain bits some people find a bit boring, some people find other parts really exciting. So I try and steer it towards the bits that they find interesting, while covering enough of the underlying theory to make it worthwhile and not just a big kind of laugh right from start to end.
CHUCK:
(Right.)
JAMES:
So does Ruby Reloaded kind of evolve every time you give it to cover some different topics?
PETER:
Yes. Actually every single one has been quite different to the others and it actually works quite well for people who signed up early on, because I record the entire eight hours and share it in this forum that only members can get into. So everyone can get access to recordings of all the different runs. I don’t they don't just limit it to each person. All of the bonuses and things that come along as well, they go to everyone as well, which is why the keep sending Avdi amounts of money because I include his excellent, Exceptional Ruby as part of the course. So anytime I get new people coming into the course, because I can access his book, I have to send him some money. But it’s a very, very good for money and everyone is kind of raved about it.
AVDI:
Many thanks.
JAMES:
I told you we have blackmail material on him.
PETER:
Yeah. I should probably get him to sign up for your e-mail as well.
JAMES:
Ruby’s in the Rough? Yeah.
PETER:
Yeah, I mean this shows you how so many people now are getting involved in this media side of Ruby, not just necessarily in news. I guess news is where I'm focused but then of course I started to bring in these other projects and products out as well like Ruby Reloaded and the screencast and stuff like that, whereas lot of people go directly to the products. Avdi’s got Exceptional Ruby, Chuck’s got the podcast, and James got the e-mail subscription. So many people involve it some way or another now. It's a very interesting space to be and I don't see this quite so much with the other programming languages I'm familiar with; turns to be a bigger divide between the producers and the doers, whereas in Ruby, everyone's is almost trying to have a go at producing.
JAMES:
Yes. That one of the reasons I asked you to come on and talk to us about this is, I feel like, there's a lot of people in the Ruby community that want to get in into the production side and stuff. So I thought we might ask you a little bit about, how does this get started? Were you doing some Rails client work like the rest of us and then you just kind of pick this up from the side or tell us that worked?
PETER:
I guess I've just always had a big interest in media and publishing generally even as a kid. Like when I learn something in Math or whatever I would write my own mini textbook re-explaining all the concepts. This was something I never even thought about. It was weird. But then obviously as I
grow up, I right kind of realized that was weird thing to do. But I have always been interested producing papers. I started off with the school paper and all these different things. So I guess as much as I do love coding and software development, I guess publishing was kind of like my first love in way. It seems to be kind of inbuilt for me to try and publish stuff. So that's where things like Ruby inside came from, for example. But then, I started to realize that just publishing stuff like news and doing things the old web 1.0 style of just putting advertising on stuff. It's quite hard to scale that, specially in the niche like Ruby, for example where, compared to many other topics, there's a limited number of people and it's not like running a big blog like TechCrunch or even Smashing Magazine or something like that, where you can meet tens of thousands of dollars a month, just for running ads on your site. It's never going to happen in the Ruby space. So I realized that I needed to branch out. I needed to get more into the products side of things, more into the-because the old-school publishing side of things, where you literally have a single thing that you produce and then you sell that for money rather than just being kind of modern online publisher where you run ads and stuff like that. That's why I went in that direction. It was entirely guided as a business decision really. I was just happy to publish stuff. But in terms of actually charging money for it and productizing it, that was something I just had to do because otherwise, the bottom will fallen out the whole advertising thing, which seems to have happened, other in the email where it's actually growing.
JAMES:
So yeah your newsletters, they are free and they have always been free. But now you are using them as like a vehicle. You use them to build your audience basically. And now you used that to send to your products that do actually make you some money.
PETER:
Yeah. It’s almost like a big funnel really, but it kind of goes in different directions because I send people to websites but then sometimes the websites to send people to the newsletter. It is very weird like, people just kind of almost go run and round the circle. That may be on the newsletter then that put one of my sites. They will learn about one of my newsletters from one of the sites. It’s kind of all these weird cycles and things. But the good thing is, I'm trying to increase my service area of contact with people, because the more people know about my newsletter on the sites, as long as they don’t screw up, the more trusted I become because they are familiar with the name. It’s like seeing a Coca-Cola. You know if you go to Angola or somewhere, some country that perhaps you’re not familiar with. You know if you see that Coca-Cola on a can or whatever, you are probably more likely to drink that some local brand or whatever. So I guess what I'm trying to do with my various brands and my name and stuff like that, so that people do trust that I'm not going to scam that or whatever, which I'm not. But then it’s just my responsibility to actually produce good stuff that they are interested buying or subscribing. That is the tricky part.
JAMES:
So Peter Cooper is the new Coke.
AVDI:
The way you describe it, I see you sitting in the center of this expanding spider’s web laughing evilly as the flies are caught.
PETER:
I'm not trying to do that, I don’t have time to laugh.
AVDI:
You don't have time to laugh evilly?
PETER:
No.
AVDI:
What's the point if you can’t laugh evilly?
PETER:
I hope to do it in a year or two, but at the moment it's more just like, trying to stop myself, putting my head in my hands and crying.
AVDI:
Oh come on one little evil laugh.
PETER:
**evil laugh** there you go.
AVDI:
I’ll accept that.
PETER:
(Hey I did it.) But yeah, it’s just a lot of stuff. I mean, this week gone over and the focus so far, I mean literally I mentioned probably about six or seven different projects. I had to make a list the other day, of all the projects I'm involved in, and it was just ridiculous. I'm trying to make the ones that I do focus on, be the ones that are actually contributing to some sort of future goal. So the ones that is just like complete time wasters and things that just take off a lot of effort or specially emotional energy, that is something that really comes into play when you have so many projects going. You just can’t invest in things that take a lot of emotional energy out of you. We have to let other, than keep chasing people for money, things along those lines. So that's why I’ve actually scale back a lot of client work, which I find quite draining in to doing things I find more exciting. But then, also being to be able to make them an income stream.
AVDI:
With all that projects that you’re doing, I’d be surprised if you had time for client work at all.
PETER:
I do very little client work now. But I think we discussed on, casually mentioned on Twitter the other day that the problem if you don't do much client work is that, you kind of perhaps sometimes not forced out of your normal boundaries. It's harder to learn things harder to get that on the ground experience.
AVDI:
Yeah. I meant that's what I worry about. That's one thing I'm interested in hearing from you about, because I run in to the same issue where I am publishing more things, but I worry about being out of touch and not being “real” anymore as I do less client work. But it seems to me, (and I don’t know, maybe you can help me out on this) it seems to like there is a barrier below which you can’t really do—it’s like you can’t linearly scale back client work, because at some point, at some low commitment of hours per week, at least for a lot of clients, you're not going to be giving them their money’s worth. Because you are just spending so much time each week just switching back into that project head space, because you have been thinking about other projects all the time. I mean how do you do just a little bit of client work?
PETER:
All of my client work now, which is a very small amount, is all stuff on established projects where there isn’t anything major going on. It’s almost maintenance work, very minor feature dish and things like that. So that kind of work you can scale down into sort of almost single hours per month if you wanted to. I'm assuming that they don't want anything big doing, which I'm lucky to have that situation with a couple of clients. But in terms of actually producing new things, bringing on new clients, that would be a complete nightmare; I don’t think I would be able to work. The good thing though is that all the things I'm doing, like now I’m starting to build an e-commerce store for selling my screencast and books directly, rather than it from all these weird systems and the newsletter systems I'm working on, stuff like that. I'm kind of almost like I'm my own client to a certain extent. I’ve got a lot of stuff going on, a lot of technologies I wanna explore while doing that. So while I'm not being given specs from customers, which perhaps might force me into tricky corners I need to get out of, I'm trying to give myself enough challenges with the various bits of development I need to do, which is why I haven’t hired other people to do this work for me. Because, as you say, you need to keep a hand with this and if I was going to hire anyone to do stuff, it would be all of my admin work and perhaps some of my content seeking work and stuff like that. But I haven’t quite reach that point yet but I think it will happen quite soon.
CHUCK:
You know you are talking about building an e-commerce site to sell your screencast and stuff and I'm wondering why you don't use an already existing system. Is it just to keep things sharp or is it something else?
PETER:
It’s about fifty percent that and about fifty percent the whole kind of “program is not invented here” thing, which you know I'm very susceptible to. I pretty much develop every minor thing that I need to use. I guess the problem is I’ve try lots of different systems and I’ve not found anything that suits me very well without needing major adjustments. And actually one thing that look like it was going to work really well was e-junkie, which is this kind of, it looks a bit, kind of skivvy from outside, but it actually is quite a good system for putting together a cart that you can very easily just plug in to any site. But the problem is that they will not you customize the checkout page. It’s only like Times New Roman and it’s just a big mess. That was the only thing I really didn’t like about it. So I thought that is a complete waste of time so I go okay, we use Sinatra and Active Merchant, stuff like that and try to keep it really, really light. So I have to develop my own stuff. But in the process of doing that, I get to learn a lot of stuff as well. So it's a win-win for me. I get what I want and I
learn some stuff on the way.
CHUCK:
Nice.
AVDI:
When did you know that, okay, I'm going to be primarily a content producer now, rather than a programmer for hire? When did you feel comfortable, like this is a real career, I'm not just like not throwing my livelihood away by throwing my eggs mostly in my basket.
PETER:
Well, back during the .com kind of boom era, so late 90s early 2000s, I was primarily a freelance writer like an editor working on technical subjects more on the web designing, SEO that kind of area for Internet.com and a few other places. So, I kind of already have that background then as having as a career. But then, when the .com crash happened, it’s just like that business went away really quick, so advertising dollars disappeared. I focused a lot more on my programming which is almost like a side interest at that point. And programming was my main thing up until I would say 2007-2008 when Ruby Inside started getting a lot of interests and I had a few advertisers coming on and it was enough to replace all the programming work that I've been doing. So I kept doing programming work, but it wasn’t my main focus at that point. But really, the whole catalyst for that decision to focus on the media side rather than the development side, was that I built a couple of sites in 2005, one called Code Snippets, which is still around. It is owned by DZone but unfortunately, they kind of get rid of the spam, but it was one of the first, it was THE first tagged code snippet repository on the web. There were few other repositories, but this was a tagged one, kind of all that delicious idea of tags and all that sort of thing, which is a good fun at the time. So I built that in Rails, built up for two years and sold it to DZone, so that gave me a lot of deposit in my house, which was really cool. But then I also had, a kind of a start-up, going at the same time which is called Feed Digest which was a system for taking RSS feeds and then republishing them using JavaScript embeds and stuff like that, on your site. We brought up to about 24,000 users I think, of which you know reasonable percentage worth paying so; it was profitable but small business. It can only support me. So, I ended up selling it to a Russian company (of all things) and made enough money from that. So that I have just this really nice kind of safety blanket as it were. So for about 2007 onwards, I could very easily just take the risk and just say, yeah, I'm just going to spend a few years doing something else instead. So that's what I did. It actually turns out that this is now a lot more work and a lot more successful than those things I was running in the past. But I
wouldn’t probably have moved in this direction if I hadn’t have that safety blanket. So I do have to thank programming for that whole start-up thing to getting to this point. It was a very big risk to get into this game.
JAMES:
So that's interesting. How did you come to sell those sites? Did those people approach? How did you find them?
PETER:
On the Code Snippet site, I have a friend or had a friend, I have a friend, who once owned a reasonably, well-known middle range kind of hosting company about 10 years ago and he was looking to buy up lots of different websites, just kind of his investments. And he came to me and was interested in buying the Code Snippet site. I said, well, alright but I'm going to ask couple of other people first just to see if there’s any other interest and Rick Ross from DZone was very interested and literally made me a much more attractive offer on the spot, so I just took it immediately and grab with that. So that was great. So I’ve noticed there are quite few projects that, if someone offers you something, it’s up to people that you would like to see ideally buy it, and say look I've got someone is interested in buying it and you know, as long as you seem like you're being honest and straightforward, then you sometimes get a really good responses to it. But then, the other one, it's kind of off the blue. I literally got an e-mail from a guy at this Russian company, who is actually no longer working there when I ended up selling to them, but he kind of started the whole deal off. I thought it was a bit of a scam at first, because you get a weird e-mail from Russia saying we want to buy your website. It was kind of weird, so I end up speaking to him on the phone and yeah everything went fine. It went to escrow and they’re a very interesting company actually. They run like all these sites that's kind of like a list of shareware products and stuff. It’s a very weird business, I don’t quite understand how it works. But they were very interested in expanding their kind of web 2.0 presence; I think they said at the time. So it seems to fit well with that and they are still running this site. They call it Feed Informer now (feed.informer.com) but as far as I understand it, last time I checked it was still running most of the code design that I have done. But yeah, it was weird, I just had people come to me and that happens so much with a lot of my projects. That it’s weird now where I happen to like go out and actually accost people a lot more. Because I’ve been a little bit of lazy in the past. I just waited for people to come to me.
JAMES:
So you talked earlier about how doing client work helps you stay sharp. It was interesting to hear you say that, because I wouldn't have guessed that from you. I thought the way you keep up on current things is that you have this kind of cool synergy in doing the Ruby show and your Ruby Weekly and stuff like that, your newsletters. Did those get you poking in to the corner of things like all the time and that's kind of how you can stay current and know what the Ruby community is currently interested in and stuff like that? Am I wrong about that?
PETER:
Oh no. You are totally right, I guess I was just acknowledging the point about the benefits of client work because Avdi mentioned it on twitter and I see a lot of value in that. It does push you in these interesting spaces. But yes, in terms of doing like the curation and I do a lot of research like play with MongoDB for a few hours or something like that. Just so I can get a feel for it from all the stuff I’ve read. I'm sure we all do that to some level or another. We all do sort of code cutters and things along those lines just to keep our skill sharp.
CHUCK:
Can I interject, because if you are not doing that, you really should be.
PETER:
There you go. So I do a lot of type of thing, a lot of research. Especially if I'm going to do, let’s say, the Ruby 1.9 walkthrough for example, I spent just so much time over the course of a couple weeks going through old Ruby talk threads, going through stuff like blog post that you James, you posted series of post about Ruby 1.9, I think back in like 2006 or something. I read all of those. I think again actually I read it at the time, but yeah I read all that. And I just read everything that was out there and then get just still it all down. Which seems to be one of my sort of natural talents (and I don't have many of them I must admit). But I can take a lot of information still it down in to some things. I tend to do that a lot. I'm currently working on a very similar thing, screencast about regular expressions. So I’ve been reading all the books I can find about the regular expressions, what history is, all those kinds of stuff and I'm making notes just trying to like still it all down to make something that people will find interesting at the end of the day. But I must admit it's a lot tricky than 1.9.
JAMES:
Yeah but let's face it, you had to learn MongoDB because otherwise Jason Seifer was going to kick you off the roof.
PETER:
I think his code on MongoDB somewhat---
CHUCK:
So speaking of Jason, there was a couple of times when Peter would say something, and I was just waiting for Jason to chime in, that's what she said.
PETER:
Yeah exactly.
AVDI:
One of the things I love about your publishing, particularly your news publishing is that, you are an opinionated source. And I love news publishing that has a perspective and that comes from a person, rather than sort of a press release regurgitation machine. And of course that obviously requires that you be actually a practitioner of the stuff, rather than just somebody who keeps track of the trends. Do you have anything to say about that? I mean like was it conscious decision on your part? Does that get you some pushback at times, anything on that?
PETER:
I'm kind of at a school where I just want things to be interesting but positive as well. That's probably the place where I've messed up a few times over the years where, I’ve actually written about something that's very contentious and I’ve thrown in an opinion that is also contentious into the park and people have taken offense or it caused problems or whatever. Where I’ve written like a book review that perhaps doesn't go down very well. One example would be my review of The Book of Ruby by Huw Collingbourne, which I think a few months ago now. It caused a bit of a storm with Hugh especially and he did almost like an attack video back. It was really bizarre. So I guess trying to move a lot more to words being very open, positive kind of a Jeffrey Grosenbach school of thought where you try not to engage with things that are negative. Because even though it can bring you attention and traffic, it’s just not worth the hassle, it's not worth the stress, it’s not worth the blood pressure, it's not worth peeving off the people that you might a upset with, some of those things. So I try to be positive now try avoiding the negative things. So you see like a really prominent project and I don't mention it for some reason, then you can assume I hate it at that point. Actually I might not mention all of your projects.
CHUCK:
Attrition by omission huh?
PETER:
But I must admit I sometimes look at projects, like people say; oh can you put my library in Ruby weekly? And I haven't looked at the code, and it's like perhaps, no tests or the way its coded is just really bizarre. Like, Hacker News goes mad over it, because they just look at the title and what it does, but they are not looking at the code underneath. CHUCK: (Peter, I told you to stay out of my GitHub account.)
PETER:
So this is the thing, I often especially in the Ruby world, I actually go and look at the code and I think, I can’t recommend this. Yet it’s gone mad on Reddit, people have mentioned it on Twitter, like people who are well-known in Ruby mention it, just because they haven't had the time to look at the code. And I think, if I bring this to everyone’s attention, I'm just going to like be an idiot and like I'm just going to look very negative. So I actually avoid doing that, but there's a fine balance to play there. So in terms of being opinionated, it's good and it's good to have a character, I found. Always good to have a character, because people do build up a relationship, in some way, with your character. So whether it's by podcast, or what I say in the newsletter, or Ruby inside, people do build up a relationship. But, there's a limit to that, and that I won’t now go out and say things that are negative and will hurt people even if they are true, just because it does my business no good, and it does my blood pressure no good. So I am opinionated, to a point.
JAMES:
I’ve kind of gone similar way, like you mentioned the book review thing and I used to do tons of those, I used to write them for Slashdot and all kinds of stuff. I finally realized that if I have something positive to say about a book, it's useful, but if I don't, if I hated it or whatever and I just write about how I hate it, that's not really useful, Because there are some audience that that that book is for. I'm not it. And for me to say I'm not it isn’t really helpful. It just means I'm not it. So I've taken to where it if I read a book and I like it, I'll say something about it. If I read the book and I don't like it I just let it go.
CHUCK:
So that kind of brings me to two points; cause one, I think it is valuable in some cases, to see a book review where somebody saying, you know this really doesn’t add anything to the conversation. But at the same time, I can also see where that will cause problems. I can also, to some extent, see that if something is really good, and enough people are saying really good things about it, then it will kind of rise to the top anyway. So, it's kind of an interesting place to go where, yeah, I hated the book so I'm just going not saying anything. It doesn't seem to be human nature to do that either.
PETER:
No it's hard work. It's hard work not to get people upset, I must admit. You see this a lot in the Ruby community, there will be these kinds of people antagonize each other. Even in the JavaScript world you see it, like all over you see it and it's really hard to step back and detach from that. But I think perhaps the older you get, when you start having kids and stuff like that the things that are sort of happening to me over the last couple of years, I guess you start thinking, is it really important that I go online and really finish off this argument on the Internet? But really it's not going to have effect on the on what I'm doing in like a week, let alone a year.
AVDI:
But Peter someone is wrong on the Internet!
PETER:
Exactly.
CHUCK:
Where? Where?
PETER:
You won’t believe actually. Because I'm kind of in the middle stage of that, where I'm still kind of fired up to sometimes respond to people. But what I’ll do is, I’ll sometimes be on Hacker News and write up a response to someone and then I just will disclose the tab. So, that’s kind of like-- the eventual stage is just like, don’t write a reply in the first place.
JAMES:
(Just get over it.)
AVDI:
I do the same process. I do the same thing. So I definitely agree with that sort of waning method.
CHUCK:
I'm going to write a virus that attacks your browser when you close a tab. It hits submit, save or sent.
PETER:
You can actually do about with JavaScript though, I've always thought about this. If you run a community site, there is so many evil things you can do so like over a Web Socket or like with AJAX or whatever, you can actually track what people are typing. So you can keep a track of all the stuff they type, even if they actually never officially send it to the site. So if you want to create an evil site, where you just put everyone's true feelings at. Give it a go.
JAMES:
That's awesome.
CHUCK:
That's true. I guess you could do that.
PETER:
I think Google is doing that with my queries.
AVDI:
You are evil genius.
PETER:
I just don’t enact. I don't act evil.
JAMES:
So he has the feelings, but he’s learned to suppress them.
PETER:
Exactly.
AVDI:
I want a newsletter that just like distils all of your evil for the month. That’s the next newsletter I want.
PETER:
I’ve had so many people, (I would skip the evil part) but I’ve had so many people in the last couple of weeks, I’ve been launching Status Code and people said, oh, why can't I just get one thing where I can subscribe and it will be the whole thing. And the reason is, MailChimp’s terms of service won’t let me do that. I can add people to list, but it apparently, if you include, (it’s this is really weird sub clause) if you include any affiliate related kind of stuff in your newsletters, which I don't do very often, but I do occasionally, then you must use double opt-in for every single list you do that on. So I'd have to do a double opt in on everything. So that is why I can’t do one big mass meta-list, without kind of having to do a whole bunch of technology to produce it as a completely separate thing, unfortunately.
JAMES:
That's a lot.
PETER:
A bit technical then.
CHUCK:
So one thing I wanna go into a little bit here is, it seems like you're into all these different types of media, but one area of media that I don't think I've seen from you, well you have written a book but I don't think I've seen you write an e-book. Is that just something you haven’t gotten around to or is there a reason that you haven't done that yet?
PETER:
As I'm sure, Avdi, at the very least will agree, writing a book, (well actually, James has written a book) you will agree that writing a book, takes a certain level of dedication to actually get it finished. When you've got a publisher breathing down your neck and they've set deadlines, you're very keen to meet them. So when I set my deadlines for beginning Ruby, I met every deadline. That wasn’t a problem, even if I do, sort of an all-night cram before. When you're doing your own deadlines, of course, it's somewhat more difficult. Producing something like a book is a much bigger job than producing a screencast or any of the other type of media I do. Things like my newsletter have a built in deadline they have to be done on a certain day, every single week. That's great. But a book however, you can kind of think, oh, actually, I'm doing a bit more research now or vie learned something new for the book and I'm just going to keep doing that for a while. So I've got two that are in progress, now one is going to be quite easy to do. It’s just kind of like, my procrastination book to get me up the speed with the whole production process and that is the Ruby 1.9 Trick Shots, (oh not Ruby 1.9) the Ruby Trick Shots thing that I put out recently. And this should be like a very quick easy eBook with just a bunch of code in explanations of how certain Ruby tricks work. I’ve actually go like, I think it’s like 2000 or so people now actually join the listed find out about that when it comes out. So I kind of fell like a pressure to really get that done quickly. But another one that I'm working on is called Self Promotion for Geeks. I started this a year ago and if you actually Google the Self Promotion for Geeks, you will find a really early build I did with a PDF, which is about 90-pages or something. I really want to get this done because I’ve got so many people say, please I want this book! And because of all the things I’ve learned in the past year with the newsletters and selling screencast and stuff like that, I just have now so much more material and advice that I can put in to help other people do all of these stuff for themselves. But yes, you havent seen an eBook directly from me yet, but this is something I really, really wanna get done. I just need to find those extra bits of will power to get them out of the door as it were.
CHUCK:
Cool. Please I really want this book!
PETER:
I think I just have one thing to add in all of this. We are seeing from people like, Jeffrey Grosenbach and now Ryan Bates with his RailsCasts Pro, and actually James with his email newsletter subscription, and are that the whole idea of subscribing to something. And that's an area that I'm kind of like, looking at now, like I used to look at mark’s training. I'm looking at all those guys now, and thinking, that is a really good model, to have people subscribe to things. You know Garry Berndhart as well with his Destroy All Software screencast. That thing of having like, let’s say even a thousand people paying $8 a month, its $8,000 a month. You know, there is a certain level of expectation. You have to produce content, there’s a built-in deadline, alike. So I really like that model of subscribing and so on. It’s just been very difficult logistically for me to start up anything like that, till now. But now, I have promotion accounts so I can and so watch out everyone. I guess that's the one I haven’t done hat I'm seeing so many people do now. It would be great to get involved with that. And hopefully I've gotten email subscribers to promote that stuff too now. So I guess where I kind of get a bit of a head start sometime with this newsletter is that, I have the builtin audience that I can just like, say, look at all my stuff!
CHUCK:
Nice.
PETER:
So yeah. So that is where I'm thinking next, but I haven’t got any plans yet.
CHUCK:
We’re about to picks. Does anyone have any question before we go into that?
JAMES:
Let’s see.
PETER:
Tumbleweed…
JAMES:
I think we covered everything I wanted to know, I just think it’s cool that empire, you are kind of building up and I like how you’ve layered things on as you went. You started with the newsletters, I guess is probably the first breakout thing and that ended up turning out to be powerful because you built up your audience and were able to use it to do a bunch of other things. I just think that is kind of cool, you know how you slowly transformed your business into what you wanted it to be.
PETER:
Well, kind of, yet almost everything had been an accident so far, everything had been a weird chain of events. I only started Ruby Inside because I was asked to write a Ruby book by Apress who asked me because I was doing some personal blogging about Ruby. But then, Ruby Inside turned into a news blog and that turned into advertising money, that turned into like, trying to do it as a career media, kind of career, that turn into, thinking hang on, I can try to email newsletter and that turned into, oh, I can launch a course off the back of this newsletter and that turned into Ruby 1.9 Walkthrough and then I thought, I can sell screencast now, so that took turn in the next screencast I will do. Everything is kind of been this chain of side projects and experiments. It’s almost nothing I’ve sat down and thought this is going to be a business I'm going to make, I'm going to do XYZ off we go. Everything has been assigned project or an accident in some level or another. So, that’s why I keep trying all these weird things that you see coming along.
CHUCK:
Isn't it funny how that happens? I mean, it's been kind of the same journey for me with, even just getting into programming, I took computer engineering in college which is more hardware-based incidentally, but I was working in IT so, I got a tech support job, while I was finishing up school. That turn into managing tech support and while I was managing tech support, we needed something to manage our work load, the company wouldn't buy it, and so I started building it with another guy in Ruby on Rails. And I got into programming and it was all just kind of like this incidental thing. And it was the same with the podcasting is that, I just worked out to, I was listening to podcasts and then I reached out to Greg and Greg Pollack and say hey, what does it take to start one? So I one, started interviewing people, started making friends all over the community, started hearing that people wanted specific things. I wind up taking over teachmetocode.com about the same time frame and then I've been toying with the idea of putting something like this together. Then James tweeted that he wanted to do something like this and so, we would put our heads together and it just kind of happened, you know. So then, this was fun, so I decided well, it will be fun to do this for JavaScript. So I put that one together and I was chatting with some friends, some freelancers, who I incidentally have a little channel with on Skype here. I mentioned it will be fun to do a podcast like this and then the next week we were doing it for the freelancing too. It's literally just been, oh I stumble into this and there you go, that’s the next thing and it's really funny to me how, if you're trying to deliberately start something, a lot of times you kind of force it to be something that it’s not, but it's if you almost organically, find your way into something, then it seems to work out because it’s not something, just that you want, but it's something that other people are interested into.
PETER:
Yeah, the pro tip is just keeping trying things that appeal to you.
CHUCK:
Absolutely.
AVDI:
I think there's another lesson there that I'm hearing from both of you, which that I’ve also experienced myself, which is that if you are not very prominent and you want to become more prominent, more known, a great way to do that is by making other people better known. So rather than trying to get your own stuff out there, find a way to ask other people about what they’re doing and put that out there, whether that's doing podcast interview with people that are doing interesting projects or blogging interview or just publishing news. It’s an amazingly effective way of you know, it’s this thing where you know, to use the phrase that I know Peter’s find of, rising tides lifts all boats. You lift up other people’s work and you also, now that the people you talked about know about you and the people that you are publishing to know about you. And you have sort of your finger on the pulse of what people are interested in. So, would you agree that that kind of a theme there?
CHUCK:
Yes.
PETER:
Definitely.
CHUCK:
Yeah, absolutely.
JAMES:
People often talk about how I seem to just know these endless details about Ruby and if you look back when I first got involved in the Ruby community, I used to document the standard libraries. So I would read through the code, figure out how that work, mess with it and get them in to all kinds of weird scenarios, stuff like that. So, that's how I gain all that bizarre knowledge of how Ruby works and so that knowledge had paid off overtime. Then I worked on Textmate doing the Ruby bundle for a while and learned a lot about just editors in general and now, actually, one of the projects I'm kind of working on the side is also editor related, so you know, it’s just kind of how you accidentally get into those things. Kind of like accidental successes along the way.
CHUCK:
Yeah.
PETER:
I'm sure the Ruby Quiz helped as well.
JAMES:
Yes, absolutely.
PETER:
I mean that was a massive spotlight.
JAMES:
Right, every week I read code form tons of Rubyists. So yeah I learned tons of tricks.
CHUCK:
Yeah one other thing that I wanna point out that's kind of been referred to by Avdi, is just that, you reach out and you kind of help promote somebody else. But there are a lot of people that are near the top or above you anyway, and most of those people are fairly accessible. I mean there are few people that are just kind of inundated with; hey can I be involved with you? Can I talk to you? Can I interview you? Whatever, and they are not interested because they get a ton of request all the time. But for the most part, people are pretty accessible. So I found when I was getting started with my podcast, I had both James and Peter on the podcast and you know I didn’t really know them and I
kind of had them up on this pedestal and they definitely had larger audiences than I did. But it’s really surprising to me, still how I reach out to somebody that I think, you know, this guy works at Google, he does all of these amazing things and it just turns out, hey, he’s willing to come and chat on the podcast or whatever and it works out really well and it’s amazing to me how much of a community we really do have and how people in the community are willing to help each other out.
PETER:
I’ll show a data point on that actually, in terms of people actually asking me to do like an interview whether written or like a podcast thing, something about five or six a year so, I'm not like being constantly harassed to come on interviews or things like that so, I think I pretty much accept all of them. But then they all seem to be good people. I hadn’t have any request from people just seem really scammy or weird. I probably get loads now.
CHUCK:
Right.
PETER:
I'm not inundated.
CHUCK:
Yeah, the instance I was thinking of was, if you go to the contact page on John Resig’s blog, he’s the guy that created jQuery, he’s very explicit. I'm not doing interviews, I'm not speaking at your thing, you know, and so it’s like if you really wanna get a hold of me... I'm sure he’s willing to talk with you about technical stuff, but you know, doing anything else, that way he’s not necessarily interested, but even then, he has his email listed right there.
PETER:
Let’s play a game; let’s guess who is not going to be speaking at O’Reilly fluent.
JAMES:
You wouldn’t have any inside joke on that would you Peter?
PETER:
No I wouldn’t. Actually we’ve put half the program together now, but I guess the one thing I can release is that John Resig will not be speaking, unfortunately. He literally is not speaking any engagements like that.
CHUCK:
Yeah, well. You know, everybody is kind of in a different place, so.
PETER:
He’s very busy.
CHUCK:
Yeah. Alright. Well with that, we are going to get into the picks. Avdi, what are your picks?
AVDI:
I don’t know, I’ve been wrapping my brain over this episode and I guess I haven’t had enough coffee this morning. That's a good pick, coffee. I’ll just say this one; I’ve been really enjoying Land of Lisp, which we’ve been reading for the book club. I think it’s a really neat approach to the subject matter. However, reading through it, brought to mind an old and kind of lesser known (as far as I can tell) Lisp book that I ran across years ago, and kind of caused me to go hunt it down again. And that is the book called Successful Lisp, it was originally just an eBook, it was just published online but you can now get a printed copy of it. It’s explicitly aimed towards experienced programmers. Definitely not an introduction to programming. And what I always liked about it, is it did something , it seems like no other Lisp like book has had the guts to do, which is it actually uses some of the modern aliases for some of the Lisp functions. So rather than saying, to get the first part of a list, you use “car” and to get to rest of the list you use “cdr” that's just obvious of course. That's how you get the first and the rest part of the list. It actually says you use “first” to get the first part of list and “rest” to get the rest. Then it has a little note at the bottom that says a lot of the Lisp programmers use car and cdr which are based on some hardware registers in the original Lisp machines, and it’s purely implementation details. It seems like that some sort of a blasphemy, not to use car and cdr, but I find it a very refreshing intro to the language that they actually using terms that made sense rather than terms that I had to understand a bunch of history just do wrap my mind around.
CHUCK:
Alright. James to what are your picks?
JAMES:
I got a technical one and a non-technical one this time around. For the technical pick, I just got on watching the Peepcode’s Advanced Git Screencast and this is a pretty unusual screencast, I think, for our Peepcode especially. If you watch it you may almost think it's kind of boring, and in some ways there's not a lot going on there. It's basically a screencast about how a Git expert solves problems using Git. It basically boils down to some clever use of the log and what I the reflog is, which of course pretty much always getting to advance Git stuff. Actually I think their screencast is kind of badly named. It might be better to call it a “real world Git” because it's just so alarmingly practical. I think the only reason to watch it alone is he talks about merging at one point and what merge commits are and why you have them and stuff. And he takes the pretty much the opposite view that the world is pretty obsessed with right now. We’ve been seeing fast forward everywhere and keeping that perfectly flat branching and he calls them training tracks where you can see the different merges coming together and why that is and stuff. And it’s kind of like a refreshing conversation about Git, so if you use Git on really superficial level, add, commit, stuff like that, you would not enjoy this at all. But if you enjoy getting into why it is the way it is and what that means and how that affects us, then it's pretty cool screen cast and I definitely recommend. My nontechnical pick this time, I've been watching Big Bang Theory. I'm catching up on episodes. We actually discussed in on the preshow at last week and both David Brady and Josh Susser disagree with me, so I had to wait and till they were both gone before I get to say this and get away with it.
PETER:
(Big Bang Theory rules!)
JAMES:
I know. Isn’t its great? It is actually a controversial show. There is a popular post online about why geeks don’t like it and you can check that out. At the same time though, there is another post about why geeks do like it. So, I guess it depends on which one of those camps you fall in to. But I happen to be on the “why geeks do like it” side I love to see us made fun of even if it's to the extreme. The show does that well and it has a lot of meat to it, I think, in some of the jokes and stuff like that. The only thing I would say, a lot of the complaints raised against the why geeks hate it; seem to come from the early parts of the show. Keep going, it gets better as it goes and they sort out some of those problems along the way and it does actually improve. Anyways if you haven't checked out Big Bang Theory, like I just got into it recently but I am enjoying it and having a great time so I would recommend it. Those are my picks.
CHUCK:
Cool. Alright, I'll go next. I have a couple of picks. The first one is Aweber, which is kind of the older alternative to MailChimp, which was mentioned by Peter. I really generally like Aweber the interfacing is more intuitive to me. I like the way how a lot of the things work with it. I have used MailChimp and MailChimp works just fine. I’ve actually used their and the API on like the API on MailChimp but Aweber is what I’ve been using for my newsletter for a while and like I said, I really do like what it offer so I’ll just throw that out there. My other pick is something that I’ve been playing with lately, I wanted to put a form system in, since I'm building, I'm making a secret to this, so I may as well just mention it. I'm working on a membership site for freelancers at rubyfreelancers.com and that's also incidentally where the Ruby Freelancers show is hosted, if you want to listen to that. So I wanted a form in there, and I was kind of like dreading having to build it myself. Well it turns out that there is an open source Rails engine that will put the form into you application. All you have to do is include the engine and make a couple of tweaks. It’s called Forem, f-o-r-e-m and I guess it’s written by Ryan Bigg and anyway really, really cool system. I'm not sure if it has everything I want, but I am willing to go and hack it so that it does. And I will probably contribute all that back. But it's definitely a good start to what I want, and it will save me a lot of the hassle of trying to figure out so those are my picks. Peter do you have some picks?
PETER:
I’d be very quick. I just wanna second the Big Bang Theory thing. The reason I like it is because I
don't perform sociological analysis on my TV shows, I just watch and enjoy so I really love it and Kaley Cuoco is just absolutely gorgeous (just to bring that in.) Bringing back to Ryan Bigg, you just mentioned, I wanna recommend his and Yehuda Kat’z Rails 3 in Action. The book hasn’t seemed to get much attention but it’s really, really good book. I guess it’s been over showed a little bit by Rail tutorial by Michael Hanson, which is also really good. I just wanna recommend that though. Monocle Magazine is kind of like my big inspiration in this whole publishing scene. They are doing a lot of stuff, that I'm kind of getting the models of in various ways. Print only magazine in kind of like, across the areas like business, culture and design. It’s a bit kind of weird. It’s a very international magazine. Very, very, very good, I definitely recommend you subscribe to that, my favorite by far. Last but not the least, I'm going to add a link and you can put it on the show notes, to a stackoverflow discussion but, I kicked off, which came from-- I read someone said that JavaScript is an untyped language. And I thought that doesn’t mesh with my knowledge of typed systems in programming languages at all. I asked Brendan Eich and he says, yeah some people refer to dynamically typed language as being “untyped”. So I asked about it, do people refer to it in that way? Is that an academic thing to do? It turns out, yes. It’s very common thing to do. Some people think its evil; some people think it’s a good idea. So it’s this big kind of like free for all on stack overflow and someone was actually a PhD in computer science, shared the history behind all things. I think some people might find that interesting. If they are kind of geeking out on that type of stuff. That's my pick.
CHUCK:
Is JavaScript and untyped system? Or language? Alright, so a couple of business things; next week we are talking to Conrad Barski about Land of Lisp. So if you haven’t gotten it, go get it. You can get it in nostarch.com, use the promo code “rubyrogues” to get a 20 or 30% discount on the book, so it's a great way to go. Also we are in iTunes, so if you want to go into iTunes leave us a review or leave us a rating that will be terrific. And finally, check out some of the other shows, JavaScriptJabber.com, RubyFreelancers.com and teachmetocode.com. We'll catch you next week!