Roundup: WordCamp San Francisco Hack Day
The Sunday after WordCamp San Francisco was an epic hack day. Hosted at Automattic’s office in the Mission, we had somewhere around 80-90 developers contributing to WordPress core in all sorts of ways.
This was by far the best hack day I’ve been to, and it was very productive. Beau Lebens, Joey Kudish, and Rose Goldman did a great job handling the many logistics surrounding a large event like this one.

Photo by @beaulebens. That’s a lot of people.
We started off the morning with a quick whiteboard meeting with members of the core team. A few of us brainstormed what we wanted to work on beforehand, and so we quickly drafted up a list of ten different groups and people to lead those groups. This was key. Even with smaller numbers at a hack day, I would definitely encourage doing this. As we built the list, we pulled these people into our discussion to let them know they were drafted and what their plans were.

- ImageMagick. Mike Schroeder, Marko, Japh. They spent the day working out an API design for #6821.
- Retina. Otto. HiDPI support in the admin, discuss user uploads, etc.
- Tests. Kurt Payne, Nikolay, Brian Petty, and others. Get introduced to our tests; improve the test framework; write new tests; fix/improve existing tests.
- Media. Koop. I also “encouraged” Mike Adams to work on this (he resisted, but it was futile).
- Handbook. Beau, Hanni, Ipstenu, Andrew Spittle, Devin Reams, and many others.
- Multisite. Jaquith and Pete Mall, joined by Evan Solomon, Jeremy Felt, and others. In particular, #19796, multisite in a subdirectory.
- bbPress, BuddyPress. JJJ, Boone, Paul. Focus was not just contributing to these projects, but also to work on anything needed in core to benefit these projects.
- UI/UX. Helen and Chelsea.
- Twenty Twelve. Lance, Ian, Drew, and a small army of contributors.
- General 3.5. Me!
I was really just the catch-all in case contributors were not interested in another group to work with. Some, like Alex King, spent the day on their pet bug, and that was great to see as well.
We started the day with a hello and an introduction to each of the groups and the lucky people we conned to organizing each of them. You should have seen my face when I turned away from the whiteboard — there were a lot of people.
The goals for the day were two-fold: yes, it is important to receive contributions to WordPress, but it is more important to gain new contributors.
“If there are 100 new contributors that’s more important than 100 more changes to WP.” – @nacin #wcsf
— Andrew Spittle (@andrewspittle) August 5, 2012
After the introduction, everyone spread out and got to work. Since many people had not contributed to core before, I also ran a workshop on how to contribute, with an emphasis on reporting and fixing bugs. It went on for probably around 90 minutes.
We waited about 30 minutes to start the workshop to give everyone a chance to first read through the core contributor handbook if they hadn’t already. This was great because it gave everyone an immediate baseline, and it allowed me to wander around and chat with some of the groups that were working on 3.5-specific tasks.
An aside about the workshop: I know someone got at least some of it on video, which is great, and I saw some people taking notes. If you have video, audio, or notes from this session, could you share them? I would like to turn a lot of what we talked about into articles for the handbook.
It was really incredible to see and participate in so many ideas and conversations throughout the day. Some things I remember:
- The multisite group of around 8 to 10 people had a working patch by the end of the day.
- Developers from Grist ported Akismet’s comment history to core as a possible feature (love), only hours after learning about contributing to core in the workshop.
- I’m told the Twenty Twelve team had 15 individual contributors (plus two more via IRC).
- Chelsea and co. re-invented screen options and the help tabs.
- The handbook had a few hundred individual changes, which included a dozen new articles, more glossary entries, and a complete reorganization.
- Daryl locked a bunch of people in a room and tortured them with media discussions for a few hours. Just kidding. Kind of.
Two different groups converged at one point, and the result was pretty amazing. I was sitting in with the media group, which was talking about how to handle image sizes and thumbnails, when the topic of on-the-fly thumbnails came up. As we soon learned, there are many issues in doing this in a distributed fashion. A big one is not melting shared hosts. With GoDaddy, Dreamhost, and Bluehost all represented at the hack day, we pulled everyone (including the ImageMagick group) into the large conference room (“Olympics Viewing Room” according to the whiteboard).
What transpired was a long conversation discussing how we currently generate thumbnails, how just-in-time thumbnail processing could work, and what it would mean for shared hosts. Each host brought a different concern to the table (file I/O, memory usage, and file counts) which I found particularly interesting. We started to put together an idea we jokingly called “just-too-late,” where we would generate a thumbnail after it was originally requested, through some kind of jobs system (i.e. cron). Discussing the parameters of the problem was really important, as it offered a framework for future discussions on the matter, and was more important than coming to a solution that day. So no, we won’t be doing just-in-time or just-too-late thumbnails in 3.5, but I’m excited about some of the ideas thrown around. It was a lot of cooperation and collaboration on display.
Since this won’t be our last WCSF hack day, and since many other WordCamps will be planning them in the future (including Portland this weekend and SĂŁo Paolo next), here are some additional thoughts and ideas:
- People registered for the hack day, but doesn’t necessarily match attendance, and it doesn’t indicate what people ended up working on. It would be awesome to have a list of everyone who attended, and what they worked on (or what groups they sat in).
- We should send out a survey to those registered seeking feedback, to see what we can improve.Edit: We did! If you registered, you got an email. Otherwise, click here.
- The office was laid out incredibly well for this, with long tables each group could call home.
- A workshop is definitely a great way to start a hack day, for people who need it. (For those who don’t, get them working!) The handbook is very helpful; leverage it.
If you have any feedback or anything to add about your experience, please share! Also, I’ve mostly caught up with Trac (my inbox exploded thanks to this day), but if there are any hack day patches or tickets waiting around for feedback, let me know.
Beau Lebens 7:55 pm on August 15, 2012 Permalink
Not only was that a lot of people, but there were probably another 20 off to the right of that shot that didn’t fit in the frame! Great day, and thanks for this thorough write-up.
Helen Hou-Sandi 11:03 pm on August 15, 2012 Permalink
And people like me in smaller rooms on the side
Japh 12:40 am on August 16, 2012 Permalink
And people like me sitting on the other side of Alex
Matt Wiebe 3:28 am on August 16, 2012 Permalink
UI/UX room FTW
Lance Willett 8:11 pm on August 15, 2012 Permalink
This was by far the most productive and best-attended dev day I’ve been a part of. Kudos to the community for making it a priority.
For Twenty Twelve we had 17 (seventeen!) contributors, 15 in person around one big table and 2 more on IRC helping out.
Such an amazing event. I’m still jazzed just thinking about it.
Scott Kingsley Clark 8:13 pm on August 15, 2012 Permalink
I really enjoyed the opportunity to learn about Unit Testing and how I can be a better core contributor by ensuring my patches pass unit tests. I can now also contribute new unit tests if they are needed for any new features, which is really an awesome skill to have. Major kudos to Kurt Payne and Nikolay for helping me get into it! I spent most of my time trying to get it installed and setup locally, but during that time I was able to get into the code and understand how it all works.
Ipstenu (Mika Epstein) 8:19 pm on August 15, 2012 Permalink
Nacin’s face when he turned around was hilarious.
It was everything I thought it would be, and more. Including awesome coffee (dang it, Hanni!) and being able to talk to people right then and there. Very nice. (Boy, my pink shirt really stands out in the back there… Hi mom!)
Noel Tock 9:13 pm on August 15, 2012 Permalink
Was a great time, looking forward to next years again
John James Jacoby 9:15 pm on August 15, 2012 Permalink
The BuddyPress team was able to get 1.6 out the door, and this was the first time everyone had been in the same place at the same time. Great fun was had by all, and we were able to scope out a lot of our plans for 1.7.
Boone Gorges 9:16 pm on August 15, 2012 Permalink
Jinx
John James Jacoby 9:17 pm on August 15, 2012 Permalink
Winner!
Boone Gorges 9:15 pm on August 15, 2012 Permalink
It was really a great event.
To add to your list of the day’s accomplishments: The BuddyPress table cleared the 1.6 milestone and packaged the release (I sent BP 1.6 on its merry way from the airport that night).
Kurt Payne 9:35 pm on August 15, 2012 Permalink
We had a lot of interested people working with unit tests and it warmed my pragmatic little heart. We also had a first time contributor get props contributor in the unit tests! Nikolay was overflowing with ideas on how we can improve the framework, too. I’m eager to see where this goes with WordPress 3.5 and beyond.
Joachim Kudish (jkudish) 9:44 pm on August 15, 2012 Permalink
It was a really fun event in terms of organizing it (big props to Rose who did a lot
), participating/contributing and learning (personally, I learned more about the unit test framework and how it works)
John James Jacoby 12:31 am on August 16, 2012 Permalink
Really wish I would have made it to that. Heard nothing but good things.
Japh 12:44 am on August 16, 2012 Permalink
Thanks to everyone involved in organising the hack day, it was such an amazing thing to be a part of. I had a great time, met a lot of awesome people, and learnt a lot. It was so hard to stay in one group knowing there were so many other awesome and interesting things to learn about and people to learn from!
Looking forward to the next one!
Andrew Nacin 3:31 am on August 16, 2012 Permalink
Joey helped put together a Polldaddy survey. We emailed it to everyone who registered, but if you didn’t receive it, you can find it here.
Lance Willett 3:35 pm on August 23, 2012 Permalink
Sheri posted a bunch of nice photos from Hack Day to ma.tt — http://ma.tt/2012/08/wcsf-hack-day/.