Community event API, Where Are You?

On the occasion of #opendataweek and prompted by kind remarks of a fellow user, I’d like to resurrect an old discussion about a community API. Starting with calendars, which might play well with a directory. It’s nice that we have a network events category, but I find this hard to use it for actual planning when they are not listed chronologically, and missing some key metadata (i.e. how relevant, how far is it, …).

In our local chapter, we have been running an unofficial catch-all (i.e. anything we hear about and anyone who submits anything open-related) Google calendar, from where they get promoted to a Discourse thread, get shared in chats/social media, and once they become official they are posted to our blogs and sent out in newsletters. For hackathons we have a special site based on our own tool:

I don’t think we should necessarily reinvent wheels and build our own calendar - these days it’s just a pretty standard CMS module - but I do think the possibility to track information in the network through open data best practices - publishing and aggregating an open event dataset (via an open schema, e.g. see our technical discussion around dribdat) should come to the fore.

Looking at other communities, it seems that efforts like this are best motivated by a clear functional value (ROI, if you like). Like software release calendars, we should keep track of the essential outputs of events, the seasonal cycles of our activities, and make sure that they have a clear stated purpose in coordination. In the case of our local chapter, channeling the attention of our community across hackathons and conferences is a clear value case.

And, speaking of not reinventing wheels:

I’m sure a lot of you have come across some good examples, and I’m interested to hear what other chapters are doing. Keeping track of each other and connecting is essential to what we do, and our ideas should should help OKI make plans to better network our communities! So hit reply and tell me about your community calendar.

PS. the subject of the topic is inspired by Lanyrd API, Where Are You?

For just over 6 years I’ve been running listing tech events on an Open Data site …

We actually started after a local effort based on a group Google Calendar suddenly died and we thought it was a good project that was worth continuing!

We did talk to OKFN for a bit about running an Open Data one but sadly that didn’t happen in the end.

I’d actually disagree with “these days it’s just a pretty standard CMS module” - those don’t have the features you need to make a site really go well. Things like dealing with recurring events, keeping data up to date, importing events from specialist and general data sources, good editing and display options … We’ve seen a lot of other community listing sites come and go over the years, and by now I have strong opinions on what it needs to work!

Anyway, happy to chat and curious what else comes out of this thread :grinning:

@loleg Thanks for bringing this up, useful to share our practices here!

For Open Knowledge International, we’re currently using a public Google calendar to track events our staff is present at, and other major open data events. You can access it via

I agree with you we should not build a new calendar… and I really like the way you shared yours on the forum - which makes it easy for people to see events & subscribe to it.
For us, the main value is in keeping track of what is happening across our network (so we can for example meet up with each other more easily), and across the wider open data field (so that we can decide how to participate, and also share information more widely through our social media).

@jarofgreen As for the separate Tech calendar, we used to have a similar one for Open Data events, but we found it took us too much work to maintain it, and it was not so practical for us to have it on a separate channel (instead of embedded in Google calendar which we all use)

If many of us are already using Google calendars for this, maybe we can think of an easy way of combining them into one Network calendar?

1 Like

I should start by saying I’m not looking for new work in this area at the moment … I’m aware this may just read as a me defending my project, sorry! But hopefully some of these points will help others who are thinking about how to do things in this space.

Open Tech Calendar actually came from a Google Calendar project that suddenly died. With that in mind, here’s what I think is wrong with Google Calendar:

  • The write access is too powerful - it’s possible for one person to totally delete all the contents, with no safeguard. As you let more and more people edit the calendar, this risk increases. You actually want lots of people editing the calendar - I’ll come back to that point later. But this is what happened to the Google Calendar that suddenly died - we woke up one morning to find it was almost all deleted. It probably wasn’t malicious - I’m going to blame someone’s dodgy syncing software - but the effect was the same. The calendar was gone.
  • Let’s people recur events for ever. This is a problem because the event can stop, and then your calendar is serving incorrect info. At Open Tech Calendar we only let people recur events 6 months into the future, and then we prompt them to come back and add more if they want. There are other solutions I’m sure, but the problem of making sure your info is correct is a big one.
  • No filters. Most users want to filter by something and only see a subset of events. Location is a big one - most people only want to see events in their local area. Also by group - and this filter works both ways. People want to see events from only one group sometimes. Also sometimes people want to see all events in a city but exclude one group (I’ll admit the last case is something we badly support at the moment, but we do support many filters.)
  • One timezone. Open Tech Calendar supports all timezones on one calendar - check out our german events at Germany - Open Tech Calendar and if you click one, you’ll see times in two zones - good for virtual events.
  • Very limited import features - OTC can import in many formats and from popular sites like Let others keep it up to date for you!

Some other quick notes:

we found it took us too much work to maintain it

So yeah, with calendars like this you really need to get to the point where you aren’t the only ones maintaining it. OTC is designed to welcome many editors in a safe way, and you really want lots of editors to spread the workload - It’s our 2nd Birthday! – Open Tech Calendar has a graph of our user base for instance, and that was after only 2 years! How do you get this? Well, there’s no magic answer here and to be honest, working on this point is probably one of my failings while trying to get other people to run calendars like this. I think the basic answer is that lots of people need to be getting some value from the calendar and then it’s worth other people’s time to add events.

it was not so practical for us to have it on a separate channel (instead of embedded in Google calendar which we all use)

Fair point, if only we knew a mechanism for passing data round! :stuck_out_tongue: OTC’s Open Data content is reused on websites, in slack channels, on email lists and in many people’s Google Calendars. So the data can totally appear in people’s Google Calendars.

Anyway, excuse long post. As said, I’m not looking for more work in this area but if anyone is interested in OTC PM me - I’m happy to chat.

@jarofgreen Thanks for the extensive answer! I think the point you raise on ‘lots of people need to be getting some value from the calendar and then it’s worth other people’s time to add events’ is a really important one: it takes an initial investment in time & effort to really get it off the ground. Great to see that the OpenTech one has been going strong for a long time now!

1 Like

Thank you from me as well to @jarofgreen and @liekeploeger for the feedbacks. It reminded me to reconnect to the makers of (a startup project with similarities to what you shared, James), and make sure that before we start to make any “improvements”, we talk to our community about their needs. Your points are good raw material and conversation starters. In similar vein to my response regarding Wordpress, I am in favor of a balanced diversity of platforms and open standards, and convinced that the choices we make have an impact to how people perceive openness of all sorts and sources through leading institutions like the OKI network.

And speaking of calendars, these questions are relevant to many of the themes of our conference in Berne next week:

Which you can also follow on Twitter @dinaconch

Hello all, just to pass on (in a minor thread hijacking, sorry) that I’m looking to pass on Open Tech Calendar; I’ve been running it for more than 6 years now and it’s time to move on. I’ve written more at Passing on Open Tech Calendar – would you like to run it? – Open Tech Calendar

To comment briefly:

It’s interesting to think; if you wanted to run a calendar of Open Data events, how would you approach that? One way is to insist that all events who want to be in it publish their own Open Data somewhere that aggregrator sites can consume. While OTC tried to encourage the production of Open Data I’m pretty certain I couldn’t have got away with insisting on Open Data only (some tech events didn’t even update their own websites at times!), but this would be a different case.

One question is how much an aggregator site could be trusted to just take all data it imports as truth, and how much checking / curration it would have to do.

Obviously the first would be ideal - as that promotes Open Data strongly, and lets a diversity of platforms spring up to consume the data. But I’m skeptical and fear it would end up more like the latter. I think at least some groups would set up a recurring event in a Google Calendar and then say “that’s my data source, import that!” and you would need to check it regularly to make sure the data is still correct and the group is still going. Also there are always edge cases - for example, every year about this time there is at least one group that runs events on the 4th Wed in the month or whatever and has just set up a recurring event that I have to contact and say “Are you really having an event on Christmas day? Really now?” (Already done one group this year). I tried to design bits of OTC’s UI to encourage people to check that, but when importing data you can’t control the UI they used to create the data.

Anyway, happy to chat to people about ideas here!