Posts from 2013

Monday, December 23, 2013

This week we have a special guest post from a student, Aaron Schmitz, that was a grand prize winner in Google Code-in 2011 and then went on to participate in the Google Summer of Code 2012 program the following year with Joomla, an open source content management system (CMS).

When a Google Code-in blog post caught my eye on a cold November morning, it wasn’t because it was another one of those run of the mill race-to-the-buzzer-on-a-contrived-programming-puzzler type programming competition. No. Google Code-in is different for two important reasons. First, Google Code-in is a marathon, not a sprint. Little did I know how grueling but rewarding those six weeks would be. Second, Google Code-in isn’t about who had spent years memorizing very specific algorithms to solve meaningless and often impractical programming problems with no relation to the real world; instead, Google Code-in contestants write real code that finds its way into real repositories for real projects with real users. As it turned out, some of the work my fellow competitors and I did is now in software packages approaching 1.5 billion downloads! Very few industry professionals have the opportunity to write code with that kind of reach -- let alone a bunch of pre-college kids.

Suffice to say, I was sold on Google Code-in! What could be more amazing than a programming competition designed for students my age (13-17) that tested and strengthened the skills required of real-world developers: endurance, the ability to work as a team towards a common goal, and the need for flexibility. When the first day of the competition finally arrived, I took a relatively simple non-coding task to do some research for an org, submitted the work, and got it accepted. One down; countless to go… I picked up a much harder coding task which I finished many frustrating hours later. Then another… Then another… My weekends disappeared... Then Thanksgiving... Then Christmas…

What kept me going through six challenging weeks of programming day after day after day? For the first time I wasn’t just programming in a vacuum. I was collaborating with a multitude of other students from many countries and time zones. We constantly chattered on IRC and to some extent collaborated on tasks and worked together as a team to accomplish the goals of the open source projects we were helping. Two years later, I’m still friends with a few of my co-competitors even though we live thousands of miles apart and have met each other only once: on the Grand Prize trip.

The greatest thing I gained from Google Code-in, however, wasn’t related to coding at all. Google Code-in changed my life because Google Code-in is where I found my confidence; Google Code-in showed me that I can do anything. The grand prize trip was phenomenal. One day we were being led around the Google campus by people famous in the open source community and the next we’re living it up on a private yacht sailing under the Golden Gate bridge. That week of excitement in Silicon Valley changed my outlook and inspired me towards the path I am on today. I don’t know where my journey leads, but the adventure has been amazing thus far. I challenge you to dive into the same adventure and see where your path takes you - you won’t regret it!

Friday, December 20, 2013

Since 2005, Google Summer of Code has been creating millions of lines of open source code for the world to use. To celebrate the 10th year of the program in 2014, members of Google's Open Source Programs office are traveling the globe visiting countries with high participation rates over the past 9 years of the program.

I was lucky enough to attend one of these events on November 8th in Toronto, Ontario, Canada at the University of Toronto. I'm all for community involvement (especially in my home country!) and it’s very exciting to see Google showing this type of interest. The event was open to anyone interested in learning more about GSoC, Google Code-in and Google’s involvement in the open source community. There was a strong showing with over 60 attendees, including students and mentors from previous years of GSoC as well as students new to the program.

Speakers & Projects
Google Open Source Programs Office team members, Stephanie Taylor and Mary Radomile, spoke about the programs and their success and what the team has planned for the future.

The event also featured eight lightning talks (3-5 minute presentations) given by mentors and former students from the Toronto area who discussed their projects and personal experience with GSoC. They included:

Oh, Canada!
I was amazed to learn Canada has had 869 mentors and 347 students since the program’s inception in 2005. The University of Toronto has had 58 students participate in GSoC making it the #7 school overall in participation!

Wrapup
The event concluded with a reception - dinner, chatting and of course, tons of Google swag. There were several developers and past attendees of the GSoC Mentor summit in attendance who were able to field questions from eager students. I had a long chat with one of these students who had cursory knowledge of GSoC. He came away from the event excited and eager to participate next year. Based on all the ideas that were passed around and new connections made, I would say the event was a resounding success!

Photo by Zoe Song

I’d like to encourage not only GSoC participants to attend future events that Google holds, but also students who are interested in learning more about the program and Google’s contribution to the Open Source community.

Participating in Google Summer of Code and Google Code-in has been an adventure I look forward to each year. I think it would be fantastic to have an annual GSoC meetup here in Toronto where we could help spread the word. I'm already looking forward to the 10th year and all the new developers I will meet!

Wednesday, December 18, 2013

As readers of this blog will know, open-source software like Linux has spurred huge innovation in cloud computing, the mobile web, and the Internet in general. Linux now powers nearly all the world’s supercomputers, runs the International Space Station, and forms the core of Android. But as open source has proliferated, so have the threats against it, particularly using patents. That's why we're expanding our participation in Open Invention Network (OIN), becoming the organization’s first new full board member since 2007.

OIN protects the open-source community through a patent cross-license for Linux and related open-source technologies. The license is free and available to companies, organizations, and individual developers if they agree not to assert their own patents against Linux. OIN also defends against anti-open-source patent aggression through education, reform efforts, and its own defensive patent portfolio.

Over nearly three decades, what is now known as open-source software has benefited consumers all over the world by delivering innovative products and services. We’re committed to helping protect that innovation and are happy to expand our role in OIN.

Friday, December 13, 2013

Today marks the halfway point for Google Code-in 2013, a contest for 13-17 year old pre-university students interested in learning more about open source software development. There is still plenty of time for students to compete in the contest, 3.5 weeks to be exact.

Students will earn a certificate by completing one task in the contest and can earn a Google Code-in 2013 t-shirt when they complete 3 tasks. Many students are also working very hard for a chance at one of the 20 grand prize trips to Google’s Mountain View, California headquarters next April.

During the contest students work on tasks in categories like coding, documentation, quality assurance, outreach, research, training and user interface. Each of these tasks is assigned a mentor who can help the student if they have questions while completing the task.

Google Code-in is a great way for students to use the skills they have been learning in the classroom and apply them to a real open source software project.

Google Code-in 2013 statistics at the halfway point of the contest:

1,085 tasks have been completed with the 10 open source organizations thus far

266 students from 43 countries have completed at least one task in the contest

There are 11 new countries to add to the list of registered students for Google Code-in: Anguilla, Armenia, Cambodia, El Salvador, Ethiopia, Kyrgyz Republic, Lebanon, Mauritius, Panama, Swaziland and the US Virgin Islands.

Wednesday, December 11, 2013

We are excited to announce the open-source release of LiquidFun, a C++ 2D physics library based upon Box2D that includes particle-based fluid simulation.

LiquidFun makes it easier for developers to write games that include realistic fluid physics. For example, this clip shows a circular body falling into a viscous fluid.
The LiquidFun library is written in platform independent C++ which makes it possible to use on any platform that has a C++ compiler. We have provided a method to build the LiquidFun library, example applications, and unit tests for Android, Linux, OSX and Windows.

Game developers can use physics to drive new game mechanics and add realistic physics. Designers can use this library to build beautiful fluid interactive experiences. We’re excited about the possibilities, and want to hear from you about how we can make this even better!

This season we connected 26 of our mentors with 14 students from 9 countries over 4 continents. But the interactions go deeper than that. This was our 7th year participating in GSoC and we had students returning from prior years for another round of the program along with some past students who served as newly minted mentors themselves this year. And the output of these projects is soon to be in the hands of thousands of researchers studying the role of network interactions in biology and medicine.

We also experienced a tragic loss in our community this summer with the passing of Allan Kuchinsky, a champion of open source, network biology and GSoC. In his honor, we put together the Allan Kuchinsky Student Award and presented it to three of our GSoC students from this summer whose projects exemplified the principles of data visualization and good user-centered design that Allan was so passionate about. Congratulations and thanks to these excellent students!

Finally, here are some great quotes from some of our GSoC students this year. If you're considering applying next year -- the 10th year of GSoC! -- then these inspiring words should convince you.

I've taken part in GSoC 4 times as a student working on network visualization techniques for Cytoscape and Cytoscape.js. Over those occasions, I was lucky enough to work with great people from all over the world (Hungary, USA, Canada, Turkey), and develop key abilities that will be really helpful in my professional future. - Gerardo Huck (Argentina) [github]

My project ended up with adding tests, squashing git commits and making a pull request into main repository. Right after doing that I felt like I leveled up. The most important thing besides gathered experience is the fact that I did something tangible and useful. - Truhin Alexandr (Republic of Moldova) [github] [blog]

These unbelievable life changing four months came to an end on 27th Sept when I completed final evaluations of GSoC. Things I learned as a part of GSoC: determination, collaboration with mentor and friends, and patience to read articles and documentation. I obviously will contribute to Cytoscape in future. In short, thanks to all the people involved in making GSoC 2013 a wonderful experience. - Shaik Faizaan (India) [github]

This year's Google Summer of Code was quite an amazing and adventurous journey. It was very exciting and was very challenging. ...I learned a lot during this brief term of GSOC. I was hit with several roadblocks during the project but successfully solved them and made it to the end. - Sri Harsha P (India) [github] [blog]

Thanks to all the NRNB mentors and students, to all the other mentoring organizations, and a big thanks to the GSoC organizers. You have transformed how we work with students and new developers, and have catalyzed a lot of great code. See you next year!

Monday, December 2, 2013

By announcing the Google Summer of Code 2014 program early this year (about 3.5 months earlier than previous years), many students, mentors and open source enthusiasts have been busy organizing meetups across the globe to celebrate the 10th year of the program coming up in 2014. We will continue to post about these global meetups over the coming months.

This week we have a guest post from a former Google Summer of Code student who organized a meetup in his home country of Bosnia and Herzegovina. Enjoy.

For some time now I thought it was time for Bosnia and Herzegovina to have a Google Summer of Code meetup. In the past 9 years of GSoC, Bosnia had 4 different students doing 5 projects. A few times I thought about organizing the meetup but I was not sure if anybody would come to listen to what I have to say, and I finally decided to take this project on myself and was excited to see the results.

The meetup
After successfully completing the Google Summer of Code program as a student twice (in 2012 and 2013), I now had a lot of insight into the program and people had more reason to be interested in my talk.

We kicked things off with GSoC slides and an overview of the program, including info about projects from previous years, open source/free software in general and a few tips and tricks. I wrapped up with some of my personal experiences in the program. Probably the most important thing that happened at the meetup was to alleviate some of the fear around applying for Google Summer of Code. It took me two years to get it together and gather the nerve to send my first email to a mentoring organization, so I tried to explain to the people at the meetup that they should not be afraid, "If I could do it, why can't you?"

Based on the number of questions and the quality of the discussion after the presentation, it was clear that the main goal of the meetup was achieved: drive interest in the program. A number of students that came to the meetup plan on applying for GSoC, and though this is still a relatively small number, it's the beginning of what will hopefully be strong participation from Bosnia and Herzegovina students. I look forward to organizing at least one more meetup in the future.

Friday, November 29, 2013

Google Summer of Code 2013 was a resounding success for phpMyAdmin. All six of our students finished their projects and their code is merged with the phpMyAdmin codebase and will be part of the upcoming 4.1 release. phpMyAdmin is a free software tool written in PHP, intended to handle the administration of MySQL over the Web. phpMyAdmin supports a wide range of operations on MySQL, MariaDB and Drizzle.

Students Bin Zu and Supun Nakandala refactored many scripts this summer. All the scripts in the Server view and those regarding the SQL executor, along with scripts dealing with the table structure were cleaned up. Code was moved into functions, variable names were improved, and one of the students wrote unit tests for his newly-created functions.

Through Google Summer of Code, Kasun Chathuranga worked on implementing new feature requests and improving the user interface of phpMyAdmin.

Mohamed Ashraf has successfully contributed an error reporting tool to the phpMyAdmin code base. The tool will aid end users in reporting JavaScript-related issues and help phpMyAdmin developers deliver fixes for such issues quicker.

Ayush Chaudhary and Adam Kang were selected for the Automated Testing project. While writing unit tests for string manipulation functions in phpMyAdmin, one of the students identified that the functions were not implemented in a way that would facilitate unit testing and went on to refactor them to add new classes before writing unit tests for them. Selenium tests for interface testing were also added this summer. Existing tests were migrated to Selenium2 and helper classes were added that are needed to write Selenium tests. Overall the test coverage of phpMyAdmin has increased.

Some of the students are still around fixing bugs, we look forward to more contributions from them in the future.

Thanks to Google Summer of Code, we again had great contributions and improvements to the phpMyAdmin project. Now that GSoC 2014 has been announced, we can start preparing for the next application period and will hopefully be able to have another awesome summer of coding and mentoring.

Monday, November 25, 2013

We have a guest post from former Google Code-in student, David Li, discussing his inspiring Google Code-in experience. Enjoy.

Panic. Confusion. Bewilderment.

Scrolling down the infinite list of tasks, my face shifted from a merely quizzical expression to one of befuddlement as I saw task after task involving C, Perl, or some other knowledge that I did not understand.

For me, Google Code-in was an easy way to get involved in real programming - in writing code that other people would use - as a high school student. The competitive nature of the program naturally held my interest, and the mentors were perfect for novices like me, as I began knowing barely git commit and git status. And even though I still couldn't handle many of the tasks - "Implement ODE solvers", with my two months of calculus was rather intimidating to see listed - I found a niche that I could contribute to.

My first tasks were not that exciting: formatting docstrings and cleaning up warnings and then I moved on to Sympy's website. I felt much more confident with HTML than with Python and found that I enjoyed these tasks the most. Other students and I fixed bugs, implemented a mobile website, and most noticeably, redesigned the theme of the site. I was proud of our contributions.

After the competition concluded I felt that we had unfinished work left. SymPy Live had bugs and the mobile interface we wrote was rather unpolished. Naturally, I couldn't let those bugs stand, especially after having put in so much effort implementing some of those features in the first place...and so I submitted another pull request. And then another. SymPy's developers didn't have the time to focus on their websites, so I began to maintain them, fixing bugs and adding features.

While digging through SymPy's repositories, I found an abandoned website - SymPy Gamma. The site had had no updates in years. But its premise interested me - an open source Wolfram|Alpha competitor - and I began to dream up and implement new features: basic plotting, a new design, steps for differentiation. By now open source had become my hobby, more so than just programming for its own sake had been; I could contribute to and work with a community, and that was rewarding beyond the task of simply writing code.

I am glad Google offered this opportunity to get involved in open source. I learned more about software development than any school could have taught, and I was introduced to a welcoming community, one that appreciated any contribution made. I hope that the users of the myriad projects of Google Code-in enjoyed the improvements that we, the students, made, and I hope other students take the opportunity to involve themselves with open source communities.

By David Li, former Google Code-in 2011 student and current Sympy contributor

Google Code-in 2013 just started last week and will continue until January 6, 2014. Interested pre-university students (13-17 years old) can register at google-melange.com and start earning prizes. Good luck students!

Wednesday, November 20, 2013

LinuxCon Europe drew a great crowd of 1000+ free and open source developers to majestic Edinburgh, Scotland during the last week of October. Attendees were there to meet and learn about a wide variety of open source technologies, including Yocto, Gluster, GStreamer, Xen, embedded Linux, Linux in cars, the Linux Kernel - are you sensing a theme?

This week of crunchy codey goodness started our Google Summer of Code “10 Things” campaign visits with a “Birds of a Feather” (BoF) session on the evening of Monday, October 21. Roughly 50 GSoC mentors, past students and interested “yet-to-participate-in-GSoC” attendees came to enjoy brownies, beverages and lots of conversation.

Attendees of the BoF represented a wide range of open source projects, including but not limited to: LibreOffice, Debian, PulseAudio, Apache, Gentoo, Battle for Wesnoth, OpenMRS, Code For America, and Gnome.

My hearty thanks to all of you who came, especially for not making me present a slide deck; it was great how you all pitched in and talked, asking questions and sharing your experiences with the program.

Monday, November 18, 2013

Today marks the start of Google Code-in, a global online contest for pre-university students (13-17 years old) interested in learning more about open source software. Participating students have an opportunity to work on real world software projects and earn cool prizes for their effort.

For the next seven weeks students from around the world will be able to choose from an extensive list of tasks created by 10 open source projects. Some tasks require coding in a variety of programming languages, creating documentation, doing marketing outreach or working on user interfaces.

Participants earn points for each task they successfully complete to win T-shirts and certificates. At the end of the contest, 20 students will be selected as grand prize winners and flown to Google’s Mountain View, California headquarters. Winners will receive a trip to San Francisco, a tour of the Googleplex and a chance to meet with Google engineers.

More than 1,200 students from 71 countries and 730 schools have participated in Google Code-in over the past three years. Last year, our 20 grand prize winners came from 12 countries on five continents!

We hope this year’s participants will enjoy learning about open source development while building their technical skills and making an impact on these organizations. Please review our program site for contest rules, frequently asked questions and to get started!

Friday, November 15, 2013

For our seventh guest post from veteran Google Summer of Code organizations the Org Admin from Systers recaps their six 2013 student projects and tells us about plans to continue their work.

Systers has a mission to support women in computing across the globe and in various disciplines. The 2013 Google Summer of Code program gave our Systers the opportunity to learn more about our open source software, Mailman, to learn coding and software development practices and to collaborate on a large scale with technical communities. Our students did an amazing job this summer, completing their projects and continuing to build on their projects/features after Google Summer of Code 2013 ended.

SYSTERS ADMINISTRATIVE FEATURESJulia Proft worked on enhancing the new membership form for potential Systers. She designed a new User Interface that clearly differentiates the required essay fields thus eliminating much of the additional follow up administrators previously had to do for incomplete essays.

Ioana Croitoru's assignment this summer was to add scripting for easier reporting. The original assignment was to add scripts to capture very specific statistics, information that Mailman already provides. During code review, Ioana was asked if she could add options in the administrative screen so that administrators would be able to see this statistical information without Her Systers’ Keeper (community manager for Systers) generating this data from back-end scripts. The last admin feature is really a testing framework.

Olga Maciaszek-Sharma worked on a Selenium Testing framework for Python. She worked with Julia and Ioana on specific test cases for their assignments and integrated these cases into Selenium Tests. Olga also provided the team with a demo of the Selenium Testing framework by running through some of Julia and Ioana’s test cases; a great example of team collaboration.

MAILMAN 3.0
Since Systers is running an older version of Mailman, 2.12, we didn’t have the new features of RSS feeds from Mailman 3.0. Joanna Skrzeszewska extensively researched Mailman 3.0 and created a RSS feed for the new Mailman 3.0 as well as making it possible for individual list owners to enable and disable a set of archivers they want to use.

Shanu Salunke also submitted a proposed project with her application about improving our current user interface for Systers Mailman 2.12. Her assignment allowed her to work with Django and the latest Mailman 3.0 web interface. Shanu was very detailed in documenting her work and her design and test cases.

And our final Syster, Sneha Priscilla, worked on adding global user preferences. Her code is checked into Mailman 3.0 Postorious and is currently being reviewed. The Systers community is eager to upgrade to the latest Mailman 3.0 and experience the new user interface. Sneha was a student last year working with Systers Mailman 2.12 and the additional knowledge she gained from this summer is going to be truly invaluable when we upgrade.

OUR INCREDIBLE MENTORS
Our Google Summer of Code would never be successful without our dedicated mentors. They donate their time and talent for an incredible opportunity to help provide development guidance to the next generation of coders.

WHAT’S NEXT?
After Google Summer of Code was complete and all of our students successfully passed, they quickly became mentors. How? Every year, Anita Borg Institute’s Grace Hopper Celebration for Women in Computing holds an Open Source Day where attendees come to Code-a-thon for Humanity. All of our Google Summer of Code students were available on IRC to answer any questions the participants had during some of the initial environment setup, thus the students immediately stepped into the role of mentor. Fantastic!

We are planning to port students’ work into our current version and hopefully their work will also be accepted in the Mailman 3.0 main branch. Students have agreed to continue with the work and now we have an incredible pool of volunteers to help us maintain our Mailman software. What an experience! We are already planning our next projects to submit our application for Google Summer of Code 2014.

By Rose Robinson, Systers Organization Administrator and Her Systers Keeper

Thursday, November 14, 2013

At Google, one of the tools we use in building external and internal products is Eclipse. In addition to that, we also release Eclipse-based tools. To celebrate this and say thank you to the developer community, we’ll be hosting Eclipse Day at the Googleplex on the Mountain View, CA campus on December 18th, 2013.

Eclipse Day is a great opportunity for both Eclipse users and contributors to network and share ideas. This year we have sessions that cover Orion, the Eclipse M2M tools, BIRT, Gerrit, CDT, Dart, Hudson, performance tuning in Eclipse, and scaling Eclipse to work with Google’s massive code base. During the one day conference, Eclipse projects and Eclipse-based products created here at Google will also be highlighted.

In previous years some of the most popular sessions have been the Eclipse Ignite talks: 5-minute, 20-slide presentations by attendees sharing what they are doing with Eclipse.

A big thank you to everyone at the Eclipse Foundation for assembling this great event. We are happy to welcome the Eclipse community to our campus and are always looking for ways to make this conference better. Please share your ideas and let us know your thoughts about this year’s program.

Pre-registration, which includes a $40 contribution to the Eclipse Foundation, is required for attendance. You may pre-register until December 17th, 2013, 2pm PST.

Today we’re releasing the Dart SDK 1.0, a cross-browser, open source toolkit for structured web applications. In the two years since we first announced Dart, we’ve been working closely with early adopters to mature the project and grow the community. This release marks Dart's transition to a production-ready option for web developers.

The Dart SDK 1.0 includes everything you need to write structured web applications: a simple yet powerful programming language, robust tools, and comprehensive core libraries. Together, these pieces can help make your development workflow simpler, faster, and more scalable as your projects grow from a few scripts to full-fledged web applications.

On the tools side, the SDK includes Dart Editor, a lightweight but powerful Dart development environment. We wanted to give developers the tools to manage a growing code base, so we added code completion, refactoring, jump to definition, a debugger, hints and warnings, and lots more. Dart also offers an instant edit/refresh cycle with Dartium, a custom version of Chromium with the native Dart VM. Outside the browser, the Dart VM can also be used for asynchronous server side computation.

For deployment, dart2js is a translator that allows your Dart code to run in modern browsers. The performance of generated JavaScript has improved dramatically since our initial release and is in many cases getting close to that of idiomatic JavaScript. In fact, the dart2js output of the DeltaBlue benchmark now runs even faster than idiomatic JavaScript. Similarly, dart2js output code size has been reduced substantially. The generated JavaScript for the game Pop, Pop, Win! is now 40% smaller than it was a year ago. Performance of the VM continues to improve as well; it’s now between 42% to 130% faster than idiomatic JavaScript running in V8, depending on the benchmark.

DeltaBlue benchmark results

The Dart SDK also features the Pub package manager, with more than 500 packages from the community. Fan favorites include AngularDart and polymer.dart, which provide higher-level frameworks for building web apps. Dart developers can continue using their favorite JavaScript libraries with Dart-JavaScript interop.

Going forward, the Dart team will focus on improving Dartium, increasing Dart performance, and ensuring the platform remains rock solid. In particular, changes to core technologies will be backward-compatible for the foreseeable future.

Tuesday, November 12, 2013

We are excited to have a guest post from Remy DeCausemaker highlighting his first Google Summer of Code Mentor Summit. Enjoy. The first photograph was taken by Matthew Dillon. All other photos taken by Thomas Bonte, CC-BY.

Friday Night
Mentors and admins began arriving on Friday night, and walking about you could catch bits of conversation, spoken in a plethora of languages and accents, spanning from pixels to bits.

The Summit
No less than four trips of double-decker bus loads, from two different hotels, shuttled everyone into the Googleplex. The morning began with a hearty breakfast, and coffee from Google's expert Baristas. With trays piled high with eggs, bacon, muffins, and other breakfast-y goodness, mentors took their seats in the massive company cafeteria. Under a quartet of stage lights in that familiar Google colored glow, Google Summer of Code lead Carol Smith stepped up to the microphone, and welcomed the crowd.

Once folks were acquainted with the schedule of events, places of interest, and policies to follow, FOSS Advocate and Director of Open Source Programs at Google, Chris DiBona, addressed the audience:

"The reason you are here is because you deserve to be. The whole point of GSoC is to introduce new developers to FOSS, create more FOSS code, and support projects we think are great. We look at reviews, and the aftermath and say 'did it work?'You are here because it did.
Thank you for being there for Open Source Software. Thank you for being there for Free Software, and for being there for Google. Open source matters to us. The future of Open Source matters to us. This room--and the people you bring in--without you, it wouldn't be as wonderful in 5-10 years as it is today."

The "Big Reveal”
Prior to the summit unconference, attendees had a chance to suggest and vote on session topics using Google Moderator. Sessions were assigned to rooms of a size proportionate to their level of interest. Ample space was also provided for sessions that were proposed on-the-spot, often inspired by discussions from previous sessions.

The "Pumphandle" Session
The first "session" of the unconference took the entire GSoC audience, split it down the middle, and formed two long lines for a full morning of meet-and-greet handshaking. This provided attendees with an opportunity to meet each other, and have conversations they may not have had otherwise during the busy summit.

The Chocolate Room
Behold, the annual cocoa cornucopia! Mentors from around the world packed plenty of sweet treats to share with their fellow hackers. Milk chocolate, dark chocolate, bacon chocolate, and yes, even fish chocolate.

The GSoC Band
In the Open Source Community, ad hoc collaborative teams are an everyday occurrence. But to see it happen outside of a source code repository, with a full drum set, five kinds of stringed instruments, a keyboard, and even an oboe... that is something you don't see everyday. Shout out to Saturday night's Emcee, host, and bringer of instruments, Googler Marty Conner, who got the GSoC band back together for 2013.

The Sticker Swap
Over the course of the summit, Googlers would freshen the tables of swag at the front of the cafeteria. Tshirts, banners, stickers, and even GSoC Socks! But Google wasn't the only team with a horse in the swag race. Mentors brought stacks of stickers from dozens of projects to participate in the annual sticker swap.

The Googleplex Tours

During the lunch hour each day, Stephanie Taylor and Mary Radomile of Google's Open Source Programs Office gave attendees guided tours of the Googleplex campus.

With each new release of Google's Android operating system, comes a new codename, and a new statue in the Sculpture Garden. Note the new KitKat Android on the right side of the photo.

The Cakes
Thanks to Joel Sherrill with RTEMS, who supplied the templates for the giant Google Summer of Code birthday cakes, celebrating nine consecutive years of FOSS community engagement with the logos for each year of the program on two tasty cakes.

A New GSoC Tradition

Based on feedback from last year's summit, the organizers agreed to put together a whole track of "Google" talks, given by current employees about a variety of projects, initiatives, and technologies. One of the more popular sessions was led by Wesley Chun, Developer Advocate with the Google Cloud Team. Chun talked about the Google Cloud Platform, its variety of services, and special discounts and support provided by Google to FOSS projects.

Big Take-aways

As a first-time Google Summer of Code Mentor attending my first summit, I cannot even begin to recount all of the amazing things that occurred over the course of the weekend. If you clicked on the link at the top of this article for the 177 mentoring organizations represented at the summit, you can begin to imagine the sheer magnitude of talent, passion, and dedication that gathered in Mountain View. As a storyteller, I accumulated thousands of words worth of notes from all the sessions I attended, which sadly, I cannot possibly share with all of you readers in a single post, so we're going to have to do a "highlight reel."

Outreach Program For Women
Led by Karen Sandler, Executive Director of the Gnome Foundation, who introduced the OPW, and discussed ways to bring more diversity to your FOSS project.

The BIGGEST Take-Away
Next year will mark the 10th year of Google Summer of Code! In honor of "the-big-one-oh," Google will be expanding the Google Summer of Code program ten percent across the board:•10% increase in Student Stipend•10% increase in total number of students accepted•10 more accepted Mentor Organizations than ever before

YOU too can join the excitement!

Like what you see here? Is your project interested in mentoring? Are you a student that wants to get paid to work on Free/Open Source Software with world-class hackers? Then you should apply for Google Summer of Code 2014. Here are the important dates:

Though this was my first Google Summer of Code, I sure don't intend for it to be my last. I cannot recommend the program highly enough. Next year your chances of acceptance (and pay check) will be better than ever. The benefits for mentors, the students, and the FOSS community at large should be abundantly clear.

Thursday, November 7, 2013

MariaDB is a community-developed fork of MySQL, a relational database management system for developers looking for a robust, scalable, and reliable SQL server. Its current version is based on MySQL 5.5 and has the capability to provide powerful multi-source replication for data warehouses, to support subqueries that maximize performance, and to make replication more reliable with global transaction IDs.

Today, the MariaDB team is releasing MariaDB 10.0.5, which includes parallel slave replication threads, a feature sponsored by Google. Parallel replication has the ability to remove bottlenecks in replicated configurations, which is crucial as storage speeds increase to keep systems moving quickly.

Internally at Google, we’ve already deployed MariaDB 10.0 to our non-production MySQL instances to help report bugs and work with the MariaDB team to test their fixes. This release takes the MariaDB 10.0 branch from alpha to beta status, where the team will shift focus from stabilization to bug fixes.

Friday, November 1, 2013

We are pleased to announce the 10 open source organizations that will be providing tasks for young students to work on during the Google Code-in 2013 contest starting later this month. The contest is designed to introduce 13-17 year old pre-university students to open source software development. These open source organizations are all experienced at mentoring students, having all participated in Google Summer of Code in the past; many have also participated in previous years of Google Code-in as well.

Organizations will provide a list of tasks for students to work on during the contest in categories such as coding, documentation, user interface, quality assurance and outreach. Each task has a mentor assigned to it to help students should they have questions as they are completing the tasks.

The mentoring organizations are now all busy working on their extensive task lists to have them ready by the start of the contest on November 18th.

Wednesday, October 30, 2013

Last week three open source projects were invited to Google’s Mountain View, California headquarters for our 4th documentation camp where each organization was tasked with creating a comprehensive book about their project in a mere three days. OpenMRS, BRL-CAD, and GNOME participated this year and the camp was facilitated by Adam Hyde of Floss Manuals and Allen Gunn of Aspiration.

This year all three projects decided to write books geared towards newcomers to their projects.

The OpenMRS team discusses their book making experience below.

The week was fast-paced and exciting! On Monday, we got to know each others’ projects, nailed down our target audience and desired outcomes, and brainstormed ways in which we might share this new resource after the week was over. By Tuesday mid-morning, we had a table of contents. We chose the sections we were each most excited about to write first. By the end of Tuesday we had our core chapters mostly written and spent Wednesday writing our introductory and supporting material. Thursday we spent the day editing and gearing up for our 6pm deadline to complete the book for it to go to print. The week was a lot of work and a lot of fun, we were all inspired and well fed.

And that is how our book titled “Contributing to OpenMRS: Getting Started as a Developer”came to be. Usually the hardest part of making meaningful contributions to any open source project is getting started. On behalf of the authors and broader OpenMRS community, we hope this book helps significantly lower the hurdles new OpenMRS developers encounter, whether they are new to open source projects, Health IT, OpenMRS, or all three. The book introduces OpenMRS development processes and architecture, walks the reader through setting up a development environment and building a basic module, overviews OpenMRS collaboration tools and where to go for support, and suggests a potential progression of becoming a seasoned developer community member.

By Jordan Kellerstrass, OpenMRS team

Below the GNOME team members talk a bit about their experience writing their book about GNOME Mallard, a markup language for generating extra helpful, task-oriented software documentation.

Last week, a small troop of five GNOMies from the docs team (Sindhu Sundar, David King, Kat Gerasimova, Michael Hill and Aruna Sankaranarayanan) arrived at Google ready to write a book for our community. We were joined by two enthusiastic documenters, Amanda French and Heidi Waterhouse, who volunteered to help us with our book from the perspective of complete newbies to our project, which was perfect as they are the intended audience for the book.

Our first day was spent getting to know the other teams, sharing our project with them and pinning down the table of contents. In the evening, Amanda and Heidi started setting up a working environment for using GNOME’s Yelp help viewer. It has been very useful to see how our tools are presented by the Internet at large to potential users. For the most part, the available information is accurate, although some details needed to be clarified.

On Wednesday, halfway through our second full day of writing, we almost had our first version of the book completed. For Thursday, we refined the existing content and expanded the book where necessary, completing our book by the 6pm deadline to go to print. On Friday we got to see (at least on screen), the fruit of our labour: the Introduction to Mallard book. The printed copies were ready by 8pm Friday night.

The week of book sprinting was a remarkable collaborative writing experience, and I can’t wait to recommend it to other projects I know. Thanks again to Allen Gunn for inspiring us and to Adam Hyde for getting a book out of us and to the Google Open Source Programs team for Doc Camp.

BRL-CAD, a computer-aided design open source software project, is ecstatic for having participated in the 2013 Google Doc Camp. BRL-CAD's team of seven individuals came together from four different countries, three continents and one oceanic island to produce a contributor's guide totaling more than 100 pages in length in less than one week. The inspiration, ideas, and productivity experienced throughout the week-long event has invigorated an effort to expand documentation and improve outreach for our project. Google Doc Camp introduced an exciting technique for documenting and sharing information which we are using to help grow our community.

By Christopher Sean Morrison, BRL-CAD team

Congratulations to the GNOME Mallard team, OpenMRS and BRL-CAD for successfully completing their books. We hope these books will bring many more contributors to their open source communities.

Friday, October 25, 2013

Benetech was founded to be a different kind of tech company—a nonprofit—with a pure focus on developing technology for social good. “Open Over Proprietary” is one of our Seven Benetech Truths, so we’re delighted to join Google Summer of Code in inspiring young developers.

In our second consecutive Google Summer of Code, our three students worked to enhance the tools and capabilities we provide as part of our Bookshare initiative. Bookshare is the world’s largest accessible online library for people with print disabilities and part of a broader effort to promote the development of accessibility standards and technology through Benetech’s Global Literacy Program.

We’ve been working with three amazing students on the following projects:

Integrate MathML support in Go Read – Student: Jordan Gould, Code
Go Read is our free, Android-based eBook reader that people with visual impairments can use to read Bookshare content. This integration will allow us to deliver better STEM (Science, Technology, Engineering & Math) educational content to our Bookshare users on a variety of Android smartphones and tablets.

Integrate Tecla Accessibility Support for Go Read – Student: Anuruddha Hettiarachchi Code
Making Go Read Tecla-accessible will improve its usability for people who cannot read standard eBooks due to mobility impairments.

Extend Bookshare API – Student: Yashasvi Gridhar, Code
This enhancement will support the download of books with images, which, for example, are important to users who are dyslexic or have a motor related disability.

Our students’ efforts will create a lasting impact for the multitudes of people with print disabilities using Bookshare to access the books they need for education, employment and inclusion in society. And it’s not just our users who are positively impacted. We’ve learned that our students also gain a great deal from their summer’s work. Yashasvi, for example, told us:

“All the knowledge and skillset that I have learned will certainly help me in my career ahead. Working with a nonprofit organization like Benetech, you have that awesome feeling of being part of something big that is helping people across the globe. I sincerely hope to continue the same in the future.” -- Yashasvi Gridhar

Thank you, Google Summer of Code, and best wishes to our three students!

Friday, October 18, 2013

For the second time, @TwitterOSS participated in the Google Summer of Code. Unlike many Google Summer of Code participating organizations that focus on a single ecosystem, we work on a variety of projects that span multiple programming languages and communities.

We worked on three projects with three amazing students over the summer.

Matrix optimizations for Scalding
Tomas Tauber worked closely with his mentor, Oscar Boykin, to improve the performance of Scalding by adding matrix optimizations (see the commits). For example, how should we multiply A*B*C? Perhaps (A*B)*C takes a lot longer than A*(B*C) due to the sizes of the matrices. What about matrices with huge skew, such as Twitter’s follower graph where some users have millions of followers, but most have only a handful? By optimizing at the Matrix API layer, we can easily reap the benefits at higher layers. This project added a scheduler to the formulas users write with Matrices, and performs the computation in the optimal order, where optimal is in terms of intermediate data size and formula tree-depth. See the performance results for more information.

Asynchronous DNS support for the Netty Project
Mohamed Bakkar worked with the lead of the Netty project Trustin Lee to add a built-in asynchronous DNS resolver. Instead of using the blocking DNS resolver provided by the JDK, the new resolver will prevent applications built on top of Netty from their performance being impacted by slow or overloaded DNS servers. As a result, Netty applications that rely on DNS should have a positive performance impact.

Authentication support for Apache Mesos
Ilim Ugur worked with Mesos committer Vinod Kone to add an authentication stage in Mesos before letting frameworks and slaves talk to the master(s) thereby making the communication between the modules forming Mesos (masters, slaves and frameworks) more secure.

As part of Google Summer of Code, students and mentoring organizations receive a stipend. We are donating our portion of the stipend to the Software Freedom Conservancy which is a 501(c)(3) organization that helps provide a non-profit home and infrastructure for open source projects like Git and Selenium.

We really enjoyed the opportunity to take part in Google Summer of Code. Thanks again to our three students, mentors and to Google for the amazing program.

Friday, October 11, 2013

For our fourth guest post highlighting veteran Google Summer of Code organizations from this year’s program the organization administrators from QEMU discuss their student's projects below.

QEMU is an open source machine emulator and virtualizer that can run programs written for one type of machine on another using dynamic translation, like ARM Linux on x86 Windows. Hypervisors such as KVM and Xen also use QEMU to run guest code at native speed, like a Debian Linux guest on a Fedora Linux host.

QEMU.org has participated in Google Summer of Code for three years and has helped over 15 talented students contribute to open source. This year we are also acting as an umbrella organization for the KVM Linux kernel module (http://www.linux-kvm.org/) and the libvirt virtualization API (http://libvirt.org/).

This summer we worked with nine students, we describe two of the projects below.

Integrated copy/paste - Students: Pallav Agrawal and Ozan Caglayan
Up until now QEMU has not supported easy copy/paste between the guest and the host (for example, copying text from a web browser in the guest and pasting it into a text editor on the host).

In order to make this work there are a couple of requirements:
1) Provide a way for a guest's application window to transmit the contents of its clipboard to the host interface.
2) Provide a way for the host interface to transmit the contents of its clipboard to the guest.

Both sides of the problem require considerable work so we had two students, Pallav Agrawal and Ozan Caglayan, working on each end of the equation.

After completing the initial prototype, Ozan saw the potential for some major performance issues transferring potentially large clipboards on every 'copy' event, and reached out to another member of the QEMU community with experience working on clipboard syncing on another project called SPICE. Together they worked out a much more efficient API. Unfortunately, late in the project we ran into implementation issues with the new API that seemed to require some invasive modifications to core QEMU code. We weren't able to work out a feasible solution in time to complete integration of Ozan and Pallav's work and submission of their code upstream before the end of Google Summer of Code 2013.

Both Ozan and Pallav have shown interest in carrying on their work however, and we plan to pick up the task of getting their code merged in the near future. It was a great experience working with both of them, and we look forward to working with them more in the future.

Introduce API to query IP addresses for given domain - Student: Nehal J. Wani
One of the most desired APIs in libvirt that still hasn't been implemented is to get/guess a list of IP addresses assigned to a domain. This project's aim is to implement the API. There are several ways to get the addresses information: asking a guest agent, snooping domain traffic, parsing the dnsmasq lease file, etc.

Nehal implemented a new 'domifaddr' command and API to query IP addresses used by a domain. These patches contain support for getting IP addresses from the guest agent. The API is designed to allow adding more methods to query IP addresses in the future. Nehal did just that with another patch series that finds IP addresses by parsing the DHCP leases file.

Both patch series are currently undergoing community code review and we hope to include them in the next libvirt release.

QEMU.org has had a terrific summer and all of our students are making significant progress. Our project offers an exciting opportunity to work with machine emulation and virtualization.

Thursday, October 10, 2013

At Google, building, managing and safely securing some of the world’s largest storage systems requires complex analysis of filesystem metadata. This is an important part of making sure that the information stored within those systems is quickly accessible and always secure. We're always looking for ways to make our data storage systems more efficient, and often times, this requires understanding the age, size and access patterns of the data stored, the failure rates of servers and disks, and more. You can imagine how complex this becomes with each new data center added.

We rely on several open source tools to make our work easier. The most common tool we use for statistical analysis of the performance, availability, and resource needs of our internal systems is the R programming language. We’ve released two package updates that make R particularly suitable for interacting with other distributed systems.

RProtoBuf is an R package for Google’s Protocol Buffer library that allows one to define simple data structures with intuitive getter and setter methods. These data structures can be serialized into an extremely compact format for sending to other distributed systems. Recent releases include improved support for 64-bit integers, protocol buffer extensions, and more.

HistogramTools is a new R package I have released that uses RProtoBuf to read in a compact protocol buffer representation of binned data and includes a number of helpful functions for manipulating, plotting, and measuring the statistical information loss due to the binning. In addition to protocol buffers, it also supports importing aggregate performance data directly from DTrace output.

Both packages are available on CRAN and include extensive documentation and examples.

If you're interested to learn more, we have shared some of our research findings at conferences such as OSDI, USENIX ATC, and JSM.

Tuesday, October 8, 2013

At Google we are passionate about introducing students from around the world to open source software development. Since 2005, Google has worked with over 10,000 students and over 440 open source projects in a variety of fields to create more code for the masses.

A call out to all students: if you have ever thought it would be cool to write code and see it make a difference in the world then please keep reading. We are excited to announce the next editions of two programs designed to introduce students to open source software development, Google Summer of Code (for university students) and Google Code-in (for 13-17 year old students).

Google Summer of Code

Back in 2005, Google made a commitment to support open source software contributors. In addition to our other programs to build and support the contributor base, we thought a great way to increase awareness was to introduce the wide world of open source to college students. Google Summer of Code was born: match student developers from around the world with open source software organizations to work on a project while on break from their universities.

With over 8,300 mentors in 100 countries around the world, the 8,500 student developers have produced a stunning 50 million lines of code. The program will now be reaching its 10th instance in 2014.

We told you on the Official Google Blog just a few highlights of what we’ll be up to this year, and now we want to tell you all the details:

10 visits to countries with high participation throughout the year.

10 developer events in promotion of the program.

10 mentors who have participated in Google Summer of Code will be featured on our open source blog.

10% additional student stipend (a total of $5500 for students who successfully complete the whole program).

10% more students than we’ve ever had participate in the program before.

10 more mentoring organizations than we’ve ever had in the program will be participating in Google Summer of Code 2014

10 year student reunion event will be held on Google’s Mountain View campus next year for all the students who have participated in the program.

10 year reunion mentor summit will be held on Google’s Mountain View campus for all our Google Summer of Code organization alumni.

10 students/organizations will be chosen to highlight their work at the Google booths at open source events throughout the year.

10 student projects from the past nine years will be highlighted on the open source blog and YouTube.

We’re pleased to be running a program that touches a lot of lives around the world, and we hope this will be a celebration of all the accomplishments we’ve seen from so many of our participants. Watch this blog for announcements about our travel and our efforts over the next year. Here’s to 10 Things!

Google Code-in - Program starts for students November 18th

For the fourth consecutive year we are thrilled to announce Google Code-in, an international contest designed to introduce 13-17 year old pre-university students to the world of open source development. Open source projects are about more than just coding, and this contest highlights a variety of ways to contribute to open source projects. Every year, open source software is becoming more important around the globe; from government, healthcare, relief efforts, gaming, to large tech companies and everything in between.

When you read the term open source do you think:

What is open source?

What types of work do open source projects do?

I’ve only taken one computer science class, can I contribute to an open source project?

I’m not really into coding, what else can I do to contribute to open source?

I’ve never participated in open source or an online contest before, can someone help guide me?

Open source sounds cool, how can I get started?

If you’ve wondered about any of these questions and are a pre-university student (age 13-17) then we hope you will join in the fun and excitement of the Google Code-in contest starting Monday, November 18th.

For seven weeks from mid November to early January, the Google Code-in contest will have students working with 10 selected open source projects on a variety of tasks. These projects have all successfully served as mentoring organizations in previous Google Code-in contests or have worked with university students in our sister program, Google Summer of Code.

The different categories of tasks that students will be able to work on include:

Over the past 3 years we have had over 1200 students from 71 countries complete tasks in the contest. In April, we flew the 20 Google Code-in 2012 Grand Prize winners and a parent to Google’s Mountain View, CA headquarters for a 5 day/4 night trip where they enjoyed talking with Google engineers, an awards ceremony, a Google campus tour, and a full day of fun in San Francisco.

Visit the Frequently Asked Questions page on the Google Code-in 2013 site for more details on how to sign up and participate. And please help us spread the word to your friends around the globe! If you are a teacher that would like to encourage your students to participate, please send an email to our team at ospoteam@gmail.com. We would be happy to answer any questions you may have.

Stay tuned to the contest site and subscribe to our mailing list for more updates on the contest. We will announce the 10 open source organizations that will be participating in the contest on November 1. The Google Code-in contest starts for students on November 18, 2013. We look forward to welcoming hundreds of students from around the world into the open source family again this year.

We hope you will help us spread the word about these two programs to all the pre-university and university students in your life. Stay tuned to this blog for more announcements in the coming weeks about both programs.