Riding the local… [UPDATED]

With the upgrade to Snow Leopard, I took the opportunity to make my MacBook Pro, a better development machine. This meant creating a Web server environment which matches my production shared hosting environment.

Far easier said then done.

I started with MAMP. I wanted to have a complete server environment that is well supported by the community and was easy to maintain. I felt that MAMP met these goals better than going with the native OS X web environment. Apple hasn’t been the best at offering the latest stable release of Apache, MySQL (in fact, not supported at all) and PHP. MAMP offered all three plus PHPMyAdmin (handy at times) and a smattering of additional goodness.

Using Sequel Pro (a fantastic, freeware MySQL GUI), I was able to create the databases required for my films and WordPress.  [A quick plug for Sequel Pro, they took the very nice code from CocoaMySQL and created a phenomenal tool. Well worth free, I gave them $50 for my copy, please donate if you can.]

Changing the link references from my hosted version to a MAMP version wasn’t hard. Unfortunately, I wasn’t thinking clearly. Having a blank PHP page tends to do that… All the errors were mine. (Remember to put a closing slash on a directory link and MAMP references require a port number.)

The hard part was duplicating WordPress. I finally kludged it by creating a fresh install of WP on MAMP then hand editing the WP database links to match my MAMP configuration.  It’s working now but I’m worried about my first upgrade. I also had to go through my site and switch all references to a .com site to the localhost (MAMP) site.

But at an absurdly high level to create a local WP site from a working hosted site:

  1. Install MAMP
  2. Fresh install WP onto MAMP site
  3. Copy the wp-content folder from the hosted site to the MAMP site
  4. Export the hosted WP MySQL database and import it into the MAMP MySQL database
  5. Hand edit the links in the “-options” table to match those required for the MAMP site (remember to edit the uploads option as well)
  6. Test. I turned off my wireless so I knew I was only local.

As soon as I finish this post, I’ll need to figure out how I’m going to duplicate this entry locally. I have two options, one, I could copy the text from my post page into the post page on the local site or two, export the hosted MySQL db and import it in to my local site. The latter would require me to hand edit the options page again. (or I could try keeping it the same). Mmmmmm.

UPDATE: Using two tabs on my browser, it took 30 seconds to duplicate the entry. Copy/Paste, Copy/Paste, click, click, click. That wasn’t so bad!

UPDATE July 8th, 2010: As I migrated to WordPress 3.0 locally (went from 2.84 to 3.0), I needed to reacquaint myself with using WordPress locally. Here are the directions in greater detail in updating WordPress locally (this is a personalization of the detailed upgrade installation on the WordPress Codex):

  1. Backup MySQL database using Sequel Pro; File – Export – MySQL Dump (select all tables and make sure Drop Table, Create Table and Add Table Content are all selected. Use this backup to create backup MySQL database for the backup old installation, I called it oldBackup. Use the Database Administration part of Sequel Pro to create a new database then Import the dump.
  2. Duplicate the oldblog directory using Finder – Duplicate then rename i.e; “oldblog28”
  3. Verify new site works by doing the following:
    • Export only the wrp_options table using Sequel Pro
    • Using Textmate, change all references of the blog directory to the new name i.e; oldblog to oldblog28 and (if necessary) make sure all www references are changed to local i.e; wellys.com:8888 to wellys.com:8888 (this is for MAMP running WordPress locally)
    • In the oldblog28 wp-config file, change the name of the database to oldBackup
    • Load the new site into Safari and confirm links are pointing to the new directory, browse the site a bit to ensure it is a fully working backup.
  4. Back to the site being updated, deactivate ALL plugins.
  5. Download and extract the new WordPress package.
  6. On the old site, save the following:
    • wp-config.php
    • wp-content folder but delete wp-content/cache and wp-content/plugins/widgets
    • wp-images (not found in oldblog)
  7. Open two windows in Finder and delete all files but the above 6 a-c. Move the new WordPress files over to the old directory. Using this method, you can methodically ensure you are updating/replacing all of the files. I had a little bit of work in the wp-content folder, making sure I didn’t delete any changes I had made to my blog.
  8. Log back into the blog and it should upgrade the database and site automatically. If unclear, go to: oldblog/wp-admin/upgrade.php
  9. Update .htaccess file if necessary (not necessary as of July 8, 2010)
  10. Install updated Plugins and Themes.
  11. Reactivate Plugins
  12. Add security key definitions to the wp-config.php file
  13. Review what has changed in WordPress.

NOTE: Based on information from http://www.chrisabernethy.com/why-wordpress-asks-connection-info/, I changed the ownership of the oldblog to _www using: sudo chown -R _www oldblog

Better Stuff

A couple of plugs for stuff I use:

Eizo ColorEdge CG243W – Great new monitor that is accurate, a nice size and a joy to use. As I stated earlier, it inspired me to get back into photography. I like it, I like it a lot.

colormunki – in order to properly use the Eizo or any high end color monitor, one must calibrate it. It seems the best way to do this is to use Eizo’s software and a calibrator such as the colormunki. I’m a bit miffed in the x-rite, the supplier of the munki, has yet to release software for Snow Leopard. Turns out that Eizo’s software, Color Navigator, works great with the munki. I like the device, it is easy to use and clearly well-designed. And when xrite releases the new software, I’ll also be able to use the device to calibrate my printer. nice. (AND!!, buy by 12/31 and get $50 rebate)

colormall.com – very, very helpful and competitive pricing. I wanted to find someone, online or bricks and mortar that could help me find the right monitor for my needs. I called Colormall and spoke with John at some length as to several types of monitors. John was very honest as to why they no longer carried Canon, why they carried Eizo and LaCie and what monitor would make sense. He went the extra distance to confirm the newly released CG243W was what I needed and wanted. Very professional, very helpful and highly recommended.

Video Redesign on WRP

Recently, I spent a fair amount of time re-organizing my films on WRP. I had a few goals:

1) Bring my site into the 21st Century, so quit using a js script to open a new window to display the movie.

So, how are all the cool kids doing it? YouTube and Vimeo. No thanks, color me old school and not into “insert your video site of choice that displays your video in horrendous quality along with bizillion ads.”

2) Have a common well-thought out format for all films AND forget about trying to create a reference movie that will check for access speed, QT version etc.

3) Add the ability for iPhones/Touch’s to be able to view the films.

First came DVcreators’ DVKitchen. Fantastic! It provided EVERYTHING I could possibly want… for about a day. It is a nice program and it provided a great starting point for what I wanted to do. I highly recommend looking at it. I’ll repeat… it is a GREAT starting point for a video site!

Now I had a nice way of showing my films; cross off #1.

DVKitchen showed me the value of spending a bit of time understanding your bit rate and film quality. One word, SampleLab. Thanks! (again). Using SampleLab as a starting point, I created multiple compression formats in Compressor. This allowed me to determine the ideal combination of film size and viewing quality. I was amazed at the difference between each film. (I’ll create a note regarding H.264 to help explain this one.) Cross off #2.

After much experimentation, with MakeRefMovie from Apple and Quicktime’s Export for the Web command, I decided that a reference movie wasn’t all that. Due to the my inherent difficulty with reference movies and the fact that iPhone-type devices love a vertical format, I decided to create a vertical-oriented iPhone-only website.

Cross off #3.