The Changelog: Software Development, Open Source - Ruby, Rails, the Cloud (Interview)
Episode Date: March 1, 2011Steve and Wynn caught up with Dr. Nic from Engine Yard to talk about the cloud, Jenkins, Ruby, and lowering the barrier of entry for learning Rails on Windows....
Transcript
Discussion (0)
This is Dr. Nick Williams, and you are listening to The Change Log.
Welcome to The Change Log, episode 0.5.0.
I'm Adam Stachowiak.
And I'm Winn Netherland.
This is The Change Log.
We cover what's fresh and new in the world of open source.
If you found us on iTunes, we're also on the web, thechangelog.com.
We're also on GitHub.
Head to github.com slash explore.
You'll find some trending repos, some feature repos from the blog, as well as our audio podcasts.
And if you're on Twitter, follow ChangeLog Show, ChangeLog Jobs, and me, Adam Stack.
And I'm Penguin, P-E-N-G-W-I-N-N.
This episode is sponsored by GitHub Jobs.
Head to thechangelog.com slash jobs to get started.
If you'd like us to feature your job on the show,
select advertise on the changelog when you post your job,
and we'll take care of the rest.
Up this week, our friends at Pusher over in London.
Looking for someone that knows the evented scene.
Experienced with Node.js, Redis, and message queues are a big bonus for people
that can work in the U.S. remote
or in the London neighborhood of EC1.
If you're interested,
lg.gd slash 8c.
If you're a software
dev in the Toronto area, in the
Python and PHP community, and love the fast
paced and creative environment of a startup,
FreshBooks is looking for a disciplined developer
who doesn't sneer at scripting languages but also knows their enterprise-level stuff.
Check out lg.gd.com.
Fun episode this week.
Steve and I sat down with Dr. Nick Williams, a really funny Aussie from Down Under.
Now lives in San Francisco, works at Engine Yard, big in the Ruby community, works on the cloud.
You'll find out what that means.
He's keynoting at RedDirtRubyConf.
We'll be there doing a live episode.
That is in April, April 21st and 22nd.
Prior to that, he'll be at CodeConf.
Be sure and catch him there, as will our buddy Steve Klabnick,
will be the official ChangeLaw correspondent at GitHub CodeConf.
And in March, March 11th through the 13th,
is the main conference PyCon in Atlanta.
Kenneth will be there
hopefully with a big bag of
changelog Ts. Absolutely.
And a mic.
And a mic. And for all of you guys
out there actually asking us for more Python,
head up
Kenneth for that because he can help us out there.
And if you're going to be at PyCon and he's got a mic in his hand, go say hi.
Say, I have this cool Python project and it needs to be on the changelog.
Just grab me by the arm and say, interview me now.
That's right.
Interview me now.
And this is episode 50, so this is a big thing for us.
We're excited about being on the air and thanking you for listening to us and supporting us all this time and thanks to GitHub and
thanks to all the people who
have us promote their jobs and
everything for readers and
Wynn and the rest of the team for supporting
us. It's been awesome. Thanks for putting
up with us for 50 episodes. Hopefully
here's a 50 more. Alrighty.
Good episode this week. You want to get to it?
Let's do it.
Chatting today with Dr. Nick Williams from Engine Yard.
So, Dr. Nick, for those that don't know you, I want you to introduce yourself and your role over at Engine Yard.
I am one of the early Rails developers and users and fell in love with Rails back in 2005 when Ajax came out and fell in love
with Ruby and made lots
and lots of little open source projects.
And I think
lots of people have used at least one of them.
So
I ended up finding my way
over to Engine Yard over here in San Francisco,
America, which is
not where I come from.
And I
now have the very cool job of
both looking after our large
open source program over here, which is
the Rubinius, JRuby, Fog,
and Rails in general,
as well as our
grants program, and
I also sort of take a developer advocate role
here for our products.
Well, believe it or not, we have a lot of non-Rubyists that listen to this show.
So what does Engine Yard specialize in?
We specialize in Ruby, specifically getting Ruby into the cloud.
So for Rails apps, Rack apps, Sinatra, Merb, we think there's a huge marketplace for just that niche in of itself.
So we essentially deployed to two different infrastructures,
which is the fancy phrase for Amazon and Terramark.
Because, yeah, I mean, a lot of people don't even know that Terramark exists
and why, because there's just different customers have different reasons for different needs of their infrastructure and amazon
doesn't provide all of them so you say cloud oh i know cloud isn't that cool name i've heard of
100 different definitions you drive down the you know the 101 here in uh in out of san francisco
and uh you know there's big billboards with the word cloud on it and Microsoft attempting to tell you what cloud is.
So essentially cloud is
I trivialize it for my own amusement.
Cloud is the shiny
new name for this thing we call the internet.
But what it is
is allowing us to
provision
resources, like compute resources,
storage resources,
via APIs and pay for them on a sort of a rental basis,
which means that you don't have to go off to Dell and fill up the back office
or fill up a data center with machines in case you might get traffic.
You can start small and grow based on success of the business
or the traffic that you drive, which is really, really important
for nearly every, you know,
app that's being built these days.
The whole world's moving to cloud,
but that doesn't make it necessarily easy.
It just means that you know you have to go there.
Yeah, that's definitely true.
I have a lot of friends who come from a non-web perspective,
and they do the standard, oh, poo-poo, cloud, you know, kind of thing.
And so we talk about
this stuff a lot. I definitely agree
that cloud is becoming super important. You guys have done a lot
of great stuff and historically
have done a lot for Ruby.
One of the things that's always interested me
I guess about you, as long as I've known
about you, is that you have
154 public repos on GitHub.
Like you said, you have a lot of open source
projects and everybody's used probably at least one of them. And I find myself in the same position. Like I
literally wrote and released a tiny little Ruby gem last night after I was tired when I came home,
because there was some little idea that I wanted to bring up there. So how do you manage running
that many projects and keeping abreast of if they need something? Do you sort of abandon a lot of
old ones? Do you actively try to work on your older projects? How does that all work?
I actively abandon them. I mean, you just can't. I think I did a talk. I mean,
if you ever sit down and think about it, you mathematically just can't. I think I did a talk
at Future Ruby, which whilst a Ruby conference had lots and lots of different content. And
I think all the talks for Future Ruby were put on InfoQ,
so you can go back and find those, a lot of interesting talks.
The topic that I talked about was, hey, you have 1,000 projects.
Because I did this back of a napkin type calculation.
After three years of doing open source, I had 75 projects.
And 75 kind of real-ish projects, not just demo apps or something.
And I kind of figured if you did the maths
and you had a job, did this 40 years,
which what we do in open source is wonderful.
It's like being a garage mechanic,
except you get to do it in public.
You make shiny things and show them off
and let other people use them.
Why wouldn't you end up with a thousand projects?
And I quickly realized that was going to be disastrous
for my social and
and marital life yeah so i had to figure i had to figure out what the solution to that problem was
um and i figured it was worth sharing and uh active aggressive abandonment uh is is an important uh
part of that uh and that's only really possible now because of things like github
you know back in the subversion and cs CVS days, you couldn't really just abandon
projects and assume that they might survive. But with GitHub, people can discover projects,
people can fork them, have their own permission structures. Now, in Ruby, you're allowed to
release gems even in your own name. I assume in different communities or different packaging
environments, they'll have their own solution to that. So really in this modern world, in 2010, 2011,
making projects as ideas and releasing them,
we're really unable to do that these days.
Yeah, I almost wonder, having taken on two of Y's old projects,
I almost wonder if that wasn't part of his deal,
was having too many things open at once,
because Hacking & Shoes is a handful enough for me, as it is,
not that I'm the same person why is obviously but uh it's definitely it's hard to to contribute
to so many things at once uh jamis buck who uh created a project he created a whole bunch of
projects in his early ruby days but his most hugely popular one was a um a deployment tool
called capistrano which which was the definitive way that Ruby applications got deployed.
And then one day he publicly declared he was abandoning the project, which I thought was,
you know, and he got massive feedback, you know, of praise and admiration and thanks.
And I thought that was genius because it never occurred to me to publicly tell people I was
nervous I'm going to work on something.
So I thought that was pretty genius at the time.
So, yeah, I think there's a lot of examples of people
who start a wonderful project,
and sometimes just the community just needs to know
that they're allowed to participate.
GitHub, again, has really...
And that whole community notion has really been fostered around open source.
And I think as less people need to be actually explicitly told they can participate,
I think more and more people know they can just fork, add features, send pull requests.
So I think it's very healthy, I think, these days to feel that you can just start a new project
and know that someone will turn up and help.
You know, Kenneth and Steve tell me I'm not a real developer
until I get firmly in the world of Vim and leave TextMate behind.
But I think I've discovered you via all your TM bundles.
So is TextMate still your primary editor?
Oh, yeah.
Okay, so do I have an issue with people going back to 1960s technology?
I don't actually know when Vim and Emacs came out.
But, I mean, Emacs is really old, isn't it?
When Emacs is the canonical base of GNU,
that was Stallman's big project.
But do I have an issue with people picking up legacy technologies?
I mean, yeah, I do.
I have a big issue with it.
Do I poo-poo them publicly on public podcast radio?
I guess I just did.
Well, Vim is 95, to defend it a little bit,
if I remember correctly.
Yeah, let's all go and get record players in Windows 95
and live the good life.
Hey, Windows 95 is cool.
You could put the Simpsons theme all over your machine.
Anyway, but what's more important
is that these people are aggressively trying to pick tools and chop and change their tool set that they use as developers.
And if they think they're not getting the right, you know, if they don't feel enabled by tool set and find out what set of tools, languages, libraries, and teammates that you want to work with.
So best of luck to them.
Totally.
I spend a lot of time SSH'd into servers, and so having one editor in most places is the main reason I use Vim.
But I just installed Janus yesterday yesterday actually, and a friend looked over
my shoulder and said, oh, so now your Vim is
TextMate, basically.
And I thought that was really interesting. And I have
used TextMate in the past.
It's just, you know, I'm more used to Vim.
These wars will forever
happen. The program is arguing about tools. I'm really
excited about Redcar as well.
I know that
Engine Yard used to be involved with j ruby but
then that is not really happening anymore and i know that you know sort of segue no we are still
very involved j ruby i apologize if if we haven't communicated their involvement well enough no when
uh the three guys charlie tom and and uh nick left oracle they came to Engine Yard and we started ensuring that that work carried on
and we have that as an alpha product at the moment
for people to try.
But no, the world needs, I mean,
Engine Yard needs more people using Ruby.
That's our belief.
Ruby is a wonderful language.
Yeah, I mean, we're not anti-polyglot,
but I mean, as a base language for building
web scale applications
which you know the same for mobile right
if you're building mobile apps every
app these days needs some sort of central
back end and we believe Ruby
is still the best
language and has the best frameworks for doing that
so JRuby helps
spread that message and
it's also it's possibly
you know the best VM it's also, it's possibly, you know,
the best VM in and of itself.
I mean, I can say that today and it might change tomorrow,
but I mean, it is, the JRuby on top of the JVM
is a tremendous product.
Totally.
The segue to that, I guess, was Red Car.
So have you tried it?
I have.
I don't think I've tried it.
It's actually very aggressively being developed.
I think I played with it a few
months ago.
At the time I wasn't quite ready to give up TextMate
itself, but I definitely understand what they're trying to achieve.
It seems like
it changes quite often.
It's definitely aggressively being developed.
I had a friend give a presentation on my local
Ruby Brigade about it and the commands
he had looked up the week before didn't work
while he was giving his presentation because they changed the API.
Yeah, that's awkward
for demoing.
Again, if it means that
like Emacs, it's built in
a language that you can hack and you can
modify, that's very empowering
for a lot of developers.
Especially what we've lived in
the dark ages of TextMate, which is
I think why many people leave TextMate
it's not because there's anything necessarily wrong with it
they are just fed up with lack of activity
from the public eye
but Redcar being written in a language that
even if you're not a Ruby developer
just knowing that it's written in a language that you could learn
and that you could modify
and you can contribute to in the editor itself.
Obviously, it has bundles as well,
like TextMate and all the other editors,
I think is going to empower it greatly.
So I look forward to them getting to a stage
where the world starts to realize
that it is a wonderful editor
and gets a lot of traction.
Well, you also do Objective-C development, right?
I dabbled. I was a dabbler. Well, you also do Objective-C development, right? I dabbled.
I was a dabbler.
I mean, Oracle, Apple, is there a difference?
No.
So when the iPhone SDK came out, I just happened to be playing with Ruby Coco.
This was 2007.
Ruby Coco.
And so I was very desperate to figure out, could I get Ruby running on
the iPhone?
Unfortunately, I just wasn't clever enough to solve that problem.
I'm just not a C person.
Have you ever, 2007, I got a linking error.
I didn't realize people still had linking errors.
That was weird.
I felt like, I know Objective-C is this beautiful syntax relative to the underlying language,
but I wasn't ready for a linking error emotionally.
But no, I did some Objective-C back in 2007 and made a bunch of Ruby test libraries
to sort of make it easier to test your Objective-C.
And my consultancy at the time did a bunch of iPhone work.
But I was pretty annoyed by Apple's anti-open source approach at the time
because they had that NDA in place,
and so a whole bunch of Objective-C people just wouldn't talk to each other.
iPhone developers wouldn't talk to each other
because they were all scared of Apple.
What did Objective-C cause you to appreciate about Ruby?
That is an
excellent question. And I say it's an excellent
question because I don't know what the answer is.
Message passing a generalist.
Just like string concatenation.
I'm very excited about MacRuby.
I mean, MacRuby is sort of blending
the two things together.
And I believe it's going to become...
I have heard whispers and ideas that it may become a first-class language in line. And I believe it's going to become, I mean, I have heard whispers and ideas
that it may become a first-class language in line.
And that'll be very exciting for anyone
that wants to do, you know,
sort of application development for the Mac
without having to go down to the Objective-C level.
And it looks very similar.
I mean, I think they even created a TextMate bundle
for MacRuby so that you could copy documentation in and generate MacRuby syntax.
But so what did I learn?
I learned appreciation for all the things that I no longer have to think about.
Managing memory.
Exactly.
Just remembering what did I do with that object?
I had an object lying around here somewhere. What did I do with it object I had an object lying around here somewhere
what did I do with it
I was very excited to see
Engine Yard team up with Appcelerator
for mobile apps so I guess you guys
are providing plumbing for back end API
type steps for
there aren't many
iPhone mobile apps that have
a significant purpose in the world if they're not going to have a
back end and making it easy for people.
Rails makes it easy to build that middleware layer,
or Rails or Ruby and Rack make it easy.
Getting it up and running in a production environment.
If your app's going to take off,
then you need to make sure your back-end scales.
So we worry that people are making some awesome apps,
mobile apps, but don't have the expertise to ensure that their app doesn't look ridiculous because their backend failed.
So it's pretty important that those guys get the support they need.
So yes, we're very cool, very excited that AppCelerate, they're doing some very cool stuff.
So Rails Installer, I've been spending a lot of quality time with the Ruby Installer project lately, and it's been great.
Luis took a couple hours on a Saturday to help me with some things involved with it, and it's been a great project.
And so I'm excited to see Rails Installer bringing the same kind of thing.
One of the things I saw him say was that he's sick of people saying that the answer to Ruby on Windows is install Ubuntu in a VM.
And so it would be great to have Rails actually be a first-class citizen on Windows.
As much as I hate Windows, there are people that love it,
and so getting Rails to them is a good thing overall.
So I guess congrats on that project.
It's a really important project.
I mean, people just need to – I'll tell you a funny story.
It's a funny story.
If you go to the Rails 3 guide,
which I think is at guides.rubyonrails.org,
and you go to how to get started on Windows,
the answer to that problem was a project called Instant Rails.
And Instant Rails was how I got started in Rails back in 2005.
Unfortunately, it hadn't been maintained since 2007.
It was distributing a version of Ruby that didn't work with Rails 3.
And so what you had was people being told that if you're on Windows,
to go and install a set of software that didn't work with Rails 3.
So it was pretty much low-hanging fruit, really, for a project that needed doing.
Really, really important.
And so now if you go to the Instant Rails project,
it now says, you know, please use Rails Installer.
But all we did was we packaged up like a gift bag
of things that we think make your life
as a Rails Ruby developer functioning and pleasant.
So it's not just the fact that it bundles Ruby Installer,
it's that it includes Git. It's that it bundles ruby installer it's that it includes git
it's that it attempts to set up you know future version are going to set up your ssh keys
and you get config and just you know get you not just ready to be a rails developer
so it's going to like it includes my sqlite not just sqlite gem but also sqlite itself so
you know you're just just ready. You don't
have to go and look any further. But it also, once you take that next step and you want to start
getting other jams or get source, participate in the GitHub, you know, centric community,
you're ready to rock and roll because we just want to lower the barriers to people participating.
Yeah, that's awesome. I actually wish that I had remembered that over
the last couple days.
We're actually, the Shoes project is built
with Ruby Installer, and so I'm essentially doing
the same kind of deal. All these extra recipes
on top of Ruby Installer, and so
a lot of those same things are there. Git,
SQLite, all those things. So I probably could have gotten
some help from looking at your code.
I mean, Luis is, I mean,
I hope nothing bad ever happens
to Luis. He is a machine.
Similar to, I remember I accused
Charlie Nutter once of there being three of him
because he seemed to be available and online
helping 24 hours a day. And I think Luis
is just a phenomenal
human being for
the effort he puts in and his knowledge about
the Ruby
ecosystem of software.
And if there's a bug, he kind of knows where that bug is most likely to exist.
The fact that he's now on Ruby call to be able to look after Windows
is very enabling and wonderful.
No, so it was, he was our jungle guide when we were building the Rails installer.
Yeah, I talked to him once and then he spent six hours on a Saturday
helping me find an obscure bug in Ruby
and then said, oh, I'm sorry, I need to go now.
My fiancé is going to be mad at me or something.
So he's just, he's totally, he's a machine, it's great.
Yeah, we need to have some words with this fiancé.
I hope she understands what he does,
how valued and appreciated.
We're hoping that he's going to be coming up to RailsConf.
So if you have no other reason for Ruby Developers
to come to RailsConf, it's to come and see Luis
and at least to thank him for what he does.
Speaking of conferences, you are speaking at CodeConf, right?
Oh, I am.
And that's going to be exciting.
I even know what I'm going to talk about now.
I could be accused of many things,
and definitely one of them is to pick my topic of
of a talk you know as late as possible whether the conference organizers get really cranky and
say nicholas we need they never said nicholas that's my mother i'll say dr nick we need and
my mother doesn't run conferences so it's dr nick dr nick we need to know what you're talking about
um but it's in this case I actually went over to GitHub yesterday
and Chris and I noted out a talk idea,
and that's going to be around the tool set,
a theme that we sort of talked about here earlier on the podcast.
Just the importance of constantly evolving and picking your tools
and building your own, looking at what other people are using,
why it is okay to use Vim, even though I personally dislike it.
I mean, if you have to put the shortcuts on a coffee mug, I don't know.
I just think there's something for us to learn from that.
Yeah, I'm excited for CodeConf.
And one of the interesting things about it I noticed that's great, it seems like
someone said it seems like every Ruby conference has to have some sort of
controversy.
And so the Ruby,
or CodeConf is going to have like 40,
30,
40% women speaking.
And not to broach the whole,
you know,
women CS,
oh my God topic,
but I think that's going to be really exciting.
And it looks like we've got a great lineup.
So,
you know,
I'm excited to go to it.
And I don't think it's a pure Ruby conference.
I think people are talking about other languages, other stuff.
There's lots of JavaScript.
Josh Eschenankis, or however you say his last name, is going to be talking.
Ashkenaz, that's right.
I've butchered it more than anybody.
I remember you guys talked to him.
You had a conversation about this.
I believe your show has talked about his projects more than anyone else.
So if anyone can get his name pronunciation correct, it would be you guys.
He's done some wonderful stuff.
The Document Cloud,
he works over at the Document Cloud.
They've done some
awesome projects that have come out of there
before and after CoffeeScript.
Docco is great. I'm really,
really happy with it, even
though I wrote a blog post that said I
wasn't almost.
It's great. It's been fantastic.
I've been using it for every project since. The Cloud Crowd project,
the underscore one.
Coffee Script is my favorite.
Oh, absolutely. It goes with that.
It's a brilliant
invention. Very glad.
Makes me very happy.
So if you just now picked your topic for CodeConf,
I guess you don't have a clue what you're going to talk about at Red Dirt?
The Red Dirt, Ruby Nation, and RailsConf,
I'm going to go with the Rails installer theme.
I've never really gone with giving the same talk at multiple conferences,
but I say unfortunately.
This would be awesome.
I get to get better at it.
But this message about Rails installer,
which is getting the Rails developers to get back out and sharing Rails again.
I mean, Rails Installer is obviously a tool for new people,
but it's also a tool for current Rails developers
to be able to share Rails with confidence,
which is why we're building OSX and probably a Linux one,
so that you can point to this one URL
and say with confidence, this is the place you go to to get this one url and say this is and say with confidence this is
the place you go to to get started in rails and have a heavy experience um i mean that's one of
the reasons google took off was you know you could share the google address with someone and have
confidence that people your friend your mother your you know siblings were going to have a positive
experience um searching the internet uh so we we want rails installer to have a positive experience searching the internet. So we want Rails Installer
to have that same message. When you talk about going to multiple conferences to speak, to get
that message out there, it actually draws back to one of the things that's sort of a problem with
Rails. And I wonder if you know how this is going to be fixed in the future is that we sort of have
developed a culture of, so if you just read these like 15 blogs, you'll get all the documentation
and all the knowledge about what's going on and what you should be using.
And I've had problems in the past with people Googling answers.
And since Google's page rank accumulates links over time, you know, you'll get answers from
Oh, there's some classic 2006 articles that you just must read.
Yeah, exactly.
So how is Rails going to overcome that in the future?
That is, and that is certainly one in the mission statement of Rails installer from the website perspective it's a term to bring that together um you know the getting
started information um but i mean that's not to take away from from some of the the um the
textbooks that have been written like the rails freeway and uh um uh the one ryan big and yuhuda
wrote um you know i mean that people are putting a lot of effort into those and, you know, paying $30 for books to get the rock-solid
getting started experience.
A whole bunch of people are doing training.
I mean, Engineered University exists on top of other people doing,
you know, the Rails training podcasts and peat code, et cetera.
A bunch of different, you know, getting started experiences.
So I do want to make, make yeah that is definitely the mission statement though to bring that all together so that people
can get started we may even put it into the bundle it in ourselves so that's you know everything's
work we have to you don't have too many good ideas versus a capacity to execute. But no, lots of people making that much easier.
But if we can stop people going to Google for answers,
the longer the better.
And if we can keep people on Windows,
the longer the better.
I don't want people to think that they need to go and buy a Mac
because then they stop being experts on Windows
and that community dies.
Question from Twitter.
Casey Carroll wants to know your thoughts
on the Jenkins-Hudson drama.
Well, I think it's a wonderful lesson
to businesses involved in open source
that they very likely don't get it.
So Engine Yard has an experience with open source.
We currently don't really lay any claims over trademarks or IP
on Rubinius or JRuby or Fog
or any of the projects that we sponsor full-time,
which included Rails until recently.
You know, we contribute to them because they're part of our product
or part of the community that uses those things.
Oracle, you know, bought this huge company called Sun
which was the largest owner of
open source I think
owner so to speak, the largest orchestrator
of open source and
you know they're having some
teething problems figuring out what do they
do with those assets
and they've
sorry
they're coming for you we'll just have pause they do with those assets. And they've... Sorry.
They're coming for you.
We'll just have pause.
It's the Oracle police.
I had someone that says Oracle's new open source strategy is to find every single developer
and just kick them in the balls.
And that's their new initiative going forward
to reach out to the community.
Yeah, perhaps they'll have little booths
at shopping centers where you can, as a developer,
come and have your balls kicked.
I had an idea for Netflix, completely off the topic.
I went and saw a Netflix talk.
And we'll get back to Jenkins.
I went to a talk on NoSQL at Netflix the other night, Dan,
and it was actually the Facebook office.
It was the Bay Area Cloud Computing, one of the multitude of cloud in actually the Facebook office. What is it? The Bay Area Cloud Computing.
One of the multitude of cloud computing things.
Meetups. And I just
had this cool idea of Netflix
wherever they go and talk, they should have these
cardboard postbox,
like a blue or red mailbox
that they could put at the front of the room
and people just know that if you're going to see
Netflix talk, you can take your Netflix
DVDs with you and drop them off there. Because, you know, if you're going to see a netflix talk you can take your netflix dvds with you and drop them off there because you know who's got time to go to the post these days
and i thought that would be a cool idea i saw a really ridiculous thing thing about the facebook
login controversy with people again using google inappropriately where i guess redbox has received
a number of complaints of people thinking that they're Amazon just because they're both red and they're both DVDs.
Or maybe it was the other way around.
Maybe it was the people trying to return their Redbox things in their Netflix papers.
But I thought that was like,
it's something we have to overcome as developers,
you know, is like getting out to people
and having them understand this stuff.
Yeah.
So Jenkins, back to Jenkins.
So what do I think?
I think it shows just the power of the tools
and the power of the community
to decide that you can fork something.
I mean, forking when renaming
wasn't just Jenkins itself.
It was every plugin.
I mean, every plugin has essentially
had to fork itself, rename itself,
then go back to the original mailing list or original project
and say, I no longer want to be a contributor.
I mean, as a grassroots movement, it was exceptionally well executed.
And I don't know that Oracle's really left with anything
that they aren't trying to make up themselves.
But it was very disappointing.
I mean, it was annoying that Oracle first went and got the trademark that they realized
they didn't have.
They weren't really putting any resources into it except turning up to the one meeting
I went to for Hudson, and they had an Oracle representative there.
Everyone assumed they had the brand, the trademark, but it turns out they didn't right up until
they decided that they were going to start meddling.
Have you seen Travis?
This is a product because I don't know anyone called travis have you met travis it's a very social conversation no but uh what about barry
no travis just dropped i guess uh this last week it's a very alpha distributed uh continuous uh
integration for ruby oh yeah the name no i
haven't played with it i i um um i must admit i've i've kind of made decisions around about this and
people should just use jenkins and be done with it i mean it works it's rock solid um they've got
the plugins we are there's um uh there are people building JRuby plug-in for it, the front side.
But anyway, Charles Lau and his brother are building a JRuby plug-in
so people can write plug-ins that are in Ruby.
And no doubt the work they do there will make it easier for people
to write in other languages as well.
It is just a rock-solid CI workflow engine.
People are building businesses on top of Jenkins
that aren't continuous integration.
They're using it for its workflow engine.
So I get it, the people that are building your own CI tool,
and this is only slightly disrespectful
to everyone else that's building their own.
I get it.
I mean, I've certainly built my own stuff,
but I implore
companies that
have projects that need a CI,
need a continuous deployment solution,
I implore them to at least investigate Jenkins.
If we can all just agree
that this thing is awesome and we start
making our open source contributions around that product,
I think we'll all get a tremendous outcome.
I get nothing out of it. I just think
it's important that we all
focus our energies
I also need to get
Ruby developers to get over this whole Java thing
Yeah
So I guess one more general
open source question
I've had a lot of people
actually I got two or three patches
to a couple of my projects in the last week and people said
please be – I just want to say careful or like this is my first patch.
So I apologize if something is wrong and they were like incredibly tenuous about their contribution.
So what do you think the open source community can do to actually encourage people to get into open source and contribute?
I mean this has been sort of a long question, but...
I think we should always remember
that we're lucky that open source exists anyway
and that it's full of disparate humans
who all have different motivations
and some days we're happy and some days we're sad.
Some days our wives appreciate what we do
and some days they get annoyed at us.
And if you make your first contribution to to a project and
you don't get the positive warm loving cuddle that you expected or thought you might get um don't
don't give up you know not everyone's going to get back to you if you contribute to one of my
projects and you don't hear back from me for six to 12 months, that is unfortunate.
And so I assume that I'm just catching that for myself.
It is not that I don't like you or don't know who you are or whatever.
If I'm not using that project,
it's really hard for me to validate the merit of your patch.
But, I mean, just keep contributing. Understand that that's your first step of 10,000 contributions.
And I am very glad.
I wish there was like a badge that you could get.
I made my first commit.
It probably is one of those little badges that you can get.
It was a wonderful experience.
And I must admit,
I forget what it's like to make my first contribution.
It was back in the subversion days.
I remember I had to figure out how subversion worked.
There's a big learning curve just to making your first contribution,
to go from being a user of libraries to becoming a contributor to libraries.
Definitely.
I think I write a blog post that's very old and tired,
and there's probably better ones now.
But for the people making the contributions keep you know i i employ
you to do it i mean i know that we a lot of employers are certainly here at engine yard
we look at github accounts we look at your commits look at your projects you know because we want to
see what you're interested in what you're capable. We want to see that you've taken that manly step.
I don't mean manly, sorry, in the sense of gender.
That maturity step of knowing that you can contribute beyond just your own code base.
That solving your own application problem
sometimes involves fixing other people's stuff
because that shows initiative.
Do you think the open source portfolio
is the new developer resume?
Yep, absolutely.
I think, I know there was a project recently,
that GitHub resume project, that was kind of cute.
I don't think that's the end of it,
but it might be cool for people to add tag.
This is my favorite commit.
But I think that certainly it's a starting point for for real conversation
but it's also you know getting out learning that how to talk in front of public going and talking
at local groups about your project communicating um why you did something i think that is that is
how you're going to get real jobs and real distinction um contributing is is one part of
that contributing code is one part of that. Contributing code is one part of that. Contributing
at meetings, helping run meetings, each of those is valuable and gives you visibility.
And with visibility comes opportunities. What's been your biggest adjustment to life
in the Northern Hemisphere? Well, it took me a few weeks, but I now drive on the correct side
of the road. That's not obvious.
Those multi-lane freeways are really quite treacherous
if you're on the wrong one.
You flash your headlights, but nothing changes.
They get really angry at you.
I actually got my temporary driver's license the other day.
Biggest adjustments is dealing with my children's accents changing.
Dealing with them picking up new words that uh you know we always we thought accent might be the issue but then coming back with with all the american phrases and then pronunciations that's
actually that's a bit of an adjustment it is weird realizing that we are the foreigners
in someone else's country now we've lived overseas, so this is not that new to us.
But hearing our children evolve so quickly is emotionally challenging.
And you've got a new addition as well, right?
We do.
And three-week-old Charlie,
his accent is still pretty rock-solid Australian at the moment.
He can do...
like an Australian.
We'll worry about him in a year's time when he starts.
Because we were tweeting back and forth about a post I did on the changelog and I found out later that everybody's congratulating you on the new edition.
Yeah, I must be.
I was actually in a hospital for a few listeners.
So, yeah, there was the post.
What was it?
It was just inappropriately titled.
It was a post of really it's a list of things people should do in their project.
But then you put some wacky title on it.
Like, I'm not going to use your project unless you do the following.
It works.
It sucks to be you.
But then your tweet said something completely different.
And so I was confused as to what message you were trying to convey.
And yes, I did happen to be in the hospital,
standing next to my wife who had just been put into the post delivery room.
It wasn't entirely the best timing, but you know,
you started a fight on the internet and I needed to.
It's like I, speaking of people that are tirelessly helpful,
Wayne from RVM one time,
I heard a podcast where he was giving an interview and they heard some typing and they said,
Wayne, are you on IRC helping someone right now?
And he was like, yeah, maybe.
And I guess like while he was being interviewed, he was like helping somebody out fixing their RVM problem over on Freenode.
He'll be at Red Dirt.
Yeah, he'll be at Red Dirt. So Wayne and I work together, obviously in part on Rails Installer,
but Wayne's here at Engine Yard doing some internal stuff as well
for customers and all the projects that are going on here.
And he's a wonderfully energetic man.
It's awesome to work with.
I'm very glad he came back to Engine Yard.
I'm glad he's not somewhere else helping someone else.
So what out there has got you excited?
What open source do you just want to play with?
The last month or so, I've been doing a couple of internal projects
that we're going to release to the customers.
So I must admit that that's kind of,
whilst it still has the excitement of building a new product
and a project that I would have otherwise done anyway
as a non-company person,
I guess those have been my attraction. and a project that I would have otherwise done anyway as a non-company person.
I guess those have been my attraction.
Look, I'm pretty desperate to get my hands on some of this stuff around JRuby and Jetty.
And Carl Lurch has been building a thing called Kirk,
which is like a new web server for JRuby,
which a whole bunch of, you know, ZeroDeploy invented.
And I think that's going to be very
enabling and hopefully we can get it out of product if it's
you know, help it get rock solid.
I want
to learn more about all the fun
stuff that's in the Java community that I
get to, if I just knew what it was
because I've, okay
so here's the problem. You've got to look hard.
There's a RubyGems Twitter account
and all it is is all the things get released,
which is hundreds a day.
I get it, right?
So my Twitter feed is half filled
with these product announcers.
But at least I have a vague awareness
of what's coming out.
Plus Ruby News and JavaScript retweets, et cetera.
But I have no idea what the Java world is building.
Therefore, what I'm not being able to use
because I don't know about it.
So that's the challenge with the JRuby project
is it allows you to do all this stuff,
but then you've kind of got to live in two communities
to be able to take advantage of it.
And, you know, this building massive web scale applications,
I think there's a bunch of cool stuff
that I reckon we'll find over in the Java community
if we were just to go and have a dig around.
So what am I excited about at the moment?
That's Kirk.
What am I excited about in the future is finding more gold.
I'm also very still excited about the Jenkins project.
I want to see someone lay the foundation.
We have a CLI for that.
It's a bit more sort of client Ruby orientated.
So you can point it at a project and it goes sort of Jenkins
create dot and it automatically
creates a job and starts running your tests
without doing any setup. That's very cool.
So pushing that further out and sort of making
continuous deployment
easy. I just want testing to be
doing CI to be easier to do than
not to. Is that too much to ask?
Seriously? Indeed.
Everyone writes tests. How many people have actually
got functioning CI servers running?
I mean, hearts, you know,
promises, they look after,
they care about it, and I don't think
there's enough people.
I think there's a lot of lip talk to this
whole conversation, and part of it is
it's still just not easy enough.
And this is me looking at this Travis article that you guys
did the other day, and, you know, there's still steps and it's still, you got to set it up, um, and, uh,
and maintain it. So I think there's, you know, there's a, there's a big space there to people
make the world a better place, which is keeping, keeping CI simple. Well, we know you're a busy man.
Surely appreciate you taking the time to talk with us look on the changelog show
this is the biggest show in the world at the moment
thank you very much for inviting me
it's been awesome
I see it in my eyes See you then.