These Things Matter to Me
These Drupal links matter to you 20080909

- Oh yeah, Lullabot is the primary organizer behind a big Drupal conference, Do it with Drupal. 3 days in New Orleans in December. No BarCamp or Drupalcon, it looks to be a highly curated event, with major speakers from within and outside the Drupal community, 1000-2000 attendees (?). I'm super excited that Drupal is getting a major event like this. The Drupalcons and Drupalcamps are great, but I think this kind of context for Drupal can legitmize in some corporate environments.
- I swear I don't work for Lullabot, but another announcement related to them: There are some Lullabot Drupal workshops next week in Portland.
- BTW, Drupalcon Szeged was very well documented, often with full videos and slides from the talks. Check out the full session page with links to files and descriptions for the Drupalcon Szeged talks. Bravo to the group who ran it. I've heard only good things from those who attended, that it was a great atmosphere. Also, as somebody viewing from afar, the speed with which they've uploaded videos after the event is quite fast!
- This is interesting. Web-learning mainstay Lynda.com has Drupal training videos. As with most Lynda.com content, there are some free samples on the course page. It's great that they have some Drupal training, but it's confusing that they cover MAMP and WAMP installation, but neglect what is by far the most prominent Drupal hosting environment (or any web hosting environment): LAMP (Linux). Maybe the context is proof of concept?
Also, Lynda.com has WordPress coursework up, so Drupal is not the first open source tool to make the cut, but it's still significant that a site mostly known for teaching HTML and Final Cut Pro has Drupal videos.
- LA People, DrupalCamp LA is next week, September 13th, 14th
(Very cool Drupal knitting chart by ejhogbin) Labels: Do it with Drupal, drupal, Drupalcon, Lullabot, Lynda.com, pdx, portland, training
How to install the Python prerequisites for the Memetracker Drupal module
Usually the installation of Drupal modules is pretty straightforward:
- Download module to modules/
- Uncompress
- Enable
- Configure
- Profit
But the Memetracker module is a bit different, requiring a bunch of Python stuff, and ideally, "root" on your server. It's not that hard to set up, but if you're not used to installing stuff outside of the Druapl-verse, these notes might help you.
(These instructions are for Ubuntu Hardy Heron. The steps are likely very similar on other Debian-based distributions, including earlier versions of Ubuntu.
I've also successfully installed Memetracker on Centos 5.x/Redhat Enterprise Linux 5.x. I have a document for that coming soon, though the packages and steps are very similar, and you could extrapolate these notes and apply to other Linux versions.)
Most of you should skip to step 2, as you probably already have Drupal running..
1. Make sure you have all "normal" LAMP and Linux utilities installed for your typical Drupal install.
1a. Install the LAMP stuff, mail server stuff that Drupal requires.
# apt-get install apache2 php5 libapache2-mod-php5 php5-mysql mysql-server php5-gd postfix
(Note: Though Drupal core can run on PHP4, the Memetracker module *requires* PHP5, so that's what we're using here. You don't have to go out of your way to get this on Hardy Heron, but there is a small possibility some of you went out of your way to get PHP4, so I'm steering you towards PHP5 here.)
1b. Though not required to run Drupal, these additional packages make life much easier, and it's just a matter of time before you miss them:
# apt-get install openssh-server wget build-essential groff-base man-db unzip
2. Unlike most Drupal setups, you also need to have some Python resources handy to run Memetracker.
2a. The first bunch of Python tools already have nice Ubuntu packages already made up for you.
# apt-get install python-numpy python-numeric python-dev python
2b. Pyclust doesn't have an Ubuntu package made for it. We need to compile it from source (There will be a python-cluster package in the next Ubuntu version, Intrepid Ibex.)
Get the source:
# wget http://bonsai.ims.u-tokyo.ac.jp/~mdehoon/software/cluster/cluster-1.41.tar.gz
Uncompress the source:
# tar -xvzf cluster-1.41.tar.gz
Now install it:
# cd cluster-1.41
# python setup.py install
You now have all your Python stuff installed.
Let's verify it works:
# python
>> from Pycluster import *
(You will get your Python prompt back if you have your Python stuff installed correctly.)
That's it. You now have your environment ready for Memetracker. There's lots of other stuff you can do to optimize your system for Memetracker, and I have some additional Memetracker documentation coming up. However I noticed an immediate need for this Python stuff to be written down in a step-by-step manner, as many Drupal folks don't usually have to do so much Python/Linux stuff.
Labels: drupal, linux, memetracker, python, sysadmin, ubuntu
When Chrome crashes
You're almost pleased.

When a page bombs out, it only kills that one tab/window.
Notice only one unhappy tab. The rest go on living.
Labels: chrome, crash, protection, software, tabs
Monitoring Chrome's Ascent
In the 24 hours since Google released
Chrome, its browser share has reached
2.6%, at least amongst the 45,000 sites tracked by browser stats tool
GetClicky.
Do with that information what you like.
Labels: browser, chrome, Google Reader, market share, oss, webkit
Second big day for Opentape. Community + Policy.
- If you know anything about licensing, and would like to help a great free software project out, considering talking with Opentape. It looks like they need guidance choosing a license, and would prefer to package up some stuff made of disparate permissive licenses (MIT, GPL, etc) along with their own code.
- Opentape now has forums! This is great. People are submitting bugs, requesting features... all that good stuff.
Labels: music, muxtape, opentape, oss
New open source music software I'm excited about: Opentape, a muxtape-inspired tool.
Opentape is an extremely easy-to-install, open source implementation of
Muxtape. You unzip it, upload songs, and you're done.
No database to set up, no need to edit php files in vi. It looks like Muxtape, except with an unlimited number of songs.
(For those that don't know about about Muxtape, Muxtape is a web-based tool for sharing and listening to music. Like much social software, it benefits from a network effect, getting better and more useful the more people use it, and being hard to explain to people who don't. (Explaining social software to people who don't use it can be frustrating. "It plays music? With your friends?" That's it? Le sigh.)
Muxtape is also basically gone. It became unavailable last week. In their redirect they confirmed some issues with the RIAA. But since the day they went dark, they've made no more public statements about the situation, which is a bit confusing and unfortunate. I don't feel wronged, after all, they were giving us a great free service. But I wish they could communicate a bit more, especially when their software has so many non-infringing uses and passionate users.)
But let's get back to Opentape.

An administrative view of rearranging songs:

How do you set it up?
- Get the Opentape source code to your server, ideally in a place that's in your web's root/user's public area, often this will be "public_html."
- Unzip it.
- Browse to the Opentape directory on your server, probably something like, "http://yourdomain.com/opentape"
- You'll find a fully functioning website awaiting a password of your choosing.
- You're done! No database to set up!
Once additional cool thing about Opentape running on your server, rather than on a central service provider's, is that you can actually upload your songs via ftp/sftp, in addition to the normal web-based upload method.
There's also mention of a future ability to federate with other Opentape users across other servers' installations of Opentape.
Labels: music, muxtape, open source, open tape, opentape, web
Let's bring social bookmarking into the enterprise, with Magnolia (and *without* IBM)
Last week Magnolia announced plans to open source their social bookmarking software. I haven't been a big Magnolia user (I use the similiarly-purposed
delicious), but not for lack of interest or quality. In fact, two of their biggest cheerleaders, Tara Hunt and Chris Messina have always tempted me to port my delicious data in there, by their association alone, but I never got around to it.
But with the recent announcement that Magnolia will go open source, I'm interested not just as a consumer, but as an administrator/ service developer.
I don't really feel like I've had the ability to bring social bookmarking inside the enterprise as a service. For many organizations to feel comfortable going into "the cloud," the service needs to have hooks into SAML -> Active Directory/LDAP, a la Salesforce.com/Google Apps.
OR
I need to have the ability to run things locally on my own server. Until now, neither delicious nor Magnolia had this ability, and now Magnolia will have the ability to do the latter. Let's hope they have a plugin architecture, so somebody can LDAP it.
I'm currently using Drupal and Deki-Wiki in my web/collaboration stack. I could easily see adding Magnolia into that mix. Ideally they could all share user and session information.
The first code for Magnolia (codenamed "M2") is scheduled to drop in September 2008. I'll be watching.
Labels: enterprise, Magnolia, open source, social bookmarking
Custom boot messages for your Redhat Linux or CentOS-based virtual appliance
Upon boot, many
virtual appliances automagically start services, log users in, or display helpful messages beyond what a normal OS would.
After all, a primary use-case of virtual appliances is to act more like an application than a full OS, and ideally would like the user to feel like they're only interacting with an application.
One virtual appliance that I use is
MindTouch's open source
Dekiwiki appliance (btw, I fully recommend Dekiwiki, my favorite wiki software at the moment.).
The DekiWiki appliance, upon boot, without any user interaction or required login, will display something like this:

This is extremely handy. No login to Linux necessary. Just go to any web browser on your network, and go.
How to recreate the magic in CentOS/Redhat/(probably) Fedora
I'm currently making two virtual appliances based on
CentOS Linux (A clone of
RedHat Enterprise Linux ). I pretty much copied DekiWiki's rc.local, to identify and print out the current IP, whatever it may be, and direct the user to browse there, without having to login. This was partially successful. But after printing the URL and instruction to the user, the console tty was cleared prior to login prompt appeared, making it so all the helpful info was removed.
Where'd my helpful message go? It was cleared by mgetty.I had no idea why this was working fine in the Debian-based DekiWiki appliance, and less so in my CentOS-based (Piwik, coming soon!) appliance. After a bit of side-by-side comparison, I noticed that Debian's
/etc/inittab calls up
/sbin/getty, but CentOS (and Redhat)'s
/etc/inittab calls up
/sbin/mingetty.
mingetty apparently clears the screen, and
getty does not.
By adding the
--noclear option to mingetty, CentOS will stop clearing the screen, and allow your custom boot message to live on.
Notes.Here's what to edit in
/etc/inittab:
BEFORE# Run gettys in standard runlevels1:2345:respawn:/sbin/mingetty tty12:2345:respawn:/sbin/mingetty tty23:2345:respawn:/sbin/mingetty tty34:2345:respawn:/sbin/mingetty tty45:2345:respawn:/sbin/mingetty tty56:2345:respawn:/sbin/mingetty tty6AFTER# Run gettys in standard runlevels1:2345:respawn:/sbin/mingetty --noclear tty12:2345:respawn:/sbin/mingetty --noclear tty23:2345:respawn:/sbin/mingetty --noclear tty34:2345:respawn:/sbin/mingetty --noclear tty45:2345:respawn:/sbin/mingetty --noclear tty56:2345:respawn:/sbin/mingetty --noclear tty6Original rc.local that finds and prints IP in helpful message (thanks Mindtouch!):
IP=`ifconfig eth0 | grep "inet addr"|awk -F ' ' '{print $2}' | awk -F ':' '{print $2}'`echoecho -e "\033[1mTo access Deki Wiki, please launch a web browser and go to:"echoecho " http://$IP"echo -e "\033[0m"exit 0