Organizing and running a successful GiveCamp event involves keeping up with a lot of different aspects of event management:
GiveCamp is a fun and exciting event to be part of but does not come for free. As with any large-scale event, running a successful GiveCamp requires a lot of coordination work to bring all the pieces together. Ideally, the leadership team for an event like this would consist of 3 main players:
Leader: someone, or perhaps a few someones, to serve as spokespersons for the event. They would take on the accountability for making sure that the event actually happens, recruit other leaders, approve spending, etc. Basically ?this person is the central point of contact for the event.
Participant Coordinator: this person would be responsible for recruiting developers, designers, dba? and other participants for the event. They would be responsible for putting together the communications for this group and work to assign them to charities once collected. An important aspect of this position is making sure that you have enough, b candidates on each team to prevent problems arising from lack of technical skill.
Charity Coordinator: this person is responsible for identifying and qualifying charities and other non-profits for participation in the event. The big ?otcha?here is making sure that the development teams will have enough information to build something for the charity. The developers should get some 1:1 time with the charity reps at the beginning of the event, but the more pre-qualification can be done before the event the better.
There is no way that one or two people could pull off an event like this of any scale without getting help. There are several other roles (not necessarily separate people) that are critical to the success of the event, and are listed here:
Analyst: part of the charity pre-qualification involves learning about the charities that have applied and determining if the charity is a good fit for the event. Typical analyst duties include:
Venue Coordinator: someone on the team will need to make sure that a venue has been selected that is large enough to support the size of the event, and provides adequate space for the different teams to work. See Venue section below for more information.
Our first event was done at a Microsoft Partner facility that had multiple cubicles and office spaces for each of the teams to work semi-privately. An alternative might be to get one big giant room, like a gymnasium, and have tables for people to work at. It would probably be noisy this way, but would probably feel more like a larger group effort ?like HackFest does when everyone is in the same room. For the first event, our venue coordinator worked with a couple of sponsors to help pay for meals and made sure that they were ordered, delivered and set up on time. Having snacks around and a couple of Xbox 360s also helped people take the occasional breaks as well.
There are a couple of important things to consider when selecting a venue, including:
Sponsorship is another important key to running a successful event. Unless you have a personal benefactor, or are independently wealthy, you’ll probably want to try to recruit some local area sponsors to help pay for things. Good items for sponsorship include:
Rather than take money, it’s always easier to take goods – so unless you’re willing to incur the tax implications of receiving money from a company, or set up a Non-Profit of your own to handle it, I suggest getting good as donations. For example – see if Dunkin’ Donuts would be willing to sponsor Breakfast one morning, or In-n-Out Burger sponsor dinner…
The whole point of GiveCamp is to make a difference in your local community. That means finding the right charities, getting them signed up and making sure that the teams building applications for them are focused on providing high value in a short timeframe.
Recruiting widely and early will help everyone get the most out of the event. For the 35 charities that responded to our original request, we ended up with 18 going into the competition. The decision to pair them down this far was based on the number of developers we had participating, the size of the venue we would be working in, and the requests of the charities themselves. It was important to us to make sure that the participating charities were actually non-profits and/or charities, and that they had well defined requirements that our teams had a good chance of completing by the end of the weekend.
Based on what we learned from the first of these events, all participating charities should be encouraged to attend as much of the event as possible. Having representatives from the charities on site made a BIG difference not only in the quality of the development products produced, but helped raise the morale of the development teams to have someone with whom they could work closely on their development. The happiest of development teams came from those that got to spend a large amount of time with their charities.
For each of the charities, we offered up a ?asket of goodies?containing books and software. This is a great place to get Microsoft involved as a sponsor ?sponsoring these baskets. Here? what was in our original basket from January, 2008:
Note that over time, we’ve learned that most charities aren’t going to make as much use of the software, so we’re probably going to stop donating that to each charity and perhaps raffle off some of them as prizes to developers that attend. It’s the developers that would make best use of them anyway.
We also suggest both a pre-event kick-off meeting, and a post-event demo+awards meeting. The pre-event kickoff meeting is intended to accomplish several goals:
The post-event meeting accomplished the following goals:
At the end of the day, these events are about providing technology solutions to non-profits and charities. We have several partners that we’ve been working with that provide some valuable services and software packages for our use. To compliment that list, here is a list of technology considerations we’ve put together in support of running a b and developer-friendly event:
Networking: Whether it’s wireless or wired connections, you’ve got to make sure that a solid and reliable fast connection. Especially considering the nature of the hosted web sites and databases… I’d also consider stress testing your environment if you’re not sure. Even at off-peak times, 100 developers hitting the web at the same time might overwhelm your network.
Source control: Our friends at SaaS Made Easy have agreed to host TFS sites for each of the charities participating in GiveCamp. You can always go with another SCC, but why would you want to?
Web hosting: we’ve been lucky to get the support of DiscountASP.NET for all our web hosting needs. You can certainly reach out to them as one of our partners, or (as some have done) set up your own hosting. If you’re going to self host, think about the variety of applications you’ll be supporting such as Web servers and Database servers, or whatever else your application needs.
This list is just a start, as each venue is different, but thinking about thge technology you’ll need beforehand can save a lot of trouble.
An important technical aspect of working with the charities is remembering that they are not technical wizards. When building a system for them to use the developers need to keep in mind that semi- to non-technical people will do most of the site maintenance. Using the products of one of our CMS partners is very highly encouraged. The event is not about showing off your mad technical skillz – it’s about providing value to the charities. Setting up and customizing one of the popular CMS packages, updaing the theme, outlining the content, adding downloadable plugins, and even developing your own plugin is the best use of your time while at the event.
Then, once the application is developed, make sure it gets deployed before you go home. 90% of the time, it is up to the development team at GiveCamp to coordinate with the hosting provider, configure the domain name, and deploy the application to the web. Your charity will NOT KNOW HOW to do this, so you need to make sure you do it for them. Since you’re using a CMS package, the charity should be able to maintain the site after you turn it over, but if it’s not deployed, they won’t be able to update it.
The main idea here is to build applications for charities as they usually don’t have the capacity to build their own sites, and we have the knowledge to get them up and running quickly. Once the code is written, it should get turned over to the charity.Â GiveCamp.org will hold absolutely no claims to the code that is written at one of our events, and each event organizer needs to make sure that all of the teams, and the charities know that.Â Some groups have recommended that each of the projects be published as Open Source, and allow anyone to work on and/or contribute to the code.Â As far as GiveCamp.org is concerned this is perfectly acceptable, as long as the charity (for whom we’re doing the work) is OK with that. Many of the charities I have talked to tell a story about how they lost control of their web site source code, and were no longer able to maintain it. As long as the charity understands what Open Source means, and they’re OK with it, I think it’s fine to proceed that way. Otherwise, the charity should own all rights to the source code that is created for them.
I’ve broken the timeline down into 2 sections – overall event planning timeline and “day of event” timeline:
11:00 AM – Arrive at Venue and begin setting up (put out signs, drop off food, drinks, etc.)
01:00 PM – Begin sign-ins for attendees
02:00 PM – Opening Ceremonies (introduce event, charities, developers, sponsors, partners, etc)
03:30 PM – START THE CODING!
AM – Training for developers & charities, any interviewing or news folks come out to document the event
PM – Training for developers & charities
AM – Continue working, but start to wrap up
01:00 PM – CODE FREEZE (turn in code, finalize deployments, have lunch with everyone)
03:00 PM – Final Ceremonies (developers & charities demonstrate the application)
05:00 PM – Reception
The suggestion was made at #WAM2010 to post a contact number on the public event web site so that family members can reach the event staff if they’re not sure where their loved ones are. With so many people working so late into the night, it is useful for them to have someone to call and ask “when did my husband leave the event tonight?” without wondering if they ran into any problems on the road and are unable to call home.
Consider creating some type of document that both the charity/non-profit and the developers sign that basically says “what happens at GiveCamp stays at GiveCamp”. This document would protect the charity from developers that don’t turn over source code or try to charge the charity, and protect the develpers from being forced to maintain the code they developed at the event.
When organizing your event be sure to contact any PMI (Project Management Institute), ISSA (Information Systems Security Association), AITP (Association of Information Technology Professionals) chapters or any other user groups in your area they can be invaluable resources.