Older blog entries for srl (starting at number 98)

So. I've been busy and/or depressed the last few weeks and haven't gotten much hacking done. I did, however, go to Montréal for one of the U2 shows there. That was fun. Found out that Skud's paper on Reefknot got accepted for YAPC::America::North (congratulations).

I'm trying to get back into the swing of things; hopefully this weekend will prove useful.

Calendaring

async: There were discussions some time ago on the ietf-calendar list about XML iCalendar. I think it died on the vine, and honestly, I think that's a good thing. At any rate, RFC2445 is still being revised and updated on the IETF standards track, so if you disagree with something about how it does things, speak up on ietf-calendar. Standards are good, and the standard is leaning away from XML. There's no reason to reinvent your own wheel, poorly.

Reefknot and libical are the two major calendaring projects/libraries I know of that parse and use iCalendar. (libical is the core of Evolution's calendaring functionality.) Mail me if you want more detailed explanation or if you'd like to get involved with Reefknot.

You might want to check out the Reefknot Bootstrap Guide (an intro to iCalendar) or the Reefknot Developer Roadmap, which is slightly out of date but is still essentially right. The Reefknot website has other links you might find useful as you start to learn more about iCalendar.

other stuff

Nothing much going hackingwise--- saw *Traffic* last night. Getting my bike fixed up to ride again; determined that the Broadway Bicycle School is indeed very cool. But I knew that already.

Took most of the weekend off, angsting about things that have very little to do with my opensource work. Unfortunately, angst isn't very productive for me. When I sublimate my stress into my work, I get much more done. ;)

Tonight, I converted many of the TODO/FIXME items in Net::ICal into Sourceforge bugs so that people can easily find things to work on. It seems that Reefknot is finally developing enough momentum that I miss things if I don't check my email for a few days. This is a good thing.

My ankle is slowly healing. I think I'm going to start trying to bike again, before the weather gets too hot and I get really lazy.

Dionys: Get *Learning Perl*, published by O'Reilly Press. Then get *Programming Perl*, also published by O'Reilly. Fear anything that says "Learn ____ in 24 hours". Oh, and join the beginners at perl org list.

Spent last night cleaning up the Palm datebook->iCal script and posted it to reefknot-devel. Whee. I can now suck my datebook out, mangle it with Net::ICal, and output it in iCal. One step closer to doing Real Useful Things with Net::ICal. I think the next task is to be able to put the data back into a PalmDB, so that a calendar gadget built in Perl can sync with my Palm. That would be cool.

Much Reefknot work. Spent most of last night and today reading the draft for CAP (Calendar Access Protocol), which is the proposed IETF standard for making calendar servers and clients talk to one another. I spent a while understanding it and writing the Reefknot Guide to CAP so that people on the team can understand the kinds of issues we have to tackle to implement CAP. There's been talk of building a CAP-like protocol for Reefknot to use until CAP stabilizes, and I think we'd want that to be as much like CAP as possible if we do decide to implement it.

At this point, I think Reefknot needs documentors and architecture-minded geeks at least as much as we need coders. (Want to come play with us?) Fortunately, someone from my local #perl popped up and made hirself useful in that regard, doing nitpicking work to get all the copyright headers, code, and documentation consistently organized across Net::ICal. (Thanks coral.)

The datetimeATperlDOTorg list seems to be picking up quite well. Rich has livened things up quite a bit by making a proposal for unified date/time modules in Perl. That's exactly the sort of thing the list was created to address. I've also learned more than I previously knew about Mac date/time handling, thanks to pudge.

Worked a bit more on the Reefknot::Storage and Reefknot::Query modules. Not much though, as some of the modules I need to use are still horribly broken in CVS. The Reefknot team's talking about the need for a generic OO date/time module in Perl, separate from any iCal-friendly implementation we might build.

I'm starting to look for small Perl calendaring and date/time projects, asking their maintainers to come play with the Reefknot developers. I did a little of that. Also, I learned how to set up a list at perl.org.

Rich pointed out that there are many Perl modules that do date and time handling, but that there's no place for people who work on them to get together and talk about what's good, bad, and missing. So, I got the datetime@perl.org list set up.

jdub reminds me that as large a project as Reefknot is, it's important because we need Free implementations of RFC2445. Thanks for the encouragement.

Hacked on Reefknot::Storage::DBM and Reefknot::Storage::Query last night until a Debian unstable upgrade broke my BerkeleyDB libraries. Bah.

Weekend

Spent most of the weekend not-hacking, instead hanging out with Skud and seeing the sights. We had a big whiteboard session to rough out more details of the Reefknot::* modules and what they should probably do. That was fun.

Boston.pm

The Boston.pm presentation about Reefknot went fairly well. Yet again I'm struck by how much work we have left to do. There were implementors from at least 4 calendaring projects besides Reefknot there in one room; some open-source, some commercial. We're just hacking on this in our spare time. I feel daunted.

Chatted with Skud, jpr and Bruce Kahn about interoperability issues and Evolution and the evils of RFC2445. We talked about setting up a mailing list to test interoperability between various bits of calendaring software. Also, we considered having a periodic Boston-area iCalendar implementors' BOF. That could be cool.

It was a good night. Now, back to my regularly-unscheduled hacking.

Play

mtearle: For all the buzz around Reefknot, I don't really get it. People know what we're doing, and we're getting more interested developers by the week, but I don't feel like we're really doing anything earth-shattering. We're just putting one foot in front of the other. Maybe, given the sheer mass of the calendaring RFCs and proposed standards, that's a significant enough effort.

For those of you in or around Boston, Skud and I are giving a talk about Reefknot at the Boston.pm meeting on May 1 (Tuesday). See the link above for time, directions, and RSVP info, and mail me if you think you're interested in coming.

Reefknot got mentioned on the ietf-calendar list today for the introductory developer documentation that Skud wrote. We're also getting some more formal process developed for approving major changes; at Rich's suggestion, we're trying out the Apache patch approval system, which relies on the votes of people with CVS privileges. Today, I wrote up a patch to fix the current CVS brokenness, just to test out the new system. We'll see.

Work

I'm pondering writing up a document/proposal for an open source content management system that Doesn't Suck, because my management seems to be entranced with products like Vignette StoryServer. I think we can do just as well as a community, if not better. After all, the companies that buy Vignette or its ilk all customize it beyond recognition, paying integrators $thousands on top of their license fees. Why not eliminate license fees from the equation and make something that everyone can become familiar with easily? Schuyler Derle (of O'Reilly) and I keep talking about the fact that this thing needs to exist. Maybe I'll sketch out some designs or something. Not that I have time to implement it or anything.

I've looked at Zope, but it doesn't provide things like workflow out of the box, and I'm reluctant to introduce a Python gadget with Zope's learning curve into our Perl environment. On the other hand, it has some nifty features. I'm just not sure how well it'd handle the data flow that my company has (we republish an entire big city newspaper online, every day).

Not much doing tonight. Paid bills, cleaned up around the house. Thanks to Rich's prodding, I've registered reefknot.org. Installed NetBSD on an old Mac IIci I have lying around the house.

Found out that some members of the ietf-calendar list may show up at the Boston.pm talk, so I'm trying to get a set of coherent directions/talk info up on a webpage somewhere. You'll hear it here first.

89 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!