LAMP

MAMP

One of the brilliant people I talked to this week turned me on to MAMP. The MAMP software makes it incredibly easy to experiment with different settings and have several test environments on a computer at once.

A fabilous MySQL tool

NAVICATA couple of days back I had the opportunity to listen to a session on MySQL from Apple's 2005 World Wide Developers Conference (WWDC). The speaker mentioned Navicat and their MySQL tool. Two downloads later (one on OS X and one on Windows XP) and I'm convinced.

Navicat is simply the greatest interface for maintaining MySQL databases on any platform. There is a Linux version I haven't tried yet but I'd have high expectations based on the Windows and Mac products. The company also has a new PostgreSQL product but I've had less success with it. Back to the MySQL version. In just minutes I had the free trial version fix a database broken by my paid copy of MyDBConverter. Without explanation MyDBConverter had opted to sync only 455 of the 1450 rows in a table. Navicat had no problem making the conversion happen smoothly.

Upgrading to PHP 5

I've been working on some Drupal installations the last few days. First off I've started working on the Drupal-CVS version that should soon be Drupal 4.7.

One of the modules I've been working with is publish. The Publish module as it's out in CVS doesn't work well with Drupal-CVS because of changes to the methods for handling nodes. It also has a construct that doesn't work with PHP 5.

The error is "Cannot use object of type stdClass as array". The required change is to change unset ($class['property']); to unset ($class->property);

So the patch is on the Drupal Publish project page.

Forcing the correct domain name

Nothing new here but a quick note to document how I prefer to handle forcing browsers to see the a website using the preferred domain name. In the virtual server setup place the directives to have the virtual host respond to all the names (i.e. www.example.com, example.com, foobar.example.com). Then use the rewrite engine to change the url to be the preferred URL:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.example\.com        [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^/(.*)      http://www.example.com/$1 [L,R]

The road to content management

Educause has a paper published in 2003 about Gonzaga's move to a content management system. The article details the perils of starting with a centralized system and then realizing that a monolithic organization can't handle the publishing for the many small units, groups, departments etc. that make up a modern university. Sounds eerily like the state of affairs I'm familiar with.

By the way, this problem is not unique to universities. I've been with several companies that struggle through the same thing. Having built a system for content management using text files in 1996 it's odd to see organizations trying to figure out, nearly a decade later, what the solution is.

Many technologists begin to think the world is about their technology. They jealously guard the company product - "we use product X" the line goes. (Though in higher education the product portion is often left out.) In their view the world begins to revolve around their product. They stop seeing faculty and staff members as organizational peers who have needs that might be met by technology and begin to see users. Part and parcel of this shift is the view that product X can do everything any user might want. If it doesn't then the user is mistaken about what they want. The conversation shifts from being driven by the question "What do you want to do?" and is replaced by "You need to use product X."

Benchmarking Content Management Systems

Today was time for a bit more work on server moves. As a part of that process I spent some time working with Apache tuning for performance. I also did some very unscientific tests on a couple of content management systems as well as some static sites. The static sites, not surprisingly, outperformed the dynamic pages, but even within the dynamic realm there was quite a difference between the couple of systems I looked at. The tests were not complete enough or reasonable enough to publish yet. I'll do some more testing in the next few days and see if I can't put together some meaningful results.

The array of content management systems available makes testing rather complicated and can cause it to lean towards the meaningless side. For many low-volume web sites the differences won't add up to a whole lot. Compounding the difficulty is that few systems have identical features. I think I'll put together a sample site with a half dozen stories and use that.

Pages

Subscribe to LAMP