We had a Calagator code sprint this weekend at Recent Changes Camp, an unconference about wikis and related topics. Wikis have strongly influenced our design decisions (all events and venues are freely editable by all users, and changes are tracked so you can see what’s been edited), so it’s very cool to hear Wikipedia editor Steven Walling describe how our support for the Universal Edit Button sold him on Calagator. Listen to him talk about this in a short video recorded during RCC09.

We made good progress at Saturday’s sprint. Perhaps the most exciting bit of news is that Igal’s “with_theming” branch has now been merged into the main code. This means that Calagator now has support for other groups using our software in their own communities, with custom text and styling.

Before this, people had to edit out the Portland-specific parts by hand. There are already users in Sweden and Vancouver, BC running their own Calagator instance, and this update makes the process much easier. We’re working on fleshing out the documentation, but take at look at the theming README to get started.

Other documentation on how to install, use, and contribute to Calagator is available on our Google Code wiki.

Our First Year

February 17, 2009

Last month, I asked Calagator contributors to reflect on where we’ve been and where we’re going. We started out trying to create a public, collaborative calendar, using agile development techniques—in particular “do the simplest thing that could possibly work.” Did we succeed? Here’s what they said.

Our code sprinters have enjoyed working on the project. “Lack of time” seems to be the most common reason for not being involved more. We recently created guidelines for submitting a patch, so people will be able to contribute even if they can’t get to code sprints. Our hope is that this will encourage contribution from outside Portland as well.

The most popular requests for where we go next involve expanding Calagator to other areas, and allowing users to mark what events they’ll be attending. The work on those features is just about ready for primetime. You can follow the progress on our mailing list, or check back for further announcements in a couple weeks.

One of the things I’ve been impressed by is how many more tech events Portland has now that there’s a central calendar to find them. In the last year we’ve gained a number of new groups and events that were enabled by people being able to see what else was going on, and what needs aren’t being met. These events are able to grow beyond the organizer’s personal network because there’s someplace the entire community is watching. That’s inspiring.

The usefulness of such a tool has not escaped notice outside the Portland area. Our code has always been available to fork and use elsewhere, but now that we’ve started to add support for re-theming, we’re seeing more people setting up their own copy for another community they’re involved in. We hope that Calagator will eventually be able to support many different areas from the same site, but there’s much work needed to get us there. In another year, maybe we’ll be able to show you a giant starfish of a Calagator, connecting people from around the world.

So yes, it seems we succeeded. Which is not to say that there’s nothing left to do. We have a pesky recurring events requirement that’s turned out to be very complicated to implement, as well as a number of other improvements in the tracker. And that’s before we get into the whole world domination thing. I hope you, the Portland tech community, and those in places beyond, will continue to follow along and join us in creating “the best calendar aggregator possible”.

Happy Birthday Calagator!

January 19, 2009

First Birthday Cake

Today Calagator is one year old. From the mailing list report on our first code sprint:

Update for 1/19 (first meeting): Today several of us met during the Code Sprint gathering at CubeSpace to talk and work on the calendar. … The first draft of the application is available at http://calagator.org/

In just one meeting we had a working application with basic features. Since then we’ve fleshed it out substantially, but of course there’s so much more to do. Please join us for a first birthday code sprint and party afterward, on January 24th, to celebrate how far we’ve come from “wouldn’t it be nice to have a community calendar anyone could edit?”, and build toward future awesomeness.

Calagator in the News

December 10, 2008

As seen on...

Anyone who’s been around the Portland tech scene for long will know that Rick Turoczy is an amazing advocate, promoting local web technologies far and wide. Last night he was on KGW’s Hot Box news program, and mentioned Calagator along with several other projects. Click the link to see our five seconds of tv fame.

Rick also talked about Calagator in his Portland Web Innovators presentation on the State of Portland Tech in 2008. Watch the video to hear about how far we’ve come in the past year. 2008 has seen a huge surge in events, new projects, and other interesting tech activity, and the Calagator team is happy to be a part of this, both as an ongoing software project, and something that facilitates our community meeting up and geeking out.

Seeking Gardeners

October 26, 2008

Regular Calagator users may have noticed a upswing in spam lately. We seem to be a new favorite target for people looking to promote sales of certain medications and photos of female celebrities. The Calagator development team has been working to filter against spam entries, but as anyone with an email address knows, even the best spam filter sometimes lets things slip through.

We often talk about Calagator as a wiki-like collaborative calendar, so we borrowed an idea from the wiki world, and added event and venue versioning. This way, if someone (human or bot) decides the SAO Poker Night really needs a bunch of links to [insert generic spam topic here], anyone can roll back the entry to the previous version, cleaning it up.

Here’s how it works:

Go to the entry you want to fix and click the edit link.

DorkbotPDX Meeting » Calagator_ Portland_s Tech Calendar
Uploaded with plasq‘s Skitch!

Select a different version number, and the edit fields will revert to the content for that version.

Portland's Tech Calendar
Uploaded with plasq‘s Skitch!

Then click the save button, and you’re done. A new version with the reverted content is created, and the spammers are foiled (for now).

How do you find out when there’s an entry that needs some cleanup? Calagator now has a Recent Changes page, with a matching Atom feed you can subscribe to in your favorite newsreader. Help us by keeping an eye on things, and fixing spam as it occurs. If you see a wave of new spam the filters aren’t catching, let us know on our Get Satisfaction page. Filtering works well against predictable bots, but less so with human tampering, so even as our filter gets better, we still need your eyes to make sure Calagator remains a great, useable calendar for the Portland tech community.

As we’ve been working on Calagator, I’ve told people “we want you to be able to have a calendar with only the Ruby and beer events if that’s what you like” as our goal for tagging, search, and feeds. This weekend we accomplished that goal. Now, if you enter a search term into the box in the upper right corner of the page, you’ll be offered Atom and iCalendar feeds to subscribe to. It’s a proud moment.

OSCON attendees might like to try this OSCON search.

With this update, we’re most of the way to our 1.0 milestone. The remaining items are recurring events, and creating a Calagator user guide to share with our user communities, both of which we’ll be tackling at future code sprints. And of course there are always bugs. You can help us as always by using Calagator, entering your events, and letting us know of any problems via Get Satisfaction and our issue tracker.

I’m behind on relaying code sprint updates, but as of yesterday we have something especially cool to announce: you can now search all events on Calagator. You’ll see a little search box in the upper left corner. Type in whatever you’re looking for, hit enter, and ta da! Search results. We’re using acts_as_solr and the Lucene Query gem. If you get more results than you’re expecting, it’s probably because we’re using a Levenshtein-distance based “fuzzy” search by default. We’ll be tinkering with that fuzziness level and adding date filtering and other options to the interface in coming weeks.

We’ve also created a branch to migrate to Rails 2.1, which offers useful new features like better timezone handling. There are a few kinks to work out before we can merge that into the main application, though.

Another thing we’re working on right now is a guide to Calagator: a handbook for organizations and individual users who might want to work with our system. If you’ve been looking for a non-programming way to get involved with the application, come help us write this. You can find the document so far on our wiki. It’s a key part of our plan for the 1.0 release in July.

I’ve very excited about the progress we’ve made so far, but we still have plenty to do in the next 7 weeks. Please consider joining us for our next code sprint on June 21. We’re always looking for more people to help with development, design, testing, and documentation.