This upgrade was the smoothest yet, probably due to the lack of custom plugins or templates I am relying on these days. But the urge is still there to tinker. So is the urge to ‘minimal’ with something like PyBlosxom, Jekyll, Hyde, or to again write my own (in my work I’ve built full-on CMS’s, thin website frameworks, and have experimented with Django and web.py).
It always comes down to how I choose to use my time. Time is everything.
I think you can trace this way back to 2004 and Howard Dean’s run for the presidency. Their team chose Drupal as the framework to leverage for their web efforts and it paid off as part of what was the most Internet-savvy campaign by that time. Inspired by that campaign and their use of technology, I had relaunched Philly Future in fact.
Dries Buytaert says of the choice:
First of all, I think Drupal is a perfect match for President Barack Obama’s push for an open and transparent government — Drupal provides a great mix of traditional web content management features and social features that enable open communication and participation. This combination is what we refer to as social publishing and is why so many people use Drupal. Furthermore, I think Drupal is a great fit in terms of President Barack Obama’s desire to reduce cost and to act quickly. Drupal’s flexibility and modularity enables organizations to build sites quickly at lower cost than most other systems. In other words, Drupal is a great match for the U.S. government.
David Cohn has published to his blog his final project to graduate with a Masters from Columbia’s journalism school – a report on the technology and people behind the Dean campaign of 2004 – Drupal Nation: Software to Power the Left.
I’ve started to use Contemplate for Philly Future to modify outgoing RSS. Previously I was modifying template.module directly to inject to default categories into every item’s RSS node. Hacking up core modules is a no-no.
Sorry for the sudden lack of conversing and blogging as of late. My day job has been keeping me really busy. That, along with physical therapy (which has stalled btw – I’m going to try epidural steroid injections next), has really been kicking my ass.
In addition to all this, the past month or so, Philly Future started to crash uncontrollably. Drupal’s aggregator isn’t built to scale, in terms of size, as I have painfully found out. It took some major indexing, cache tuning, and aggregator module tweaking, to stabilize things. Along the way I learned quite a bit about MySQL and Drupal. Enough to know that I need look for a replacement for the aggregator or majorly refactor its database usage. Even so, I plan to submit the improvements I made to the community. They’re going to give us a few more months I think.
Some days I still can relate to Chris Gardner’s character in “The Pursuit of Happyness”, where instead of traveling a myriad of buses, perfectly timed, each day to negotiate making it to my place, the job, or school, six hours on public transportation, now it is balancing work, home, health, and passions like Philly Future. A far better situation. But still not enough time to do it all.
Not to vent, but Blogspot’s default of outputting Atom and no RSS for its users gave me all sorts of headaches. A huge expense in time that that drove me away from more important matters at Philly Future. CivicSpace/Drupal’s aggregator does not handle Atom. That means if you are on Blogspot, a site like Philly Future could not include you. An upcoming version of Drupal’s aggregator will have this capability. Bryght’s hosted Drupal solution does right now. However, I couldn’t wait for Drupal to release an aggregator with Atom functionality, and I’m self-managing Philly Future – so I needed my own solution.
A simple service that would, upon passing it a URL of an Atom feed, produce RSS, be best. That way I could avoid hacking Drupal code. A few folks suggested I use Feedburner, and for a while I did, until I read the terms of service. I was, inadvertently, claming I owned those feeds! Once I discovered this, I removed those feeds from my Feedburner account and found another way. After an exhaustive search on Google, I found a few Python implementations of what I was looking for, but no PHP. The hosted web services that I did find wanted to charge money, or warned they were to stop service at any moment. I had to do it myself.
Not that anyone needs converters like this anymore as most services and aggregators handle both Atom and RSS, but I figured it would be a good thing to release for others reuse, so here it is. Using the required Magpie RSS, the PHP RSS Parser library, it retrieves, caches, and parses the passed in Atom feed, iterates over its items, and outputs RSS. A brute force approach, certainly not perfect, nor complete in terms of the metadata it attempts to convert, but one that has worked for the great many Atom feeds Philly Future encounters.