I’m in the airport waiting for my flight after finishing the Google Summer of Code Mentor Summit. This event took place this weekend. Two or three mentors from many of the GSoC projects came out to the Google campus to participate in an un-conference about GSoC. Google and SymPy were kind enough to send me and two others (Stefan Krastanov and Gilbert Gede) so I thought I’d slightly repay the favor by reporting my experiences. I’ll list some generated ideas and thoughts below. They range from the application process, to SymPy and scientific Python in general to some meta-thoughts about the conference itself.
How should we improve our application process to attract good students, detect good students, and match good students to appropriate mentors?
We should ask indirect questions to query for curiosity and passion.
- Why do you want to work on SymPy?
- Why do you like Math?
- How long have you been programming?
- Copy the favorite snippet of SymPy code you’ve seen here and tell us why you like it.
- What aspects of SymPy do you like the most?
- What editor do you use and why?
Experience was that direct questions tend to have low information content (everyone says the same thing). Indirect questions will be ignored by the lazy but engage the engaged. You often want to test for curiosity and passion more than actual experience in the domain.
We should match mathematically strong students with strong programmer mentors and strong programmer students with strong mathematical mentors. We often do the opposite due to shared interests but this might result in ideal contributions
Other people have funding. Should we? What would we do with it? How would we get it? It might not be as hard as we think. Who uses us? Can we get a grant? Are there companies who might be willing to fund directed work on SymPy?
Interactions with SymPians
This is my first time physically interacting with SymPy contributors other than my old mentor. It was a really positive experience. As a community we’re pretty distributed, both geographically and in applications/modules. Getting together and talking about SymPy was oddly fascinating. We should do it more. It made us think about SymPy at a bigger scale.
- Do we want to organize a SymPy meetup (perhaps collocated with some other conference like SciPy)? What would this accomplish?
- What is our big plan for SymPy? Do we have one or are we all just a bunch of hobbyists who work on our own projects? Are we actively pursuing a long term vision? I think that we could be more cohesive and generate more forward momentum. I think that this can be created by occasional collocation.
- This could also be accomplished by some sort of digital meetup that’s more intense than the e-mail/IRC list. An easy test version of this could be a monthly video conference.
I’m accustomed to academic conferences. I recently had a different experience at the SciPy conference which mixed academic research with code. I really liked this mix of theory and application and had a great time at SciPy. GSoC amplified this change, replacing a lot of academics with attendees that were purely interested in code. This was personally very strange for me, I felt like an outsider.
The scientific/numeric python community doesn’t care as intensely about many of the issues that are religion to a substantial fraction of the open source world. My disinterest in these topics and my interest in more esoteric/academic topics also made me feel foreign. There were still people like me though and they were very fun to find, just a bit rarer.
This is the first conference I’ve been to where I was one of the better dressed attendees :)
Other projects of our size exist under an umbrella organization like the Apache foundation. I see our local community as the numpy/scipy/matplotlib stack. How can we more tightly integrate ourselves with this community? NumFocus was started up recently. Should we engage/use NumFocus more? How can we make use of and how can we support our local community?
This section includes my thoughts about the summit itself. It’s distinctly structured. I’ll share my opinions about this structure.
The informal meeting spaces were excellent. Far better than the average academic conference. I felt very comfortable introducing myself and my project to everyone. It was a very social and outgoing crowd.
Some of the sessions were really productive and helpful. The unconference structure had a few strong successes.
There were a lot of sessions that could have been better organized.
- Frequently we didn’t have a goal in mind; this can be ok but I felt that in many cases a clear goal would have kept conversation on topic.
- People very often wanted to share their experiences from events in their organization. This is good, we need to share experiences, but often people wouldn’t filter out org-specific details. We need to be mindful about holding the floor. We have really diverse groups and I’m pretty sure that the KDE guys don’t want to hear the details of symbolic algebra algorithms.
- Sessions are sometimes dominated by one person
- In general I think that we should use neutral meeting facilitators within the larager sessions. I think that they could be much more productive with some light amount of control.
Specific Interactions with other Orgs
It was really cool to associate physical humans to all of the software projects I’ve benefitted from over the years. It’s awesome to realize that it’s all built by people, and not by some abstract force. I had a number of positive experiences with orgs like Sage and SciLab that are strongly related to SymPy as well as orgs that are completely unrelated like OpenIntents, Scala, and Tor.
I had a good time and came away with thoughts of the future. We have something pretty cool here and I think that we should think more aggressively about where we want to take it.