Wednesday, January 10, 2007

Geek Event Aggregator is back

Re-introducing the Geek Event Aggregator - the world's most comprehensive and least accurate compilation of technology events! The Aggregator regularly scans a huge variety of event announcement websites and gathers the information into a single location. Now, when the VIC-20 Users' Group schedules a meeting down the street from your in-laws in Pittsburgh, you'll know it.

(Yes, I've introduced this before, almost a year ago. But a LOT has changed, and the accuracy is much better now.)

The Aggregator uploads its data into a Google Calendar account - the most convenient way to access it is as a Google Calendar user (which I really do recommend.) Here's what you do.
  1. Log into your Google Calendar account and choose "Manage Calendars".

  2. Click "add calendar"

  3. Search for "geek event aggregator", then select "Add Calendar".

  4. Return to your calendar home. Oops, your calendar now looks dense with events. That's because you're seeing an unfiltered list of all events, everywhere. Better un-check "geekEventAggregator".

  5. Now you can make real use of the Aggregator - search for the city, state, or region of interest. The Aggregator attaches several keywords to each event based on its location.

  6. Don't take anything the Aggregator reports at face value! Double-check it all. Remember, it's just a poor computer trying to read webpages that were written for humans. It doesn't even attempt to find the time of day, it just declares that everything runs 9-5 Eastern time (who cares if it's in Johannesburg?) I expect to keep gradually improving the accuracy as time goes by.
If you don't have and don't want a Google Calendar account, you can also access it through a static HTML page, an ICS document, or an XML feed. In that case, you don't get Google's handy Search button, and you'll need to use your own patience/creativity to find events in the places you want.

The Geek Event Aggregator is written in Python (of course!) Behind the scenes, it uses TurboGears and PostgreSQL. (No, you don't see a TG-based web application; the web app generates an annotated version of each scanned webpage, which I can use to troubleshoot the scan; thus, the improved accuracy of this second-generation Aggregator.)

I expect to present a Lightning Talk on it at PyCon 2007 (you are going to PyCon, aren't you?)


Anonymous said...

That's pretty cool! :) Did you notice that there's no scroll bars for the search results though? What's up with that?

Unknown said...


Thanks for the compliment! As for scrolling - hmm. I guess that's what I get for outsourcing my GUI to Google!

Actually, using the little blue forward/backward arrows to the left of the "Today" button move you through time in the search results - It accomplishes more or less the same thing as scrolling. I didn't see it either, though, until you asked the question - it's not really where convention tells you to look for more results.

Andrew said...

This is pretty nice. It's far more working then the one I tried to write. I was wondering a few things: is the source available? Can we make additional regional calendars using this tool (so that for instance I in Chicago do not see regional events in CA.). Also, I developed a similar technique for auto extraction of relational data from webpages if you're interested, my source is written in Perl. Cheers, Andrew

Unknown said...

Just like andrew, I was wondering if I could take a look at your source. I'm working on developing an open-source calendar parser with the limited goal of parsing class schedules/syllabuses at my university (OSU) and the extended goal of then going on to parse any (well as much as I can) calendar data found anywhere on the web or documents in varying formats.

Unknown said...

See this new post for the code:

Anonymous said...

i have tried and tried to find this on google calendar but i always come up with nothing. has this gone away?

Kevin Cole said...

I subscribed to the aggregator a few PyCons ago, but haven't made as much use of it as I'd like. Today, I tried following the instructions on your blog. No joy w/ the search...

When I see the full calendar, I see events in Arizona, for example. But when I hide the calendar and search my calendars for "Arizona" I get no hits.

Am I doing something wrong?

Unknown said...

Kevin, I'm having similar problems, and I don't know how to fix them. I'm currently working on a new and improved version (yes, again) that will have a Google App Engine front-end... hopefully that will be up in a week or so.