NATHANIEL MANISTA: Welcome to Google Developers Live.
I'm Nathaniel Manista of Google's Open Source programs
office, and I'd like to introduce Drew Rodman.
Drew is here to tell us about his experience
with Google Summer of Code.
Drew, first tell us about yourself.
DREW RODMAN: Hey Nathaniel, thank you for having me.
So my name is Drew.
I'm currently a fourth year university student,
and I first participated in Google Summer of Code
during my second year at university,
and I have had a phenomenal experience thus far.
NATHANIEL MANISTA: How did you learn
about Google Summer of Code, and then
what made you decide that it was the right way
to spend your summer?
DREW RODMAN: So I first heard about it
through my college's computer science department.
There was a little bit of buzz about it,
apparently the chair of my department
had talked it up a little bit, so I
decided to investigate a little bit.
It ended up being a great way for students
to get involved into open source, who may not normally
either have the ability or have the time.
And Google Summer of Code, I think
provides the opportunity to really prioritize
getting involved like that, so I happened
to pick a couple of projects and went with it.
NATHANIEL MANISTA: What was the application process like?
DREW RODMAN: So the particular application
I chose-- I'll speak more to my most recent organization
--but the project I chose was called Melange, which provides
a platform for running open source contribution
workflows, mainly Google Summer of Code and Google Code It.
The way I happened to pick that project,
I was just looking through-- it could be a little overwhelming
for students who have never participated in an open source
organization before, particularly
when you have all these topics and orgs and what not.
So I picked-- I was looking for keywords, things like Python,
Django Web Development, things I'm familiar with-- which
I recommend you do if you're looking to apply
--and ended up selecting Melange and coming up with a project.
And through the span of a couple of weeks
or so communicated with the organization
and potential mentors and built up requirements,
and the project picked itself.
NATHANIEL MANISTA: Tell us about the particular work
that you did on this project.
What did you build?
DREW RODMAN: So the template for the project
itself revolved around the existing system for connecting
organizations with mentors and organization administrators.
So the existing system had-- you know, it worked, but it
had a couple of flaws and flexibility problems
that we were looking to address.
So my initial project was to go and fix all those problems
and come up with a more reliable system.
What I ended up doing-- which is a good example of evolving
requirements --but what I ended up doing
was actually rebuilding that entire system
to produce a more robust and flexible work flow for that.
NATHANIEL MANISTA: That sounds like a lot of work.
Tell us about how you did it, and what
was your average day like over the summer?
DREW RODMAN: So was a project, and I got myself into a little
bit of a trap where I was actually working part time
as well as participating in a Google Summer of Code program,
which I will warn you is a little bit difficult,
but is doable .
So on a normal contribution day, or something like that,
I would usually have a current task or design or something
like that that I was working on.
So I would sit down with my designs for the day,
plan out what I wanted to do, or what
I wanted to have accomplished, have
as close to a constant stream of communication
to the mentors and other contributors to the program
as I could, and just try to code through
and design and ask questions and all that kind of stuff
throughout the day.
NATHANIEL MANISTA: So you mentioned
speaking to your mentors.
How many mentors did you have, and how large
was the organization, and how much did you
communicate with them through the course of your project?
DREW RODMAN: So initially the projects technically
had one mentor.
Really, I had two that I more or less
communicated with pretty consistently.
When I first joined the project, it was actually rather small
and has since kind of grown, so I
got used to having new members on throughout the summer.
In terms of the actual communication,
we had several ways that we would actually keep in touch.
You have the requisite blog posts for students every week,
which is a great way to keep you on task.
It's easier than you think it is with updating
everybody and things like that.
We also had weekly Hangouts, so we would all get together
and discuss what we'd been working on through the week,
address any issues and questions and things like that.
We also have an incredibly active mailing list
and are always pretty much on Google Chat or IRC,
and so I had a pretty easy way to get in touch with everyone
if I needed to ask something.
NATHANIEL MANISTA: How did your work finish
and what happened to you after the conclusion of the summer?
DREW RODMAN: So my project requirements did rather kind of
evolve throughout the summer, it step me back a couple of times.
However, I was able to-- with the help of my mentors
and everyone --stay on task and get
an almost perfectly-- or not perfectly,
almost full implementation of the project
by the end of the summer.
It was not complete at the time, so I actually
stayed on with the organization, and I'm still working with them
in order to get that project deployed.
But we did get it up and playing at a couple months or so
after the conclusion of Google Summer of Code.
NATHANIEL MANISTA: OK, we've covered everything
that I wanted to ask.
Do you have anything you'd like to volunteer
for potential students and those curious about summer of code?
DREW RODMAN: Sure.
Sort of as I mentioned, communication
is really, really important.
That can virtually make or break you.
If you are in constant communication
with your mentors, they always know where you are,
you know what they expect from them.
That can really kind of ease the process for you.
It also helps you lay out requirements,
which is very important at the beginning of the program,
as I kind of experienced, since my project did
evolve rather drastically.
My final kind of little bit of advice
is come up with-- even if you don't share it
with anyone, which probably you will.
Even If you don't share it, come up
with a plan or a timeline of things that you want to do.
It makes the whole process way easier
to manage, particularly if you have other commitments
throughout the summer.
NATHANIEL MANISTA: All right, thank you.
Thank you for your time and thank you for joining us.
DREW RODMAN: Thank you for having me.
NATHANIEL MANISTA: All right, take care.
DREW RODMAN: You too.
NATHANIEL MANISTA: Bye.
Thank you for joining us.
I'm Nathaniel Manista, and we look forward
to your applications for Google Summer of Code.