NetNewsWire is now Free!

Posted: January 10th, 2008 | Author: | Filed under: OSX, Software | Tags: , | Comments Off on NetNewsWire is now Free!

NetNewsWire, probably the best RSS/Atom newsreader ever is now a free product! It used to cost $30.

  • A tabbed browser lets you read web pages with the convenience of staying in the same window.
  • Search your news items with a standard Apple search widget — as in Mail and other applications.
  • Downloads podcasts and enclosures, and sends podcasts to iTunes with with your choice of genre and playlist.
  • The flagged items feature lets you mark items that you want to keep — they stay forever or until you mark them as unflagged.
  • Mac OS X 10.4 (Tiger) compatible, and includes Automator actions to control functions in NetNewsWire.
  • Other features include syncing, smart lists, search subscriptions, built-in styles, and AppleScript support.
  • Includes a built-in categorized list of feeds that can be easily subscribed to.
  • If NetNewsWire Lite is already running, quit it before running NetNewsWire.

10350 Sm

Vienna, which is open source and thus free/donation-ware, is also an excellent RSS Reader.

OmniGraffle Pro 5 Beta is out!

Posted: November 30th, 2007 | Author: | Filed under: OSX, Reviews, Software | Tags: | Comments Off on OmniGraffle Pro 5 Beta is out!

OmniGraffle Pro is without question the best diagramming tool available for any platform. The new version which was just released to Public Beta is simply an incredible update to this amazing tool.

Some of the new features are welcome and well executed. Here is a quick list of some new or updated features:

The updated interface, designed to reflect the Leopard design direction, incorporates user interface elements well onto the window, giving the entire application an updated, modern & refreshed look.
Some common tools have been added directly onto the ruler eliminating the need to use the corresponding inspector to get to them (they are still in the inspector though). There is also a new Tool Palette similar to what many other programs have which should make it easier for Visio, Illustrator and other users to transition to OGP.

The new Stencils manager fixed numerous usability issues with the old one.
Expanded Variables support (but none yet that will display the foreground and background color values, useful when making a visual style guide).

Leopard QuickLook Support.

Shared Layers which replace the old Master Canvas. This one will take some getting used if you use Master Canvases, but it’s really an awesome solution to something many have wanted for some time – the ability to add multiple master canvases to a single canvas. It also makes it very easy to adjust the items on the Shared Layer so that they show up everywhere.

Subgraphs allow you to group a collection of objects into a single entity very easily.

There are some big changes with OGP5 and this includes having to update your documents (QuickLook only works with OGP5 format files).

A slight issue is with documents that are larger then a printed page and where sized using the “Fit To Page”. These will open with the page size reset to the standard page settings. The new scaling features should eliminate the prior issues with having documents that had more vertical or horizontal pixels then a standard printed page would hold.

You will also need to update any custom templates you are using.

The best tool just got better: “OmniGraffle will you marry me?”

Download OmniGraffle Pro 5


Posted: November 11th, 2007 | Author: | Filed under: OSX | Tags: | Comments Off on QuickLook

One of the best features of Leopard (Mac OS X 10.5) is QuickLook. It’s a feature that doesn’t receive the recognition that it deserves but once you start using it you wonder how you ever lived without it.

QuickLook is a extendible technology that Apple incorporated into the operating system that allows you to view the contents of a document by simply selecting a file and hitting the spacebar. This invokes the QuickLook window which will float over the other windows and give you a view into your document. The document can be any type that has a QuickLook plugin and Apple includes many in the default installation. These include images, office documents (Word, Excel, Powerpoint), iWork, email, etc.

Developers can easily create QuickLook plugins for their applications. A number of applications that have been updated for 10.5 support QuickLook and there are enhanced plugins that are becoming available, such as one that replaces the default xml viewer with one that colorizes the source.

QuickLook goes far beyond just giving you a “Thumbnail” type view. You can view all the pages in a document. Being able to see the contents of an Excel spreadsheet without having to launch office or open it in Tables or Numbers is a huge timesaver, especially when you are reviewing documents or trying to find the correct version of one.

Once you start to use it you quickly begin to depend on it’s functionality. I’ve been bugging any developers that haven’t provided support yet to implement this functionality and you should do the same.

Building PHP on Leopard 10.5

Posted: October 30th, 2007 | Author: | Filed under: Development, OSX | Tags: , | Comments Off on Building PHP on Leopard 10.5

When I first installed OSX 10.5 I noticed that they had current versions of Apache 2.2 and PHP 5.2.4 installed. This was a first, as Apple has always lagged with these tools, so I figured I’d give them a try. Unfortunately, the out-of-the box version of PHP just didn’t cut it for me.

I thought I would try to duplicate the “Apple” way and use the configuration that Apple used for their version of php5, but it wouldn’t produce a loadable module for Apache 2.2.

So as always I set off to build my own version. Because of the way that Apache is built on Leopard I will also build Apache 2.2 as part of this process.

First let me explain what my directory plan (or layout) is. All my custom libraries and configurations go into the /usr/local directory. This is a common practice that will be familiar to many who work with unix. When we are done there will be a number of directories in /usr/local:


The advantage of doing this is that it keeps everything separate from the default locations that Apple uses. If Apple makes any changes to their versions it won’t mess up the installation. It also makes it easier to upgrade and manage the installation.

In addition to the additional libraries we will also take advantage of some that are provided by Apple. In some cases, the extra libraries we are building are already part of OSX but might be a little older and/or conflict with the installation we are creating.

The first part of this will involve building some common libraries, followed by Apache 2.2 and then PHP. Optionally, we will also build Postgres and install MySQL.

The additional libraries include those for processing images, including png and jpeg, freetype, readline and others related to text handling and parsing.

Most of the commands presented here can be copied & pasted into terminal. You will need to have sudo capabilities as well.

Let’s start by creating the /usr/local/src directory where you will keep the source code. You should also make yourself the owner of this direcotry so that you don’t need to be root to be able to build programs (only to install them).

sudo mkdir -p /usr/local/src
sudo chown yourusername:admin /usr/local/src
cd /usr/local/src

Now let’s download libraries we are going to build. The curl tool is very handy for this. The -O option tells curl to save the file with the same name as the source. Note that some of the links below are to direct download locations from sourceforge. If for some reason the link doesn’t work go to and download the file from there.

curl -O
curl -O
curl -O

curl -O
curl -O

Once we have our files, let’s build them. The steps are almost identical for everything. We need to unpack the file, configure the source code for use with OSX (aka Darwin), compile it, test it (if supported) and install it. By default all these programs are designed to use /usr/local as the installation root, but I like to specify the prefix anyways.

The -j2 option with make tells it to use both processors to compile which will speed up the process.

tar zxf libpng-1.2.22.tar.gz
cd libpng-1.2.22
./configure –prefix=/usr/local
make -j2
make test
sudo make install

cd /usr/local/src

tar zxf jpegsrc.v6b.tar.gz
cd jpeg-6b
./configure –prefix=/usr/localmake -j2
make test
sudo make install

cd /usr/local/src

tar zxf tiff-3.9.0beta.tar.gz
cd tiff-3.9.0beta
./configure –prefix=/usr/local
make -j2
sudo make install

cd /usr/local/src

tar zxf re2c-0.13.0.tar.gz
cd re2c-0.13.0
./configure –prefix=/usr/local
make -j2
make test
sudo make install

cd /usr/local/src
tar zxf freetype-2.3.5.tar.gz
cd freetype-2.3.5
./configure –prefix=/usr/local
make -j2
sudo make install

libcrypt & mcrypt

curl -O

Databases, MySQL and Postgres

MySQL is always a symlink to the original directory name:

/usr/local/mysql -> mysql-5.0.45-osx10.4-i686

Any my MySQL databases always live in a separate directory outside of the /usr/local/mysql directory. In my case I call this:


The /home Directory Issue

Posted: October 28th, 2007 | Author: | Filed under: OSX | Tags: | Comments Off on The /home Directory Issue

Like many unix people, I use the /home directory for a number of things, including websites. This is where the bulk of the work that I have on my machines is stored.

When I upgraded my machine I noticed that the /home directory was no longer there. Using Terminal I could see there was a hidden directory called home, but it was empty. It was as if all the files had been deleted, yet the 15 GB of data in there was still on the drive somewhere.

Investigating further, it appeared to be a mount point and alias to itself, owned by root. In unix, a mount point is where you can put another drive into your file tree. So if it’s a mount point, then the original /home was probably underneath it but doing a umount /home from the terminal didn’t unmount the mount point.

Now, OSX 10.5 is the first version of OSX that is actually real, certified Unix. Previously OSX was “Unix Like” in a manner similar to Linux. In real unix, the /home directory is typically an auto mounted directory that comes from a server somewhere. The idea behind this is that you can log into any machine on the network and your files appear under /home. Well, this makes sense in a Solaris environment, but for the average OSX user it doesn’t.

The solution is easy, but it does require a trip to the terminal to fix. In the /etc (pronounced Et C) directory, there is a file called auto_master which contains the specifications for the automatically mounted home directory.

# Automounter master map
+auto_master # Use directory service
/net -hosts -nobrowse,nosuid
/home auto_home -nobrowse
/Network/Servers -fstab
/- -static

Adding a comment with a hash mark (the # pound sign) to the /home entry will disable this mount point and allow the /home directory to work normally.

To fix this start terminal and use the nano editor to modify the file. You will be prompted to type your password (on the command line).

cd /etc
sudo nano auto_master

The nano editor window will open. Use the cursor keys to navigate to the entry that starts with /home and add the # in front of the line.

Press control-x, hit return and you will be back in the terminal. You just modified the file and can verify that by typing:

cat auto_master

Which will display the contents of the file. Restart your Mac and you will have your /home directory back.

Here is the answer I provided on the Apple boards regarding this: Upgrade deletes /home directory? and my own early warning before I figured it out: Serious DATA LOSS problem with /home folder.

Frankly I think that Apple made a mistake with this and should have not enabled this behavior by default. I know that it’s going to affect a lot of people and can only hope that they will issue an update asap to fix this.

Upgrading to Leopard OSX 10.5

Posted: October 28th, 2007 | Author: | Filed under: OSX | Tags: | Comments Off on Upgrading to Leopard OSX 10.5

Leopard is the first major OSX update in about 18 months and overall it’s excellent. My Mac is faster and just feels more solid. It’s visually more attractive, consistent and functional. A number of programs have undergone significant improvements, including the new Mail program (which is much faster). I’m very happy with the machines I’ve upgraded and so are my users.

I’ve seen reports of people having problems which I can only attribute to certain third party hacks, such as APE or Menu Extra’s. I did encounter one problem that had me stumped and made it seem like I had lost data, but it fact it was an artifact of the new, real Unix layer of OSX 10.5 (it was “Unix Like” before). This issue involved directories called /home but I’ll cover that issue in a separate post.

The upgrade to Leopard has been an easy experience. In my case it was divided into two types of upgrades. Mac’s used for work and regular Macs.

The work Mac’s are machines that have a number of custom modifications geared at web development. This means that the unix layer has been modified and that certain default services, such as web servers have been replaced and extended.

The regular Mac’s are those that have no such alterations and are pretty standard.

The Upgrade Path

I’ll start with the regular Mac’s. I wasn’t really interested in doing clean installs on these machines as I just wanted to upgrade them quickly. I strongly suggest that you backup your drive, or at least the data that is important to you. Carbon Copy Cloner is excellent for this and can create a mirror of your drive. If you don’t have an extra hard drive it’s worth picking one up when you get Leopard. A LaCie 500 GB drive is a little over $200 at the Apple store and you can also use it with Time Machine.

There are many significant changes to the way Leopard works from a developer point of view, especially those that aim to extend the functionality of the Mac. Knowing this, the first thing to do is disable any third party extensions that can cause problems.

This includes any third party Preference Panes, Services, Input Managers, etc. The Preference Pane Diablotin can make this an easy process. Diablotin by itself doesn’t do very much and is perfectly safe to leave in place before upgrading.

I usually keep a folder set of folders in the /Library and ~/Library (that’s the user’s Library) that I have added (Disabled) to the name. For example:

Input Managers (Disabled)
Preference Panes (Disabled)

and I manually move items into them. They stay on the drive and can easily be moved afterwords. The goal is to get these out of the way so that they will not conflict in any way during the upgrade.

Next insert the Leopard DVD and start the installation. The DVD will go through a verification of the disk. I’d suggest letting it do this for the first machine just to make sure there isn’t some defect on the disk. If you are upgrading other machines from the same disk (because you got a family pack) then you can skip the step. It takes about 30 minutes to verify.

Once the installer starts you are presented with two screens that have an option type button on the bottom. The first one will let you select a Clean Install, etc. The next screen will let you “Customze” your installation. Press that Customize button, as it will free up a gigabytes of disk space used by things that are probably redundant to you. This includes additional languages that you will never use and printer drivers. If you ever wanted to install one of those packages later, you can easily do that.

Then kick back and let the installer to it’s thing. Once it completes, you will see the new Space background image and the “Welcome” animation, followed by the register screen. Once that’s done, you are all set and can enjoy your new Mac. Really, it’s that easy.

Keep in mind that some older programs you might have on your drive may be incompatible. If you haven’t upgraded or kept up with the new versions of software, I suggest that you download the excellent (and free) AppFresh which will check the versions of your programs and update them.

The Clean Install

Now, for the more complicated upgrade. The work machines.

First, I start by making a complete clone of the drive using Carbon Copy Cloner as my intention is to reformat the drive during the installation. A complete copy will take time. The 160GB drive in my MacBook took about 4 hours with a Firewire 800 drive but also gives me a drive that I can boot from in the event there is a problem.

Next I start the installer and in the Options tab select to do a clean install. It formats the drive and installs Leopard wthout any problems. Once it completes, it gives me the option to Migrate from another Mac or Drive. Select the drive that you cloned your drive from and viola, you now have all your accounts, settings, applications and other data as if you had done an upgrade. You don’t have any of the low level modifications and none of the kernel extensions that got installed into the /System folder.


One thing that I find curious about Migration Assistant, is that it doesn’t give you the option to copy the /Users/Shared directory. You will want to copy this back manually, particularly if you use any Adobe software and don’t want to reinstall it.

Enjoy your new Mac!

Color Picking in OSX

Posted: October 23rd, 2007 | Author: | Filed under: Development, OSX | Tags: | Comments Off on Color Picking in OSX

Apple’s Color Picker tool is a very flexible and powerful tool, but most people don’t seem to realize this. The tool is available in virtually every program, even in the Adobe Creative Suite tools (you can change the color picker in the preferences).

The Color Picker gives you many options for managing colors. These include the ability to create custom palettes which can be shared and Image Palettes which use an image to provide color selection. The image can be anything, including color wheels, photos, illustrations, etc.


Because the Color Picker is extensible there are a number of free and commercial extensions available which extend the functionality and utility of the Color Picker. As you can see in the Color Picker tool bar, I have several extra color tools Installed:


Here are some of my favorites.

Hex Pickers – Provides a handy “Copy to Clipboard” of the hex color value. You can also enter your own value.


Rubicode RCWebColorPicker (Use this link to download the DL link on the Website is broken) gives you the ability to set HEX color codes using sliders and you can also limit these to “Web Safe” colors.


Chromatic Bytes Shades – this is an excellent tool to work with finding shades of colors:


Old Jewel Painters Picker – This is one of my favorite color pickers. You have multiple color wheel schemes which make it very easy to find complementary colors.


Spot Picker gives you access to all the colors that you have in Adobe Creative Suite, which include Pantone, TruMatch, TOYO, etc.


ColorListEditor makes it easy to create custom color palettes. It’s an external program program that doesn’t run in the color picker itself, but you can easily set all the colors for a project this way and have easy access to them. All the Color Palettes are stored in Library/Colors/ (either in the your Library folder or the main Library folder).


Tables & Numbers

Posted: August 21st, 2007 | Author: | Filed under: Reviews, Software | Tags: | Comments Off on Tables & Numbers

Tables is constantly improving and the developer has been very responsive to issues. In just a few months it has gone from usable to excellent. Tables is also very stable for me. The last crash I had was due to an Input Manager and not Tables.

Excel compatibility has been pretty good, with no problems sharing files with Windows Excel users.

Like many, I bought iWork 08 as soon as it came out. Numbers is a slick application (reminds me of an old Mac Spreadsheet called Trapeze) and overall I like it. But Tables is much faster when using lots of data and overall feels more responsive. I often use Tables with data extracted from databases as CSV files to “massage” and analyze the data and assorted other such needs. Tables is better then Numbers for actually crunching numbers and data. Try importing a 23401 row / 33 column CSV file into Numbers and hear your MacBook Pro fan kick into overdrive for a while…

Numbers is great for presentations, where you have a limited amount of information that is usually going into Pages or Keynote. In some cases I will crunch data in Tables, and then copy/paste results of that into Numbers for use in Keynote.

Oddly enough, Tables also has more control over the formatting of cells, particularly numbers.

In my toolbox, there is a place for both and I for one am super happy to never use Excel again. The cost of Tables and iWork together is still cheaper then getting MS Office and provides a much better experience for the user.