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

Creating Apple Provisioning Profiles


  • $99 Apple Developer account
  • If you are on a team, then you need to be either an Admin or a Team Agent.
  • Test Device with it's UUID
  • App ID
  • Developer Certificate (and Provisioning Profile)
  • Distribution Certificate (and Provisioning Profile)

Adding a Device to the Provisioning Portal

In order to create a Provisioning Profile you need to add a device to the account. To do this, the UUID must be obtained. This UUID is a 40 character hex number which can be found one of two ways.

Programmically Creating Roles

I recently wrote a module that required certain roles to be created. My goal was to be able to drop the module in and go, so develop module, install module on live site, and boom goes the dynamite.

The first thing I did was create the function to create the roles: