Drupal Custom Forms with AHAH

I was assigned a project in which users are able to register for a sleepover. One of the requirements of the form is that a user must be able to enter multiple chaperones and children. Instead of providing 20 or so fields right off the bat for both chaperones and children, the user would be able to dynamically add one at a type without having the page reload each time. To accomplish this with Drupal, the use of Asynchronous HTML and HTTP (AHAH) is required. Unlike AJAX, AHAH returns HTML elements to be injected directly into the DOM opposed to receiving XML and parsing the response.

Recovering a Large Corrupt BZip2

Out of the blue last month, my AMCC (LSI) 3Ware 9650SE failed. Before I continue, I want to assure you that I did have a back up, albeit a few months old, but a backup nonetheless. Luckily, I was able to purchase the same model RAID card to replace the faulty one. After installing and rebuilding the RAID I found that some files were corrupted. So I pulled the backup, and compared the backup files with the current version:

Disabling Local Time Machine Backup

Time machine is a nice built in feature, but with the release of Lion, Apple enabled a feature called Local Backup This is a nice addition as it allows you to revert or undelete files without having your external hard drive connected. The downside to this is that it will make your system run slow if you've added or modified a lot of file between backups. Disabling local backups isn't as easy as you would think, and it should be as simple as unchecking a box in Time Machine's preferences.

Disabling Mac OS X's Spotlight Indexing

There are two reasons why you would want to disable Spotlight indexing. The first being you have another application such as Quicksilver or Launcher (available through the app store) that does the same thing, and more. The other is that you want to temporarly disable indexing because the system is not as responsive as it normal is.

To disable Spotlight indexing:

$ sudo mdutil -a -i off

To re-enable:

Modifying MAMP's my.cnf

MAMP is a great tool that makes it easy to setup a local development environment on a Mac. Most of the time you can set it up and start developing. As the development site you are working on grows, it may be necessary to make changes to the my.cnf file. Out of the box, there is no my.cnf file, which doesn't prevent mysql from working as they are using the minimal default options. MAMP, as well as the vanilla distribution of MySQL provides some sample configuration files. Using one of the example files may address your needs, but all will give you a starting point:

Installing Apache Solr on Windows Server 2008

This entry is in addition to Drupal + Solr Search on Linux.  If you are unsure of where to get Solr, refer to that entry. There are two ways of getting Solr Search running on a Windows server. The first is using Tomcat or Jetty and the other is starting Solr by running the java -jar start.jar. The latter works, but the issue is that we need to run it as a service. No matter how you slice it, you will need to install Java on the server.

Drupal + Solr Search on Linux

By default, Drupal comes with very basic search functionality. There are contributed modules that extend this functionality, but they don't address a major issue -- performance. On smaller sites or sites that don't need to index a non-Drupal database, the core search and additional contributed modules will get the job done. Other limitations of Drupal's core search include:

Distance Learning Map using Google Maps

When one of the distance learning-educators from the Milwaukee Public Museum approached me with the request of creating a map containing all the cities the museum had done a program for, I was excited that I finally had a reason to use Google Maps outside of Drupal. I quickly found that there was a limit on the number of Geocoder requests. Geocoding is converting an address like 123 Fake st. Milwaukee, WI into map coordinates. Google only allows 10 geocoder lookups per second.

PHP + MSSQL + Windows Server

This post assumes that you are running an up to date Windows Server 2003, Windows Server 2008, or Windows Server 2008 r2 operating system and a configured MSSQL Server.

As of PHP 5.3, the MS SQL database extension is no longer supplied with PHP on Windows. The alternative solution is now provided by Microsoft.

First, download and install Microsoft's solution, which can be found here: http://www.microsoft.com/en-us/download/details.aspx?id=20098