 Like one minute so if you could conclude your fabulous conversing then ish it would be awesome Thank you. I've already heard the volume lower. It's a beautiful thing Okie-dokie. Let's get this party started Folks before I actually begin this closing keynote I would like us all to give a round of applause to the organizers and all the other volunteers who've made positive 2009 Possible and also a big round of applause personally just because I'm asking because Philip just had to go home Sick and is really unwell and was not here for your applause. So some extra applause for Philip So to get started my name is Leslie Hawthorne And I'm a program manager for Google's open source team, and I manage the Google summer of code program And today we're going to be taking a look at Google summer of code behind the scenes sort of The internals of the program that all of you folks don't necessarily get a chance to know about as part of the outside world Here revealed at Fosdham 2009 a bit about me to begin at the beginning I come from the fair state of California shown here in a small red square is in fact the San Francisco Bay area Where I live I also grew up in the San Francisco Bay area Which makes me something of an anomaly in Silicon Valley high-tech given that just about everybody there is a transplant from somewhere else I also attended school locally where at the University of California at Berkeley where I studied medieval English language and literature So of course it makes perfect sense that I'm here hanging out with a bunch of free software geeks Well, they're both about sort of an apprenticeship model in feudalism, right? It was funny. You should laugh now Thank you. All right So as I said today, I'm going to be talking a little bit about the history of the program some of the logistics aspects for running the program as well as lessons learned over time and specifically I'm going to take you through my personal journey into the world of free and open source software and Talk about my personal experiences as a community manager for this group of folks and Hopefully this will be useful to those of you who are thinking about doing your own community outreach initiatives to bring in new contributors And we'll see how it goes. There's gonna be some cute pictures of cats Little gossip should be lots of laughs and if not we can blame that guy right there in the middle who said Leslie we want you to come to Fozdem and give a talk about how you manage to respond to every email you receive within two minutes so Let's begin at the beginning a little bit of history year is 2005 and This dude Larry Page co-founder of Google is thinking about solving a problem And this time Larry's not actually thinking about problems related to internet search. He's thinking about an age-old problem Which is that students go to school? They study very very hard throughout the academic year and then during the summer they take off They drink beer they get jobs that have nothing to do with computer science computer engineering or technology And they begin the academic year again having lost a quarter of what they've learned the year before And Larry felt like this was a real problem even from his own days at Stanford He felt like students were backsliding because they weren't getting employment related to their discipline during the summer And he felt like this was harming not only their employment opportunities later on but just computer science is a discipline, right? So Larry thought okay. We should solve this problem. How should we solve this problem? So, you know Larry being an American said I know let's throw money at it. We have cash so Larry got together with my boss Chris Devona who is the head of open source at Google and said all right We'd like to give you funding for a program to help get students working in computer science over the summer What are your thoughts and? Chris and Larry and a couple of their folks from a couple of their different teams sat down and brainstormed and Lo and behold they came up with the idea for Google summer of code Why not pay students to work to improve free and open source software projects? They get real-world software development experience We can pair them up with a mentor who can actually help them understand how to contribute to their project most effectively They actually get to work in their field during the summer Instead of doing I don't know like the job that I did during college. I delivered pizzas anybody how to do that It's not fun. Yeah, or one of our most successful Google summer of code students Who's only opportunity to work abroad during a summer program was to wash dishes? Again, not fun not terribly related to computer science So what the informal program motto flip bits not burgers is kind of their watchword You know Chris went forth and reached out to his social network Which for those of us who do not speak web 2.0 means he talked to his friends and Said hey, we've got this idea. We've got some funding We're wondering would you guys like to work with some students and you know mentor them over the summer We'll pay the students. We'll give you a donation for mentoring and you guys can find new contributors this way so about 40 projects signed up and This was very much an experiment right no one had ever done anything like this before it was open to students Worldwide for the most part. It was you know, not something that anyone had any idea how to actually make happen and There was no actual infrastructure in place to support the program at this point. So every single thing Was done by email from organizations applying to active mentors From students saying hey, I want to participate. I'd like to work with you. So again very manual process Everything was tracked on the world's largest spreadsheet I have seen this and repeatedly need to open it and it takes approximately two minutes And I wish that none of you ever have to see anything like this as long as you live So there were some lessons learned You know mostly about international finance and taxes again something. I hope none of you ever have to deal with and Yet everyone agreed at the end of it. There were some challenges. There were some problems But this was a game changer, right the open source projects that were participating really felt like they'd gained new contributors new ideas New insights and they were really excited. They wanted to see it happen again all right The year is 2006 and at the very end of March I joined the open source team as a program coordinator to you know Make sure that people got you know, their cheese shirts sent them and to kind of keep order on the mailing list and you know All that other good stuff, so I sat down my first day on the job and I said, okay Chris This whole summer a code thing What do I do a little bit something like this? Okay So you got to go and talk to the lawyers right because you know We don't actually collect any contracts from the open source projects that we work with we do all this stuff We just have like a basic terms of service and that's all we do and we don't like do any copyright assignments Or anything like that We have to make sure that the legal teams comfortable with that because they were comfortable with it last year But we don't know if they're so comfortable with it. So why don't you go and talk to lawyers? Oh and by the way, you need to go and talk to the accountants because I don't know It's something about taxes like we can't withhold taxes or we want to withhold taxes I don't know. There's something about taxes. So, you know, make sure you go and talk to the accounting people and oh, yeah We've got this shiny new web application and it's going to you know We're gonna take all applications online. Nothing else is gonna be done by email It's gonna be great and when people submit evaluations of their students They can do that online too. It's gonna be awesome Except it's not really built yet But don't worry it will be and you know, okay. All right So where can I learn more about the web app? Do we have any documentation now? We don't really have any documentation I mean, we got the FAQ and we've got the mailing list archives. You've looked at those, right? Yeah, I read through that already. Okay. Yeah, no, we don't have any documentation, but you know That's a good idea. We should write some documentation. Why don't you do that? Okay, you got it No problem. Oh and by the way, you know in six weeks, we're gonna start taking applications from students And in three weeks, we're gonna start taking applications from mentors And I don't know a couple of students from the first year They don't have their tax form or their t-shirt or their certificate. Yeah, a couple of students And and you know, we need to get all that fixed before we launch summer of code 2006 So make sure you take care of that too and okay go All right Awesome. I like a challenge challenges are great So there I was jumping into the deep end of the pool keep in mind this number that you're looking at right here is The number of lines of source code. I'd read proprietary or otherwise when taking this job This was the number of lines of source code that I had written when taking this job I now have about 800 lines of Python under my belt. I didn't enjoy it I am forever grateful that you folks write code so I don't have to I will always talk to the lawyers so you don't have to You know, this is the number of mailing lists External to my company that I had been on when getting this job You want to get right down to it? This is the number of times I'd used Google groups All right, so, you know, here's a more clear picture of the situation. Oh, sorry So now I wasn't totally and completely You know unaware of what the whole free and open-source software world looked like I mean I'd use Genome Actually, Genome was my first introduction of free software a few years before joining the open-source team a friend of mine was a systems administrator for collab net the company that produces a version and You know, I was over at his house and I wanted to place a memory three So I poked his computer and this weird little iconic thing came up and I'm like, what is this lawn sculpture thing? And he said no, no, no, it's a free desktop operating system blah blah blah blah blah. I'm like, okay, so What does this mean why does it matter and he explained to me what free software was and what open-source software was and that people Were willing to write code and contribute it back to the community for free And I was like, well, this is really cool. I appreciate that ethic. That's really neat But I'm not a programmer. So that didn't really matter to me, right? And yeah, I hadn't really used it in about three years, but You know, hey, I was browsing the web using Firefox. So how much more could there really be to it, right? Can't be that bad Nah, so it was more like pool deep end Me out in the ocean about to be smashed on the rocks But you know, clearly I didn't drown right here. I am and the program has been immensely successful for those of you who appreciate charts and bars and General numerics. Here's a look at the program over the last four years culminating in 2008, which was our biggest offering ever we had nearly 1200 students 175 open source projects and 83 percent of our student participants completed their projects to the satisfaction of Their mentors and mentoring organizations. So to give you another way to look at this Here's the lovely world Here are lines connecting all of our students and mentors who participated in Google summer of code 2006 The same for 2007 For 2008 Here are all the connections that have been made Throughout the world and this is just actually showing three years of the program Given that we had no shiny new web application our data for 2005 is not as beautifully beautifully visualized So what does it take to make this happen? What does it take to bring together people in 98 countries across time zones language barriers and help them to you know Get together and write great software well It's not money money is not the only answer. It's really the shirt, but we'll get that later So it's not shipping out a whole bunch of books on software engineering and software architecture all over the world it's not getting Buried in an avalanche of t-shirts, which actually happens every year It's not even fighting off killer robots While you're attempting to just ship out checks to people all over the world either No, it actually takes particular qualities and a particular set of Skills in a community manager to actually make this happen. So let's talk a little bit about what some of those are First of all empathy You need to be able to put yourself in the shoes of someone who is a brand new contributor who has absolutely no experience and Be able to help them through that initial set of hurdles as they're trepidatious and nervous concerned kind of not really sure where to turn and We hear from our mentors in the program frequently That the largest barrier to entry that their students have is simply this nervousness this fear They don't they're not used to communicating in public They're not they hesitate to send their patches or their questions to a development mailing list They don't want to talk in IRC. They'd rather just send private mail to their mentor and You know the general reason for that is they feel intimidated, right? a lot of these people are on mailing lists with gods of open source and who wants to look like an idiot in front of your hero, right? We're talking about people like say these three gentlemen the gentleman in the middle Andrew Tragelle Who in addition to being known for his work on Sam been our sink is actually the most intelligent man in all of Australia no pressure Or how about the gentleman in the black shirt sitting down Brian Aker the lead architect of my SQL again? no pressure You could be in a really interesting situation where you could be hanging out on a mailing list or in an IRC channel with a Gentleman like John Maddog Hall shown seated there playing with this camera You know one of the graybeards One of the people who's been around in computing since the very very beginning again no pressure And I could certainly empathize with all of our students who are concerned about this process because I Got to be on a mailing list with all of them and embarrass myself And embarrass myself. I did frequently actually now these of course are just the folks who are Community members that I was working with during summer of code 2006. Let's talk about the folks that I was working with at Google my boss Former slash dot editor, you know the dude who talks about Linux on tech TV He was sharing an office with the guy who was the chairman of the Apache software foundation And you know the couple of engineers on my team early on they were some of the original developers of Subversion in fact at the time I was sharing a cubicle with this gentleman Carl Fogel who in addition for being known to his work on CVS is Quite literally The guy who wrote the book on producing open-source software No pressure. My friends. There is one word in the English language for this situation It's intimidating Actually, there's three words. It's Again, remember when you're when you're dealing with brand new contributors And you know, certainly this advice goes for those of you participating in Google summer of code as mentors But just in general if you're interested in bringing new people into your project remember to be empathetic Remember that time that you didn't know everything when this wasn't just you know Something that you didn't even have to think about and remember what it feels like to be in that situation and think oh Man anything I do is just gonna be a total screw up and I'm totally gonna embarrass myself again empathy is key So what kept me going right in the face of really just getting intimidating That thing was curiosity and I think that that's what you're going to find actually is a great way for you to separate out newbies who come to your project successful potential successes from Potential time sucks shall we say right curious people Come to your project. They have questions and everyone starts off with questions, right? And maybe they don't look at things quite the right way But what's new contributors are worth spending time on is the difference between finding someone who's curious and if you point them In the right direction for example, go look at this part of the documentation Check out the comments in this part of the source code And if they come back to you with useful questions or suggestions or even a patch Probably good potential new contributor if they come back to you saying yeah, I read it and I didn't get it And can you just like tell me what it says? Probably not so much a good use of time so My curiosity was actually about these people right. I'm a people geek. I love knowing how people work I love knowing what makes them tick why they get excited about the things that they do This picture is actually taken at one of our annual mentor summits each year We invite two mentors from each open source project that participated in summer of code to come and hang out with us and Talk about how to improve the program and also how to improve open source overall and I really just wanted to know Who are these people? Why do they do what they do? What makes this academic guy who's a professor at Portland State the same thing as that guy who owns his own Proprietary software company, but works on open source and that dude who's a game developer and that guy over there who's like Playing the oboe in one of our conference rooms all day to like you know get the vibe going on Why are they here? What do they want? What makes them tick and how can we help them get more cool stuff done? so needless to say a role like this requires people skills and It's not just dno being able to make people feel good when they're feeling socially awkward because you yourself have a tendency to be socially awkward It's not just knowing that you know your hacker friends like the occasional free beer That's sort of the obvious No, what I mean by people skills is the ability to talk to folks from multiple different disciplines profession walks of life and Actually be able to understand what they want So here's an example. This is my typical everyday life I'm at my housewarming party and my roommate who works on the free BSD project proceeds to you know Bring in guests as they enter the front door and then introduce them to each other Purely based on project affiliation PC BSD not BSD open BSD is over there and like my yeah my roommates the Google summer of code shake and like free BSD is in the corner over there, and I think there's one dude from the KDE and he's over there. Bye That was it. You know when I was weighing patiently. I'm like IRC handle anybody. No these things we call names No, not happening and yet. This didn't strike me as all that odd Wasn't that big of a deal Now my friends. I don't think I need to tell you that this is not what most people would call a normal conversation Not really. No, not so much. They believe in these things. We call names You need to be able to be the kind of person who can walk out of that situation feeling completely non-plussed and Feel equally comfortable walking into an office with you know a team of lawyers and Proposing to them some crazy notion that you know You want to run this worldwide program for kids to write software and know by the way You know we aren't actually going to probably use most of the software that we get written through this and we're gonna Pay them and we're not going to expect anything back from it. Oh, yeah We don't really want to get in copyright assignments or you know a bunch of contractual stuff because then we'll never actually be able to Do this so Can you make this happen for me? Kenny now fortunately our lawyers are paid to say yes, but I can imagine I Can imagine not all of you will have that good fortune So this is when your powers of persuasion and your ability to meet someone Where they're at and really understand that say lawyers are typically paid to be risk-averse and Understanding that your way of helping them understand how to help you get what you want is to speak to that risk aversion and Then you know you need to go into the next room and talk to the accounting people Who are really concerned about dollars and cents in the bottom line and Who will still never quite understand why you're going to give away all this money to people who are not actually doing anything for you Can you explain that to me again? Sure. What is this open source thing? I'll explain it to you again. No problem. And finally, they just look at you and go, okay Well, I still don't get it and that's cool But you know we need to pay students in a particular method because you know Well, it used to be that we were using Western Union, but we discovered that their fees were far too high So now we're gonna pay people using stored value cards and no We can't really give you a report about all the payments We made last year because the back end system to do that isn't where it needs to be So I hope you kept a spreadsheet of everybody you paid And you know by the way, we were experimenting with a new payment system And so we'd like your program to be the trial run for that because we figure summer of code looks most the most like Paying everybody in the whole world because you've got like 90 countries, right? So you want to help us experiment? Yeah, that'd be great. Let's do it. All right Then you need to be able to do things like worry about taking care of the people that you care about in meat space, right? This is a picture of the Google plaques. We host developer conferences there all the time And you need to be able to talk to folks like your security guards Who really are paid to say no who are paid to wander around making sure that everyone is not up to no good And you know talk to them and say hey guys So, um, you know, I've got some people coming in and they they work for you know free and open-source software projects And they really don't want to execute the NDA. So can we not make them sign the NDA? Oh No, everyone has signed the NDA. It's absolutely required everyone signs the NDA. It's very important. We sign the NDA But they're not actually going to be anywhere where they could see trade secrets Well, it's very interesting. I don't know. I didn't really think they still use on the end here But but I promise you they won't actually go anywhere where they're not supposed to go. I know these people. I trust these people All right fine. They don't have to sign the NDA, but yeah, no problem. Don't worry about it. It's gonna be all good And you know them there was the the wonderful fabulous her love so um Hey Marty is our director of security again the guy who gets paid to be risk-averse and say no just as much as lawyers usually So, you know, we have all these great developer conferences here, and it's really cool So we want everybody to be able to videotape their sessions. Oh No, no, no nobody gets a video to have anything around Google. It's not okay, but Marty They're not talking about anything related to Google. Are you sure they're not talking about anything related to Google? I'm positive. This isn't even Google stuff. Well, then why are they here? Because we love them and we have extra food and bandwidth that we need to feed to our hacker friends All right fine. Go ahead. It's fine, right? Just go ahead and do it just make sure nothing bad happens So if you're gonna be a good community manager, you need to be the kind of person who can talk to all of these people and get them all moving in the same direction and Folks, I assure you this is not actually easy But if you're good at it, you make it look easy And a lot of this is just about being a good listener, right? Actually sitting down and taking the time to communicate with people Talk to them about what their concerns are talk to them about their constraints talk to them about what their needs are and Not only just listen, but take the time to understand their motivations, right? Why is this dude worried about someone videotaping a session? Well, he's worried that you know Google trade secrets are going to leak out onto the interwebs Fortunately, we don't have to worry about that Why are our lawyers worried about copyright assignment? Well, they're worried that we might get sued But that's not gonna happen and if you can actually make a plan that speaks to everyone's motivations Then you actually achieve, you know, you get consensus you get success and life is good You'll find that when you do this you're actually becoming a connector what you're doing is you're taking the opportunity To understand members of your community Be that you know your legal team your accountants or in your case other folks in your free and open-source software projects And you'll know You'll be able to best assess the strengths and weaknesses of all your participants and you'll know whom to connect with whom if You want to get things done In the case of bringing in new participants, it may be that you have somebody who's just totally solid and brilliant technically, right? And they don't necessarily have a lot of patience say for newbie questions This is not someone to pair with a newbie is not a good idea On the other hand you might have someone who's incredibly enthusiastic about you know bringing in new contributors someone who really likes teaching someone who really likes mentoring and Yet they're not necessarily the right person to pair up with someone who's looking to enhance their technical skill set in a particular Area and that's when you make you know you go ahead and you make the call Who do I put how who do I put together to make good stuff happen and to get good stuff done? All right Another thing that happens when you want to be a good community manager and you actually want to do you know outreach initiatives within your group You have to be scrappy and by scrappy. I mean you need to be resourceful. You need to do more with less You need to think about creative ways to use extremely limited resources to get stuff done One of my favorite stories is we did a program for high school students to get them involved in open source We'll talk a little bit about that later, but we had no way to actually manage The program that we wanted to do so we just you know sort of use the Google Code issue tracker Because it was there and we could make notes and it you know actually tracked everything, you know Almost killed a couple people, but that's all right So that being said You know I tell people that you know at Google we believe in doing more with less and people look at me and go Nah, you're a big multinational corporation. You got lots and lots of money You don't have to do more with less and I go no no this this she is not true This is the number of people on Google's open source team. So this is the number of people at Google 20,000 person company who are responsible for all open source stuff nine people of those ninth people three Shown here in front of the awesome Android statue myself shown here actual size cat almond shown their actual size And she's going to stand up or I'm going to miss Will the real cat almond please stand up? Thank you very much and The lovely miss Ellen co a recent addition to our team. We're responsible for all of the people-oriented stuff That Google does around Open source software, so that's Google summer of code that is our High school program the Google highly open participation contest That is all of the news about the events We run the code we release and all the stuff that we're doing in the wider world of open source software On the Google open source blog and we're also responsible for hosting all of those wonderful events when people come to our campus and Hang out with us and hack and get stuff done So like I said, it's all about doing more with less Now it shouldn't surprise you that that's the case because really our team is focused on getting code released right and making sure that when we do big open source projects like Android, they're done right and You know correctly in terms of licensing, right and what that basically means is When we're talking, oh, sorry, we have have released 212 projects thousands of lines of code. It's very exciting and basically what that means is We get 25% of an engineer for this program on a good day The system that we've been using as infrastructure has built been built almost entirely by interns It's not maintained when the program is not in session. We get to experience the joys of bit rot How many of you here have experienced the joys of the current Google summer of code web application? How many years did it take off your life? two three five yeah ten there you go so Needless to say as we would not like to shorten the lifespan of our friends We came up with a great solution to this problem, which was also a great solution to another problem Which is folks would consistently come to us and say we think summer of code is great We want to run our own grant program. We'd really like to take your code and your infrastructure and reuse it We had to say well It's entirely dependent on Google infrastructure. We can't help you and now we have the lovely Malone's project Yes, it's named after the spice that extends life and consciousness Since we knew we were taking years off your life in the first place That is a cool picture of connect the dots call a trace. I like so fortunately We are going to be talking a bit more about Malone's and how you folks could use it as well If you'd like this is the first open source project that Google's done in the open from commit one So if you're interested in doing your own new the outreach program, you can take that code and make use of it But for now I will beg your patience Patience another key aspect of dealing with the newbie So and I consistently get asked by folks like how do you manage to not like go nuts with all of the stupid question emails? You get and and it is hard You know because you get asked the same question over and over and over and over and Sometimes it looks a little different But it's basically the same question and it's in the same thread And usually it's someone exploring some corner case that has nothing to do with reality like Well, I'd really like to do part of my project from to Jerkistan And I'd like to do part of my project from the Canary Islands when I'd like to do part of my project from New York And then after that I thought I'd like you know, I don't know not submit my code at the end. Can I still pass? No, really. No, not again not gonna happen, right? So needless to say Situations like these are going to cause even the best of us a small amount of frustration a little bit of consternation In fact, it may even cause you to think my god. Do I need to schedule you for an appointment with a clue bat? But you know then that's when you take your moment to to relax To repent reflect reboot To enhance your patience. You do not scream RTFM you may think it really loudly But you do not actually say it and this is for a couple of reasons one Believe it or not, this phrase is completely non-helpful folks You know, there were many occasions as I started off on this wonderful journey when perhaps there was no M for me to read There were times when I would go and ask Google before asking dumb questions And since I had absolutely no idea where to start all the search results that came back to me were utterly useless And another thing to realize is this is a great answer to someone who looks just like you who acts just like you If you're already here if you're already involved in free and open source software You are the kind of person who's gonna go and dig your hands in deep and you're gonna figure it out No matter what and you're gonna push on it You're gonna bang on it till you have an answer and if we're trying to bring more people in if we're trying to bring in new Ideas and fresh perspectives those people aren't already here if they already were going to just benefit from an answer like this We would have already found them So this doesn't actually help us bring new people in and that is a bad and sad thing And the other reason why this is is not really such a good thing to say is you have to figure you're not just looking for the new inexperienced contributor who is going to go I And run away screaming like a scared bunny How about the experience contributor someone who actually knows how to program already someone who actually knows how your system works Who they've already checked out your source code and figured it all out What happens when they come and try and engage with your community and they hang out in your IRC channel and Everyone's being kind of caddy to each other and you know saying stuff like that What's gonna happen when they look through your list archive, and they're like whoa flamefest central This is not always a compelling strategy to get someone to spend their free time writing your free software so therefore I recommend patience gentleness and You know you will have to repeat the same answer to the same dumb question over and over and over again And that is okay cast a wide bet see what comes back the investment. I assure you is worthwhile Be available if you're looking to bring new people into your community You really need to be available and what I mean by be available is you need to be there to answer questions and really motivate things along I know when I joined the open source programs office in 2006 I was highly available. I was getting about four hours of sleep at night I was literally responding to every email within two minutes of receiving it I was in IRC constantly and you know it has gotten a lot better since then and that is a good and beautiful thing But the point is I wanted to be there to facilitate to make sure people had the information that they needed to be successful And that's really what being available is about and I don't know I Don't know too many people who when they send their hey, I'm on vacation mail. It goes to this number of people Maybe some of you in the audience. This is the case But the point I'm trying to make is you can't scale infinitely but if you're really interested in being new bringing new people into your project you need to make yourself available and Yes, it's a lot of work. I assure you it's worthwhile and if I did it so can you What you're gonna find when you're doing something that's incredibly successful is you're gonna end up inspiring people They're going to look at what you're doing and they're going to want to do something a lot like it just like it I've personally talked to Numerous projects who have participated in summer of code or have just looked at the summer of code model and said oh My gosh, we love what you're doing. How do we do something just like it? And it's anything from say the open medical records system project that Started participating in summer of code in 2007. They were making a Database for medical records and it was all to be deployed within the developing world specifically focusing on patients who had AIDS and They came to me and they're like we have no developers in Africa Our software is being deployed in Africa. We think this is a bad thing. What do we do to solve this problem? So, you know, I sat down and hashed out with them a couple of different ideas And in fact their first externship program was mentally successful or Say talking to the OLPC folks about their summer of content project and how they you know stop Yeah, oh That's sorry My bad. Anyway, so talking to the OLPC folks about their summer of content project and you know They were trying to get content creator for the XO laptop and like You know, I don't know. What was it in three months? We want to get like a thousand different documents and at least 15 different languages and how do we make this happen? And we want to use the summer of code model and how do we figure out how to pay people and and that was a very long and Interesting meeting about workarounds for the vagaries of international finance Let me tell you It's munchin that I was going to talk about this before sometimes you can even take a moment to inspire yourself I've been working on summer of code for two years and I was really excited about it But I thought I want to do something new. I want to do something that has a greater impact a larger outreach And summer of code is awesome because it gets college and university students, you know involved in this world But by the time you get to college, isn't it already a little too late? I mean What if your college doesn't do anything open source? You're gonna have you're gonna spend a lot of time, you know fighting to actually be able to work on this stuff What if we get you get you while you're even younger? Why not so we came up with the idea for the Google highly open participation contest So we went to ten different open source projects and we said hey Do you have a lot of stuff that you want to get done that no one ever gets to that's kind of like bite-sized work And I said yeah, we have a ton of stuff like that like okay great Make me a task list make me a to-do list your dream stuff that you all want to get done And no one has time to work on it, you know, don't make it too difficult, right? Like yeah rewrite my entire file system. No, not so much that and You know, we'll go ahead and we'll fund high school students secondary schoolers To work on this and in two months. We had 350 kids 40 countries a thousand of the little bite-sized chunks of work Done that was amazing Do we have any Google highly open participation contest students here? Ah We have one mentor there. I heard there was a girl from Holland who is a participant where I see pointing Rock feel success shown actual size. All right. I think probably one of the most essential aspects of being a good community manager and bringing in newbies is humility and I don't just mean humility in the sense of not being overly convinced of your own self-worth I also mean humility in a very different way and I will explain to you what I mean This is humility of knowing when you know too much So this lovely poster Resides in the window of a local restaurant that I frequent called El Pollo loco Which for my friends who are not Spanish language enabled means the crazy chicken shockingly enough these guys serve chicken and I was walking up one night to get dinner and I went. Hey, we cater. This is good. I like having friends over We like chicken. Maybe I don't have to cook. That's not so bad I can make my vegetarian friends some hummus for good and then I went One eight eight EPL to go and I literally just stopped in the middle of the park. You want what went? Eps, what is the eclipse public license have to do with chicken? Well, oh Yeah, El Pollo loco. Yeah, got it. Okay, and that was what I knew I was never going to effectively be able to look at anything with the eyes of a newbie not when my initial reaction to something that is clearly Has nothing to do with technology was a technical response, right? And so sometimes if you're working with someone who has no experience and you're trying really hard to explain something to them And you know that they're just not getting it and you know that they're enthusiastic and they are a good use of time Sometimes you need to be humble enough to step back and say I'm not the right person to help you I can't see this problem in a way that I can explain it to you that will be useful to you and then stepping back and Connecting them with the right person That being said There is also that whole ego thing ego is is sometimes rampant among our kind and I'm not gonna spend a lot of time touching on that but I Think that there is something else to be said about ego in a completely different fashion and that is Not thinking enough of one's own accomplishments, right? Not having any ego at all Like I said when I first started off You know in summer of code. I had no experience. I had no idea what I was doing and Frankly, it wasn't like there was any template or model for me to work from because no one had ever done it before and what we were doing Changed almost completely from 2005 to 2006 in terms of workflow And so, you know people would come to me and they'd say oh my gosh, you're doing a great job You know, this is really cool. And I'd say Thanks. I try and I didn't believe them and then eventually I did it for a while And I thought hey, this is pretty cool and I did believe them But you know there were a lot of you know kind of egotistical people out there and I thought you know I don't I don't want to be one of those people running around being very overly excited about what I accomplished So people would give me compliments and I'd go. Oh, you know, it's not a big deal. Oh Yeah, no, it's cool. Like no anybody could do this. Yeah. No, it's it's fine and You know, that's not necessarily good either Right. I know I know a fair number of folks who are involved in community stuff who have that kind of reaction and We have formed the Mutual Adoration Society to help ourselves get over that and I think the really profound moment for me was one day. I was sitting there talking to my friend Dave DeAnderson and Pound GSSE Anyone know who I'm talking about? Oh You guys do not spend enough time in our IRC channel. Come on down. We're nice. We're friendly. We serve, you know cookies And I was you know, Dave was telling me, you know, oh, you know, you're doing great And I'm like meh He's like well Leslie, you know, you need to respect yourself and your accomplishments and I said, you know, Dave I don't want to be one of those people who runs around being overly pleased with themselves and he's like Leslie Humility is great Don't deny the awesome and I went and I hemmed and hawed and he said no Leslie humility is great Don't deny the awesome And so I looked at him and I thought about and I'm like, you know what Dave? That's really really good advice. I appreciate that. Where did you hear that? And he's like, yeah, don't you remember when you told me that? Like oh Wait, yeah, now I do and that was the best experience. I ever had of someone coding my own advice back to me It's quite good You'll find as you know, you're new I love cats You'll find as you're working with newbies and kind of you know pulling them through the whole process and getting them on board Eventually they'll begin to feel confidence right and as they feel more and more confidence They'll need less and less of your time to make them productive contributors Right and for me myself as I got more and more experience. I too got more and more confidence And if you're a community manager again confidence is one of those essential aspects, right? You need to be the person who's there to lead the charge in matters that are non-technical in matters that are technical It's pretty clear on a lot of times, you know what the answer should be this patch caused regressions Maybe not so much Implementing a feature this way is going to cause a performance problem. Maybe not so much in matters that aren't necessarily Tactical aren't necessarily measurable. This is where a community manager comes in and just makes a decision, right? I think that we should market our you know latest event this way I think that we should structure our program timeline this way And you need to just step out make a decision and not only that but have the confidence to know that you are Going to make mistakes You are probably going to make a lot of mistakes in fact I guarantee you that you will make a lot of mistakes and that's okay You just need to have the confidence to know that you're going to be able to do it and that course corrections are a good thing when needed I Haven't talked anything about this yet, but I'm hoping it's coming through in my articulation If you want to bring new people into your project you need to have passion. I am incredibly passionate about what I do I cannot Imagine having a more awesome job. I get paid To help students learn more about what they're really passionate about to become better computer scientists to get their awesome dream jobs I get cool mails like hey Leslie I just graduated from college and I just got married and I use my summer of code money for my wedding and I hope you can come Whoa dude This is not you know These are not experiences that I think most people get to have and and you know What really helps me be passionate is is those experiences and that the awesome community of folks that I get to interact with right and the cool thing About that passion is that passion is infectious That enthusiasm really draws people in they want to know what it is that makes you so excited They want to be a part of it Right, so have your passion feel your love and display that passion And last but not least no one to ask for help I know like I said first year summer of code getting about four hours of sleep at night It was not fun and that was mostly because I didn't know anybody right? I you know I had no idea who all these people were and after a while as I was reading more posts on the mailing list and Spending more time in our IRC channel and really getting to know people. I'm like okay Has clue has clue reliable has clue judicious patient You're the kind of person who's gonna get cranky later. Maybe not so much with you And you know and these are the kinds of people who you know when there was a flame war starting on the mailing list And maybe it wasn't the best time for me to step in I'm like hey, dude. Yep got it You know our second year we had eight channel ops who weren't Googlers and our IRC channel I asked the community to work with me to create documentation about advice for mentoring organizations and Advice for students that we publish as a resource for the program even though it's Google's program because guess what? I can't give good advice as a mentor or a student. I haven't been one and Speaking of asking for help We're going back to that lovely little picture of you know Paula Trady's my hero So melange the melange project as I said before is the next generation framework to manage the Google Summer of Code program and We went out and asked the community for help and contributions because as I said we have about 25% of an engineer on a good day And we were really excited when we were actually able to take this project and make it a community owned and community driven project just about a month ago I'd like to introduce you to Pavel. So yeah, I've pronounced it wrong again. Didn't I? I'm terrible ladies and gentlemen Pavel Swayaga Two-time Google Summer of Code student one-time mentor for his own mentoring organization and the gentleman who got the job washing dishes overseas Instead of writing a free and open source software and he's gonna give you a demo of some of the features of melange So if you want to do your own newbie outreach initiatives or externship programs, you can see what the code base looks like and See what you want to do with it? Or you might want to contribute because it's in Python and Django and we have this shiny new web application But it's not really done yet Just a thought You don't have to have Mike Okay guys, I'll just do a quick demo what we have so far and and melange The resolution is not really great. Okay Yeah, so Yeah Okay, that's your work Okay, so I will sign out Welcome to our sexy sexy sign in so I'm working right now. Luckily, it's not deployed up to any Google App Engine servers, and I'll just sign in as User then that's ambitious. Yes, and I see the home page and I can create my profile and I can type in my Public name which is user down the course and use a link ID which will show up in the URLs This is actually really really cool because with our old infrastructure every year You had to answer the same data over and over and over again. You don't got it anymore. He's good So we can have many you will summer of code projects in the same web application and we can have G-hop projects and programs too and the same application at the same time so if you're interested in doing a program of your own you can either have a Proposal-based workflow a per-project workflow or you could also have a task-based workflow like you know do this one little small thing for me Okay, it's done. So depending on how you want to work your magic So here is the what the user normal user sees and the user doesn't have any roles yet Like he's not an organization administrator. He's not mentor or student anything. So basically it's just pure user site-wide user and Now I'm going to sign out as a user and sign in as a Administrator of the of the launch and now I see a lot more Right, so I have user as me I have the site settings where I can edit site settings. I can place Google Analytics Google Maps API I can set the home page document if I have some documents I can just type in and nice auto completion shows up and I can select the document I can set the feed URL that will show up on the Main weight page. I can set the terms of service for both programs and The site-wide terms of service if it's needed We can we can create the documents Inside my launch Which we can then reuse for example inside settings we can set up this document as a Home page so for those of you who are actually participating in summer of code right now Do you know how we have documentation in like seven different places? This is the part where you nod we aren't gonna have documentation in seven different places anymore And if you want to use this offer you won't have to have that happen to you either Yep, so we can what else we can do we can list users That's all that's only for the admins, but they can list users and go through them if they need to What else do we have I think I think the chickens are restless Yeah, well, okay, so we have a few terms that need to be explained We have program owner which is a sponsor of the program basically like Google is a program owner We can create a new program owner inside the application We have one already created here This program owners. Hey, this is Google program Who is a program owner here? It's created by a false damn test user And the program owners can include program administrators So we can invite some user to become a program administrator Why don't we show them how to apply to become an organization since that's probably what most people are interested in Can apply to become an organization shown here actual size mentoring organization applications. Yeah, basically you see the form Once you click submit Let's see you can review The organization applications you can go and list and for those of you who are actually planning on applying as Mentoring organizations to Google summer of code all those questions that we're scrolling by really fast or all the same questions You've had to answer for the past two years. So no big surprises there. Yeah, we can list the programs that are currently In the system and we can edit the program if we want if we need to or we can create a new program So you can actually have multiple programs running on the same instance if you wanted to do two parallel programs at the same time Which is pretty cool. Yeah, so I want to create a new program. I can select the program owner Anyway, the point is that it's really cool and awesome and shiny And you will be getting to use this if you are a summer of code participant this year and you know If you would like to contribute to the project. We would always love your help Yeah, that's basically that's it. Thank you We are looking for new contributors if you know Python Django CSS JavaScript or HTML we are looking for help All right folks in case you haven't figured it out. Yes, we are doing Google summer of code 2009 There is the sexy new logo for this year is very pretty harkens back to the whole summer of love We like And we will be taking student applications on the 23rd of March of 2009 So we will be creating all the functionality required in Milange to take student applications Which isn't necessarily there now, but fortunately we can reuse a lot of the code If you would like to learn more about applying as a mentoring organization or about applying as a student our FAQs for 2009 will be published tomorrow at code.google.com There's where to find out more about Milange Where to find out more about open source at Google and check out the blog We spend a lot of time writing for it and you know, we would love it if you would come read it And that's all I got any questions Question Hi, hello, so a lot of the Linux users group within Scotland. I've been wanting to do what you've done with high schools How do we go around doing that? How do we get high school kids to start working on open source software? Okay, that's an awesome question So the gentleman's question was that there are a lot of Linux users groups in Scotland And they'd like to take what we've done with high school students and replicate that model So how do you get high school students involved and free and open-source software development? I would say that there are a couple different ways to do this one Start really really small when you're asking people to do things make tasks discrete and Make them something that you can accomplish with a couple of hours of effort And one of the reasons you want to do that is let's face it We all have the attention span of a nat high school students are no different And the other reason you want to do that is you want to give these students a sense of accomplishment, right? This is a it's a very big world out there and it can be scary if you've never done it before and You still are very much entrenched in the idea of seeing adults as authority figures And if you can actually prove that you can do something if you can have that sense of accomplishment If you can go back and say I've done this work and it was successful Then you're actually gonna find that that is what you know creates more energy and actually gets more people involved The other thing is don't give up red at first. I mean I I had no clue again What I was doing with the highly open participation contest. I just said hey Let's get some high school kids working on open source projects. That sounds awesome And I also thought where do they meet I don't know where to find them I don't want to use Facebook Well, hopefully our friends will find them and that actually happened But you'll find that your momentum builds up more after a couple people get stuff done And then all of a sudden you're gonna get a flood of people going. Oh my god. This is so cool This is so cool. I really really really really really want to do it, but at first it's gonna be like radio silence And if you would like to get some expert advice on this topic We have a high school student contributor right over there who might wish to provide you with some guidance Or we can have a beer later and discuss ways to improve our mutual offerings Other questions comments concerns. Yeah throwing a rotten fruit. I have fruit to throw back. Yeah