Drupal Takes the Whitehouse!

Shortly after Obama took office, his administration launched the “Recovery.gov” website.  I found it notable that it was built on Drupal, an open source community content management system, on a short schedule and small budget.

When I posted about it, quoted a Reddit commentator who claimed to have been involved in its implementation.  In addition to providing information about the schedule and budget for the site, he said they were currently engaged in trying to move the Whitehouse.gov website from a microsoft-based system that was developed under a $20M outside contract, over to Drupal or some other open-source framework, like Django, or Rails.  Well, this week we learned how that turned out.

A new version of Whitehouse.gov was launched last week.  It was built on Drupal.  Selection of the platform and development and operation was contracted to General Dynamics Information Technology, so you can be sure it wasn’t done on the cheap.  Still, it is a great change, and it looks like some of the work was subcontracted out to Drupal creator, Dries Buytaert’s firm, Acquia.

Drupal was started in 2000 as a discussion board and news site for Dreis Buytaert’s dorm.  The Howard Dean campaign commissioned improvements to underpin their strong social media strategy.  That work lead to Drupal’s use by a lot of political and social organizers, including the Obama campaign.

I continue to think that the story of how Drupal went from a college dorm to the Whitehouse in less than a decade is an interesting thread connecting a much lager story:

It should provide a great lens for examining the rise of OpenSource software post the dotcom crash, the blossoming of social software, the evolution of political organizing and fundraising in the Internet-era, the role of agile development in government IT, and the role of the Internet in reshaping and opening government. Plus, it started in a dorm, so I’m sure there is some sex, drugs, and rock and roll in there too.

If those things don’t fascinate you, what the hell are you doing reading Geekfun?

(Tim O’Reilly adds and interesting perspective)

Mobilizing Geekfun With WPTouch

When WordPress.com launched themes targeted at small screens like the iPhone earlier this week, I was reminded that I was going to figure out how to improve the way Geekfun and our other blogs like Pet Project look on mobile devices.   Long ago I tried an early iPhone theme for WordPress, but gave up on it, I think because it created problems with the caching solution I was trying to use at the time.

Geekfun Mobile Geekfun Mobile Article

This time out, the solution was simple.  I installed the sweet WPTouch plugin from Brave New Code.  I’m quite happy with it.  It loads quickly and it is very readable and easy to use.  It only displays for mobile users, everyone else still sees your blog’s original theme, and its easy for Mobile users to switch to your regular theme if that is what they prefer.  It is also allows for a healthy amount of customization, which I’ll have to dive into deeper before rolling it out on our other sites.

If you host your own WordPress blog, I suggest you check out WPTouch, or one of the other mobile themes that are available, like Carrington Mobile, or WordPress Mobile Pack.

Fixing Upgrade Problems with Netatalk on Ubuntu 9.04 Jaunty Jackelope

As of Ubuntu 9.04 (aka Jaunty Jackelope), it is no longer necessary to jump through hoops to access files on an Ubuntu (or Debian) server from a Macintosh OS X client via netatalk.  Unfortunately, if you’ve previously gone to the trouble of jumping through those hoops by doing a custom compile of netatalk with openssl support , you are likely to run in to problems once you upgrade to Jaunty (and probably the soon to be released v9.10, aka Karmic Koala).  Fortunately, the fixes are pretty easy if you’ve managed to find this blog post.

There are two issues.  First, in order to support encrypted login, the custom build and configuration of netatalk loads some custom user authentication managers (‘uams’) that aren’t present in the latest packaged version of netatalk.  The /etc/netatalk/afpd.conf file probably ends with a line like this:

- -transall -uamlist uams_randnum.so,uams_dhx.so -nosavepassword -advertise_ssh

This both produces failures when trying to load the nonexistent modules, it also means the default modules fail to load, including a new, prebuilt, module ‘uams_dhx2.so’ which supports encrypted authentication on Mac OS X 10.4 and later.  The simplest solution is to edit /etc/netatalk/afpd.conf to either remove or comment out that line and just use the defaults.  Once you’ve updated the config, restart netatalk with the following command ‘sudo /etc/init.d/netatalk restart’.

The next problem is that the newer versions of netatalk use a newer version of a simple database library to store Apple-specific file information.  They provide a script for updating the db files, but you probably don’t know to look for it to run it manually.  For details, check the README.debian for the netatalk package, which is most likely found in ‘/usr/share/doc/netatalk/README.debian’.

Upgrading Problems
==================
This version of Netatalk use to Berkeley DB 4.7.

Earlier releases used Berkeley DB 4.2.  As Netatalk does not
automatically update its database, you may experience problems like
those described in bug #200373: no files showing up in your folders.

If you have such problems, you may try to upgrade the database using the
script /usr/share/doc/netatalk/examples/netatalk_update.sh
[…]

Before you run the script, run ls -la on the target directory and pay attention to the user and group ownership on the .AppleDB directory because after running the script, it tells you to check the permissions/owernership on the files it updated, and it is really good to know what the correct permissions were.

Creating Ubuntu VM Instances on a Ganeti Cluster with VMbuilder

Ganeti is open source software from Google to manage a cluster of linux hosts running virtual machines using the Xen or KVM hypervisors.  I was attracted to it because it handled everything from creating new instances to managing network disk mirroring (via DRBD) to help with instance availability.  It even supports migrating a running instance from one host to another with one short command line.  Now that I have it working, its possible to have a new Ubuntu vm running in about 5 minutes, probably less if I don’t need disk mirroring.

That’s the good part, the bad part is that it is developed to run Debian instances on Debian hosts with the Xen hypervisor.  Ok, that’s not the bad part, the bad part is that even though it works with other linux guests and hosts and the with KVM hypervisor, there are a number of hitches and gaps, even when using the Debian-derviced Ubuntu Linux distribution.  I still need to update an earlier post I made on trying to get it to work on Ubuntu to reflect what I finally did to get things working, but I wanted to share a big piece of the work I did.

Continue reading

Tile Setters, College Professors, and the Future of Higher Education

There are big changes afoot in the world of higher education.  This Washington Post story tries to highlight them by drawing parallels between higher education and the newspaper industry, but I think the analogy falls down quickly.

As many online commentators have pointed out, a good college experience has always involved much more interaction with both the experts (professors) and peers than reading a newspaper.  What most of them miss is that the very fact that they are discussing the article online is a reminder that there may already be reasonable substitutes for those interactions.

Continue reading

Little Computers

I like low powered computers.  It’s nice to use dedicated hardware for certain functions like file servers, routers, media players, etc.  Dedicated hardware means you don’t have to disrupt other functions to do an upgrade.  It also means that the dedicated hardware can be sized appropriately for the task, which helps avoid wasting energy for systems that are running around the clock.

For these reasons, I’m always on the lookout for hardware options.

VIA’s mini-ITX products have long provided a combination of small size and relatively low power consumption.  I’ve had a second hand motherboard/CPU combo powering my home file server for the last 5 years or so.  And their Pico-ITX boards shrink things down even further.

In the past year or so, Intel has gotten into the act with their low-powered Atom CPUs.  For under $100 you can get a barebones system with a compact case, a low-wattage power supply, a motherboard and an Atom CPU from NewEgg.  Unfortunately, these cheaper Atom systems pair their efficient CPUs with relatively inefficient supporting chipsets that can consume 4x the power of the CPU.  Options are starting to emerge.  Boards with the NVidia ION chipset draw less power and the included GPU can help with playing back 1080p video, but these carry a big price premium. In addition, some time this year, Intel is supposed to be shipping revisions more integrated options that draw less power.

300px-Hands

Right now though, there are some interesting options based on embedded Atom chips.  Fit2-PC sells tiny barebones systems (4″ x 4.5″ x 1.05″) that pair the 1.1GHz Atom z530 with a chipset that includes hardware assisted HD video decoding and uses a max of 8W.  The basic version, with 1GB of memory, room for a laptop hard drive and gigabit ethernet is $245.  Not exactly cheap, but these things are TINY. For another $10 you can add WiFi.  All of them have HDMI for video, and 6 USB ports.

Continue reading