This year's event was the biggest one ever with a crowd so large that finding someone was not easy. I had never met anyone from the summit in person so it was nice to see Stefano, my fellow LyX project mentor, in the hotel lobby. From there we could proceed straight to registration and the reception, and finally discuss our experiences with GSoC face to face. Up to that point, thousands of kilometers and usually 7 or 8 time zones had always separated me from fellow developers and mentors, as I am located in Japan.
The next day, I chose to stay in the event meeting rooms instead of going to the theme park so I could get some work done while also having a chance to see what other people are working on. It is interesting that Google does not restrict GSoC to “infrastructure-critical" projects, but also includes games. However, games are not necessarily simple software; some games require complex algorithms to keep information from many clients consistent, so some of the software can be just as complex as part of an OS kernel.
The second day ended with a big reception featuring guest speakers at the San Jose Tech Museum where it was interesting to see what can make a project successful in Linus Torvalds' opinion. The code has to fulfill certain quality standards --"good taste", as he called it -- but persistence is just as important as that. Nowadays, with so many projects being available as open source, something that is just released and then updated for a few weeks after that is just a blip on the radar that will no longer be noticed by the community.
The weekend was dedicated to the heart of the event, the "unconference" sessions, which were for me the highlight of the reunion. I was actually surprised that a few free slots were available early on (as I consider the early slots to be the most valuable ones), so I jumped in and proposed a session on testing. It was interesting for me to see that everybody who attended is using some sort of automated testing at some level, but almost nobody is happy with the tools that exist today. Although people see the benefit of testing, creating and maintaining test cases is still a burden and we need higher-level tools that help us with that. Unfortunately, if we move towards test case generation, it is impossible to create a single tool that caters to everyone, so we need tools that can interoperate. Open source is good at that, but the process can still take years or even decades, as we need to solve open research problems and then come up with some standards so we can (in the hopefully not-so-far future) combine partial solutions into a big ensemble.
Other sessions were dedicated to both technical and non-technical topics (for example, how to make our GSoC projects successful), and also included tutorial-like presentations. This helped me understand what some projects (such as crash reporting tools) or groups were about in a way that I would probably not have found when looking for information in the virtual world. I also liked that people could come up with suggestions on session topics in real time, although this sometimes meant that a session that I would have liked to join was canceled just as it was about to begin, or some sessions ended up drawing only a few people while others had more attendees than seats were available in the room.
All in all it was a very intense and enjoyable weekend, and I will try to keep that late October weekend free from now on to increase my chances of attending future summits!