Running a developer conference is challenging. Really challenging.

But I’m lucky. I ran GraphQL Europe 2017 with a team of four people who care deeply about GraphQL and were determined to create a special event.

This article is a guide - and a reflection - on what it took for us to plan, organize and execute Europe’s first GraphQL-dedicated conference. We got a lot of help along the way and my intention is to opensource the knowledge we inherited, picked up and learnt.

So here goes…

PS: This year’s edition will be taking place in Berlin on June 15th, but be sure to check out GraphQL Day in Amsterdam on April 14th if you can’t wait that long!

1. Make sure people are interested in the topic

Validate the topic before you think about organizing a conference

Before launching GraphQL Europe, we planned a series of meetups. In Berlin alone, there were over 100 people consistently in attendance. We could see that GraphQL meetups in other cities were reaching similar numbers. We also set up a GraphQL dedicated Slack channel, which grew rapidly. From here, we went on to setup a landing page with an email subscriber list. As the subscribers poured in, we knew our opinion had been validated and we began to properly plan.

2. Have all the skills you need on your core team

Bring more than just developers onto your team

Non-profit conferences require a dedicated core team. Most of the work is done after normal hours. The GraphQL team had two developers, two business people and a designer. This was the perfect mix of skills to push the event forward and for the team to be pretty self-contained.

Artyom Chelbayev, one of the GraphQL Europe team wearing our team shirts!
Artyom Chelbayev, one of the GraphQL Europe team wearing our team shirts!

The audience enjoying a speaker at GraphQL 2017
The audience enjoying a speaker at GraphQL 2017.

3. Divide and conquer

Give each team member a particular role and hold them accountable

We had a regular thirty minute check-in once a week, syncing on the topics for discussion one day before, via Slack. We used Trello to coordinate tasks, Google Drive to share resources and InVision and GitHub for website and design assets.

Divide the responsibilities amongst your core team and make sure those people have full ownership. We created an email address for each area and everyone on the core team received the emails, that way we had clear transparency and also accountability.

  • Logistics: this person covers venue, food, A/V setup and various things like this. Usually, they have a large amount of work to do at the start, particularly with visiting venues.
  • Sponsors and Finance: this person will do outreach to potential sponsors and partners and will also make sure they are looked after during the conference.
  • Speakers and Content: this person will do the outreach to speakers, manage the CFP and application and selection process. On the day, they will be the point of contact for the speakers, shuffling them to the stage when their time to speak comes.
  • Tech and Design: Usually two people, who work closely together. For us, there was a large overlap with the person responsible for tech and for speakers.

4. Get a company behind you

Honeypot and Graph.Cool as co-organizers

The founders of both Graph.Cool and Honeypot are co-organizers of the event, the companies were 100% behind the initiative from the start, which helped in drawing on resources, such as marketing and design. It also aided in initial costs, like the deposit for the venue.

5. As a first step, get a venue

And be flexible about the dates

Getting the venue is one of the biggest logistical hurdles you will face. When approaching a venue, come with three possible options for dates. To avoid lots of back and forth, reach out to multiple venues with a detailed email of your requirements, plus some key questions you should know upfront:

  • What is the maximum number of people?
  • What is the cost?
  • Is furniture included?
  • What is the A/V setup?
  • Is WIFI included?
  • Is the venue wheelchair accessible?
  • Is catering provided? Can you get outside caterers in?

Locations in Berlin for Developer Conferences:

  • Arena: cool vibe, as it was once a club and is located next to BadeSchiff. The problem with this place is you have to organize all the furniture, but if you are looking for a very Berlin-venue, then this could be a great option for you!
  • Schlossplatz 1: Located on the campus of the European School of Management and Technology (ESMT), built between 1962 and 1964, Schlossplatz holds 360 people and is a spectacular location. Your event needs to be approved by the university.
  • Kalkscheune: This premises features 12 different rooms, plus a lovely inner courtyard. All rooms are flooded with daylight and the largest room has 400 m2 of floor space. The team are friendly and the central location makes this a good option for a medium-sized conference.
  • nHow: One of our favorites, this hotel is right on the Spree and has a spectacular balcony where you can opt to get lunch served.

Attendees of GraphQL-Europe 2017 at our venue, nHow Hotel, enjoying the lunch on the terrace
Attendees of GraphQL-Europe 2017 at our venue, nHow Hotel, enjoying the lunch on the terrace.

5. Make sure the ticket price covers the cost of the venue and food

Let the venue guide ticket price

GraphQL was established as a non-profit conference, so our main motive was to make it as accessible to people as possible. As a word of warning - organizing a developer conference can be a big financial risk. Be sure that you plan your budget very well to avoid incurring significant losses yourself.

The cost of the venue will dictate the price you can charge for the tickets. You want to guarantee that the ticket price will cover at least the cost of the venue. Each successive sponsor allowed us to plan for more exciting things, with perks such as a party and swag bags being planned very last minute. We planned for a conservative, base and optimistic case. In all cases, the price of the tickets would allow us to break even.

We also made sure food was included in the price of the hotel so that we could pay it all in one lump sum payment. Include lots of vegan options and have plenty of drinks available, so people can stay alert and concentrated.

Food options at the venue

6. Find at least two speakers before you launch the event

Give credibility to your conference by anchoring it in great content from day one

On our core team we had Oleg Ilyenko, creator of Sangria, and Johannes Schickling, Co-Founder of Graph.Cool, both of whom have built strong relationships within the community. This allowed us to connect with great keynote speakers, including Lee Byron and Dan Schafer, co-creators of GraphQL.

Lee Byron giving the closing keynote speech at GraphQL-Europe 2017
Lee Byron giving the closing keynote speech at GraphQL-Europe 2017.

7. Take diversity seriously from the start

Plan serious time investment for direct outreach initiatives

The Travis Foundation, through their Diversity Tickets program, supports conferences and events by helping them to offer diversity tickets to underrepresented minorities in tech. Through a dedicated website, minorities in tech could apply for tickets for GraphQL-Europe 2017. GitHub covered the full cost of the diversity tickets which we offered to attendees for free.

Despite our blind Call for Papers (CfP) in our application process and our Travis Partnership, we were disappointed with minority representation at GraphQL-Europe 2017. Our learning? You need to set time to do direct outreach to invite minorities to come and speak at the conference - and offer support in developing the content, particularly for first time speakers. In the end we had 9% female attendance at the conference. We hope to increase that significantly over the next few years.

Alison Johnston delivering her speech “Mock Q buddy: Easy API Driven Design and Accurate Documentation with GraphQL”
Alison Johnston delivering her speech “Mock Q buddy: Easy API Driven Design and Accurate Documentation with GraphQL”.

8. Use a blind CfP

And do a speaker pre-selection

Before we launched the official CfP, we did a speaker preselection to fix our keynote speakers early. In our case, we managed to get Lee Byron (GraphQL Co-creator from Facebook) and Sashko Stubailo (Open Source Lead at Apollo) to hold our keynotes.

For the CfP process, we used PaperCall to manage all talk submissions, which has an optional “anonymous” submission process and back and forth feedback with potential speakers.

The actual CfP was launched six months before the conference. We constantly promoted the CfP on all available social media channels, as well as at local Meetups and developer conferences. Furthermore, we reached out to thought leaders and experts encouraging them to submit talks.

Tasveer-Singh speaking at GraphQL 2017
Tasveer-Singh speaking at GraphQL 2017.

9. Form a selection committee

Be systematic in your speaker selection

Once the CfP was closed, we formed a selection committee of GraphQL experts. In total, we had 61 applicants through our CfP and we selected 14 speakers.

As we received a lot of proposals, we started by categorizing them into certain buckets (e.g. “GraphQL adoption”, “GraphQL tools”, ”GraphQL on Mobile”…). For the final selection, we simply picked the most appealing talk from each bucket to ensure a wide range of topics to be covered at the conference. While we were happy with the range of topics, we somewhat failed in creating a diverse speaker line-up, having only two single female speakers in the end.

From left to right: Panelists Björn Rochel, Mina Smart, Daniel Schafer, and Brooks Swinnerton, with moderator Chad Fowler
From left to right: Panelists Björn Rochel, Mina Smart, Daniel Schafer, and Brooks Swinnerton, with moderator Chad Fowler.

10. Look after your speakers… and your moderator!

Once all speakers have been selected and confirmed their attendance, it’s important to provide them with everything they need to know, including things like reimbursement, travel and accommodation, conference venue, logistics for the talk (slide format, audio available…). Also, don’t forget to send friendly rejection emails to all other submissions, encouraging them to resubmit next year again.

We had a travel budget of €1000 per speaker coming from outside of Europe and €500 per speaker coming from inside Europe. We also booked accommodation for all speakers in the same hotel. Many speakers had their company’s pay in exchange for free tickets.

A moderator sets the tone for the conference and we were lucky to have Chad Fowler join for the role. He did a great job of keeping the conference smoothly progressing.

Chad Fowler, our moderator, introducing Dan Schafer, co-creator of GraphQL
Chad Fowler, our moderator, introducing Dan Schafer, co-creator of GraphQL.

11. Be selective about your sponsors

Make sure they fit the conference

For sponsor outreach, we tried to target companies using GraphQL in production. Luckily GraphQL attracts a wide breadth of developers.

As we are a non-profit conference, we were able to be selective about our sponsors to make sure they fit our audience. In the end, we had nine sponsors in total.

Zalando, one of GraphQL Europe’s sponsors
Zalando, one of GraphQL Europe’s sponsors.

12. On the day, the devil is in the detail

Do a dry run of the logistics the day before the conference

The day before the conference, the whole team plus five volunteers met. We prepared the swag bags and assigned responsibilities.

We used the Eventbrite app for check-in, which is fast and efficient. At the start of the day we had 5 people on check-in, answering questions and giving out swag bags.

We organized a speakers’ room for the speakers to come, relax and practice their talks. There was food and drink there. We asked the speakers to be in the room 20 minutes before their talk, where a member of our team would come and collect them and bring them to get mic’d up before going on stage.

We assigned one person to look after accessibility and make sure the code of conduct was applied. We provided all guests with access to a phone number they could ring in case they needed accessibility help.

We also used the moderator to remind people of logistical details.

Conference check-in

13. If you can afford to have a party, have one!

Cheers to that…

At the very last minute, I mean the very last minute, we organized a party by putting €800 behind a local bar. Chad Fowler announced the party as the last message of the conference and a giant Honeypot brought the crowd there. The most important thing about the party was that it was in walking distance.

So, what are the key takeaways when organizing a developer conference of your own?

  • Be passionate about the topic - there will be blood, sweat and tears; and a lot of sleepless nights. Be prepared!
  • Get community and company support
  • Have a multidisciplinary team and clearly delegate responsibilities among your team
  • Make sure food and venue is covered by pessimistic ticket sales
  • Start diversity initiatives early
  • Have a blind CfP and a selection committee
  • Enjoy!

Emma Tracey

Emma Tracey

Emma is Co-Founder at Honeypot. Emma looks after Product and Marketing and loves working closely with users to deliver new features.