<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Geek Chic &#187; &#8216;Puters</title>
	<atom:link href="http://www.jeffreyclarke.net/blog/category/computers/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jeffreyclarke.net/blog</link>
	<description>Dorky.  And also True.</description>
	<lastBuildDate>Wed, 20 Apr 2011 20:20:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>A Web Development Environment on Snow Leopard</title>
		<link>http://www.jeffreyclarke.net/blog/2011/02/a-web-developmen-environment-on-snow-leopard/</link>
		<comments>http://www.jeffreyclarke.net/blog/2011/02/a-web-developmen-environment-on-snow-leopard/#comments</comments>
		<pubDate>Thu, 03 Feb 2011 22:17:34 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA['Puters]]></category>
		<category><![CDATA[General Nerdiness]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[MacOSX 10.6]]></category>
		<category><![CDATA[Macports]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Subversion]]></category>

		<guid isPermaLink="false">http://www.jeffreyclarke.net/blog/?p=1177</guid>
		<description><![CDATA[This is an update to an earlier post I submitted about how to set up a web dev environment on Leopard.  A few things have changed from Leopard to Snow Leopard (namely switching to 64 bit code) so it makes sense to refresh this guide. * * * * * If you&#8217;re like me and [...]]]></description>
			<content:encoded><![CDATA[<p>This is an update to an earlier post I submitted about <a href="http://www.jeffreyclarke.net/blog/2009/06/a-web-development-server-environment-on-leopard/">how to set up a web dev environment on Leopard.  A few things have changed from Leopard to Snow Leopard (namely switching to 64 bit code) so it makes sense to refresh this guide.<span id="more-1177"></span></a></p>
<p><a href="http://www.jeffreyclarke.net/blog/2009/06/a-web-development-server-environment-on-leopard/"> </a></p>
<p><a href="http://www.jeffreyclarke.net/blog/2009/06/a-web-development-server-environment-on-leopard/">* * * * *</a></p>
<p><a href="http://www.jeffreyclarke.net/blog/2009/06/a-web-development-server-environment-on-leopard/">If you&#8217;re like me and you&#8217;d tried to have your Leopard PHP-MYSQL build just work on Snow Leopard, I&#8217;m sure you met with the same rude awakening that I did.</a></p>
<p><a href="http://www.jeffreyclarke.net/blog/2009/06/a-web-development-server-environment-on-leopard/">It didn&#8217;t work.</a></p>
<p><a href="http://www.jeffreyclarke.net/blog/2009/06/a-web-development-server-environment-on-leopard/"> </a></p>
<p><a href="http://www.jeffreyclarke.net/blog/2009/06/a-web-development-server-environment-on-leopard/"></a></p>
<p><a href="http://www.jeffreyclarke.net/blog/2009/06/a-web-development-server-environment-on-leopard/"></a></p>
<p><a href="http://www.jeffreyclarke.net/blog/2009/06/a-web-development-server-environment-on-leopard/">If you followed my guide for installing </a><a href="http://www.jeffreyclarke.net/blog/2009/06/a-web-development-server-environment-on-leopard/">LAMP on Leopard</a>, you should start by cleaning out MacPorts and starting fresh.</p>
<p>To be certain, you should honestly clean out everything.  But before you do, be sure to list out all the ports you currently have installed.  Do that like this:</p>
<blockquote>
<pre><code>sudo port installed</code></pre>
</blockquote>
<p>And copy the list of installed ports to a text file. For reference.</p>
<p>Next let&#8217;s do some housecleaning (BE CAREFUL! DON&#8217;T UNINSTALL UNLESS YOU MEAN IT!):</p>
<blockquote>
<pre><code>sudo port clean --all vile
sudo port -f uninstall installed</code></pre>
</blockquote>
<p>Then you can go about re-installing your environment. The guide below is slightly modified to be able to work on Snow Leopard.  Enjoy!</p>
<p>* * * * *</p>
<p>I&#8217;ve found a relatively easy way to maintain a flexible, updatable  development under MacOS 10.6 which goes so far as to install my own  components, but not to have to compile them (which I&#8217;ve done several  times and can attest, is a pain).</p>
<p>This setup gives you a great web development environment under  Leopard (geared in my case towards Flash development compatible with the  WordPress platform), which does a better job of playing by the rules  than the default install of a lot of these elements.  And with MacPorts,  the whole thing is modular and very easily maintained.</p>
<p>And everything on the list is free and/or open-source.</p>
<p>* Note that you&#8217;ll need to have administrator privileges on your user account to do this.</p>
<p>** Also note that this is geared towards creating a relatively  unfettered development environment.  I don&#8217;t make any considerations  about server security or server optimization for large-scale web  applications.  This is really geared towards creating a simple, local  dev environment.</p>
<p><strong>Includes:</strong></p>
<ul>
<li>XCode Tools</li>
<li> MacPorts</li>
<li> Apache2</li>
<li> PHP 5</li>
<li> MySQL 5</li>
</ul>
<p><strong>* optional installs:</strong></p>
<ul>
<li> GIT/Subversion</li>
<li>GitX/SCPlugin</li>
<li> Sequel Pro (formerly CocoaMySQL)</li>
</ul>
<p><em>derived from a bunch of sources, including:</em></p>
<p><a href="http://seancoates.com/php-5-2-5-on-leopard" target="_blank">php-5.2.5 on Leopard</a></p>
<p><a href="http://blog.rajatpandit.com/2009/03/12/using-macport-to-setup-php5-apache2-on-leopard/" target="_blank">Using Macport to Setup PHP5 and Apache2 on Leopard/</a></p>
<p><a href="http://matthewcarriere.com/2008/04/02/installing-mysql-on-mac-os-x-leopard-using-macports/" target="_blank">Installing MYSQL on Mac OS X Leopard Using Macports</a></p>
<p><strong>Here goes:</strong></p>
<p><strong>1. Install XCode Tools:</strong></p>
<p><a href="http://developer.apple.com/technology/xcode.html" target="_blank">http://developer.apple.com/technology/xcode.html</a></p>
<p>pretty self-explanatory. Install them.  You&#8217;ll need them at the very  least for MacPorts.  But they come in handy if you ever need to compile  anything.</p>
<p><strong>2. Install MacPorts</strong></p>
<p><a href="http://www.macports.org/install.php" target="_blank">http://www.macports.org/install.php</a></p>
<p>MacPorts is a modular install system with easy update / swap /  uninstall capacity.  It&#8217;s like Fink (I say, never having used Fink) &#8212;  just an easy way to install a bunch of standard programs.</p>
<p>There are several install options, but the easiest thing to do is just use the disk image here:</p>
<p><a href="hhttp://distfiles.macports.org/MacPorts/MacPorts-1.9.2-10.6-SnowLeopard.dmg" target="_blank">http://distfiles.macports.org/MacPorts/MacPorts-1.9.2-10.6-SnowLeopard.dmg</a></p>
<p>Unless you&#8217;re an advanced user I recommend you do that.</p>
<p><strong>3. Update MacPorts</strong></p>
<blockquote>
<pre><code>sudo port -v selfupdate #makes sure ports is up to date
sudo port sync #syncs the local port index with the remote index</code></pre>
</blockquote>
<p><strong>4. Install Apache 2</strong></p>
<blockquote><p><code>sudo port install apache2 +universal<br />
sudo port load apache2 # set to autorun at boot</code></p></blockquote>
<p>The standard web server. Standard, because it&#8217;s really stable, fast and flexible.</p>
<p>more info: <a href="http://blog.rajatpandit.com/2009/03/12/using-macport-to-setup-php5-apache2-on-leopard/" target="_blank">http://blog.rajatpandit.com/2009/03/12/using-macport-to-setup-php5-apache2-on-leopard/</a></p>
<p>** notes **</p>
<p>You don&#8217;t necessarily need these, but I find it&#8217;s helpful to have some  aliases to address apache &#8212; mostly for start, stop and restart  functionality.  You can set these aliases to be whatever you want.  Or  ignore them.  I just find them helpful.</p>
<blockquote><p><code>alias apache_start="sudo /opt/local/apache2/bin/apachectl start"</code></p>
<p><code>alias apache_restart="sudo /opt/local/apache2/bin/apachectl restart"</code></p>
<p><code>alias apache_stop="sudo /opt/local/apache2/bin/apachectl stop"</code></p></blockquote>
<p><strong>5. Install MySQL 5</strong></p>
<p>(Note that you might need to <a href="#relink-sql-sock">re-link your MySQL sock</a> file before you initialize and setup if this is your first time using MySQL on your system.)</p>
<blockquote><p><code>sudo port install mysql5-server +universal</code></p>
<p><code>sudo /opt/local/lib/mysql5/bin/mysql_install_db --user=mysql #initialze mysql</code></p>
<p><code>sudo port load mysql5-server #set mysql to autostart at boot</code></p>
<p><code> </code><code>sudo /opt/local/bin/mysqld_safe5 #start</code></p></blockquote>
<p>#create symbolic links to not have to type in mysql5 every time:</p>
<blockquote><p><code>sudo ln -s /opt/local/bin/mysql5 /opt/local/bin/mysql</code></p>
<p><code> </code><code>sudo ln -s /opt/local/bin/mysqladmin5 /opt/local/bin/mysqladmin</code></p></blockquote>
<p>More info: <a href="http://matthewcarriere.com/2008/04/02/installing-mysql-on-mac-os-x-leopard-using-macports/" target="_blank">http://matthewcarriere.com/2008/04/02/installing-mysql-on-mac-os-x-leopard-using-macports/</a></p>
<p><strong>6. Install php5 (with apache2, mysql and pear support)</strong></p>
<blockquote><p><code>sudo port install php5 +apache2 +mysql5 +pear +universal</code></p></blockquote>
<p><strong>7. Activate PHP</strong></p>
<blockquote><p><code>sudo cp /opt/local/etc/php5/php.ini-development  /opt/local/etc/php5/php.ini</code></p>
<p><code>cd /opt/local/apache2/modules</code></p>
<p><code> </code><code>sudo /opt/local/apache2/bin/apxs -a -e -n "php5" libphp5.so</code></p></blockquote>
<p><strong>8. Move Snow Leopard&#8217;s standard Apache out of the regular path</strong></p>
<blockquote><p><code>sudo mv /usr/sbin/apachectl /usr/sbin/apachectl-leopard</code></p></blockquote>
<p><strong>9. Move your new Apache into the path</strong></p>
<p>(you might not need the first 2 steps, but I&#8217;m working on a totally clean Leopard build, so I don&#8217;t have these directories yet)</p>
<blockquote><p><code>sudo mkdir /usr/local</code></p>
<p><code>sudo mkdir /usr/local/bin</code></p>
<p><code> </code><code>sudo ln -s /opt/local/apache2/bin/apachectl /usr/local/bin/apachectl</code></p></blockquote>
<p><strong>10. Move Leopard&#8217;s bundled PHP out of the way</strong></p>
<blockquote><p><code>sudo mv /usr/bin/php /usr/bin/php-leopard</code></p></blockquote>
<p><strong>11. Do some Apache configuration for PHP:</strong></p>
<p>(all of these are modifications to the httpd.conf file located here: /opt/local/apache2/conf/httpd.conf)</p>
<p><strong>a. </strong>Add index.php to the list of DirectoryIndex:</p>
<blockquote><p><code>&lt;IfModule dir_module&gt;</code></p>
<p><code>DirectoryIndex index.html index.php</code></p>
<p><code> </code><code>&lt;/IfModule&gt;</code></p></blockquote>
<p><strong>b.</strong> Add handlers for PHP files:</p>
<blockquote><p><code># Add handling for PHP files</code></p>
<p><code>&lt;IfModule php5_module&gt;</code></p>
<p><code>AddHandler application/x-httpd-php .php</code></p>
<p><code>AddHandler application/x-httpd-php-source .phps</code></p>
<p><code> </code><code>&lt;/IfModule&gt;</code></p></blockquote>
<p>This block can go anywhere in the httpd.conf &#8212; but it&#8217;s probably best to keep the module handlers in alphabetical order.</p>
<p><strong>c. </strong>Restart Apache</p>
<p>If you added the alias to your bash profile, you can now do apache_restart. Otherwise, enter:</p>
<blockquote><p><code>sudo apachectl restart</code></p></blockquote>
<p><strong>11. Include user Sites directories (enable the following file by un-commenting it):</strong></p>
<blockquote><p><code># User home directories</code></p>
<p><code> </code><code>Include conf/extra/httpd-userdir.conf</code></p></blockquote>
<p><strong>12. Re-link mysql.sock:<a name="relink-sql-sock"></a></strong></p>
<blockquote><p><code>sudo ln -s /opt/local/var/run/mysql5/mysqld.sock /tmp/mysql.sock</code></p></blockquote>
<p>This step is essential so everyone can agree where MySQL is living on  the system and how to connect to it.  Before I did this, Apache and PHP  seemed to be able to access MySQL, and I could access MySQL from the  command line, but programs like SequelPro couldn&#8217;t find the MySQL  socket.  This step seems to correct that problem and let everyone play  nicely.</p>
<p><strong><em>** OPTIONAL **</em></strong></p>
<p>These steps are optional &#8212; certainly not essential, but I find them to be very helpful tools for web development.</p>
<p><strong>13. Install Git/Subversion (Version Control)</strong></p>
<p>I personally have become a huge fan of <a href="http://git-scm.com/" target="_blank">Git</a>.  I want to encourage you to become a fan too if you aren&#8217;t already.</p>
<p>You can install Git using <a href="http://code.google.com/p/git-osx-installer/" target="_blank">Mac OSX installer.</a></p>
<p>Alternatively, if you want to keep with <strong>Subversion</strong> (or, say, you need both), do this:</p>
<blockquote><p>sudo port install subversion +universal</p></blockquote>
<p>This installs the latest version of Subversion on the system &#8212; which  is then used for SVN access from the command line, from Eclipse, from  SCPlugin, etc.</p>
<p><strong>14. Install GitX/SCPlugin</strong></p>
<p>You&#8217;ll now want a way to interface with your version control system of choice.  My favorite interface for Git so far is GitX.  It&#8217;s much more for tracking revisions and simple commits than for branches and complex merges.  For those you&#8217;ll need the command line.  But for simple tracking and commits (what you do from day to day), GitX is for you.  <a href="http://gitx.frim.nl/" target="_blank">Download GitX here</a>.</p>
<p>If, instead/in addition, you&#8217;re looking for a tool to interact with Subversion, I recommend SCPlugin.</p>
<p><a href="http://scplugin.tigris.org/" target="_blank">http://scplugin.tigris.org/</a></p>
<p>SCPlugin is a great little tool that integrates Subversion access  with the MacOS Finder and lets you do all of your basic SVN commands  from there (checkout, update, revert, etc).  It doesn&#8217;t give you deep,  deep access into SVN commands like version checkout or repository  browsing, but for lazy commands like checkout and update, it&#8217;s great.</p>
<p><strong>15. Install CocoaMySQL / SequelPro</strong></p>
<p><a href="http://sequel-pro.googlecode.com/files/CocoaMySQL-pre0.7b6.zip" target="_blank">CocoaMySQL 0.7b6</a></p>
<p><a href="http://www.theonline.org/cocoamysql/CocoaMySQL-SBG-v0_7_1.dmg.zip%20%28CocoaMySQL-SBG%200.7.1%29" target="_blank">CocoaMySQL-SBG 0.7.1</a></p>
<p>Of those two I prefer <strong>0.7b6 </strong>&#8211; It seems perfectly stable to me.</p>
<p>CocoaMySQL is an awesome little MySQL editor / browser based on the  CocoaMySQL codebase.  I&#8217;ve been using it for years and I&#8217;ve found it&#8217;s a  lot faster than entering SQL commands in the Terminal or dealing with  PHPMyAdmin (which is super-slow even running locally).</p>
<p>CocoaMySQL lets you manage DBs effortlessly. I find it&#8217;s great for DB  creation (when you&#8217;re still sketching out a project and want to play  around with table structure), and for common tasks like importing and  exporting.</p>
<p>It&#8217;s a native MacOS application, so it&#8217;s really zippy and it lets you  do local and remote DB access.  And it plays nice with all of the  components we&#8217;ve installed so far.</p>
<p>I highly recommend it.</p>
<p>The only drawback is that the codebase for CocoaMySQL has been  abandoned.  It&#8217;s been picked up by the SequelPro project, but honestly  these guys have a ways to go before their product matches CocoaMySQL  (like &#8212; they still need to add user administration).  By the time you  read this maybe they&#8217;ve added some features.  If not, I&#8217;d say CocoaMYSQL  still works beautifully &#8212; even though the code has been abandoned.</p>
<p>If you want SequelPro, though, you can get it here:</p>
<p><a href="http://www.sequelpro.com/" target="_blank">http://www.sequelpro.com/</a></p>
<p><strong>16. ADVANCED &#8211; Virtual Hosts</strong></p>
<p>I first experimented with Virtual Hosts when I started doing  WordPress development &#8212; mostly because WordPress seems much happier  with shorter real world style urls like:</p>
<p><em>http://radio.local</em></p>
<p>than those you&#8217;d typically see running on your local box:</p>
<p><em>http://localhost/~jeff/projects/wordpress/radio-station</em></p>
<p>But once I started playing with these, I decided it was MUCH easier  to be able to deal with these super-short urls (think Bit.ly for your  local box) than to have to type in the whole thing.  It&#8217;s made my life a  lot simpler, so I figured I&#8217;d pass along the info.</p>
<p>Note that when you choose a host name, you&#8217;ll want to choose one that  doesn&#8217;t exist on the web.  You&#8217;re basically overriding your machine&#8217;s  host lookup functionality &#8212; hard coding urls to corresponding locations  on your local disk &#8212; and thereby bypassing DNS lookup.  So if you  pathed http://www.google.com to your local disk, your computer wouldn&#8217;t  be able to find the real google until you undid the Virtual host.  So be  careful.</p>
<p>I typically choose a hostname that includes the suffix .local.   That&#8217;s never given me any problems (eg. projects.local, flash.local,  radio.local).</p>
<p>Let&#8217;s begin.</p>
<p>You&#8217;ll be dealing with 3 files on this:</p>
<ul>
<li>httpd.conf</li>
<li>httpd-vhosts.conf</li>
<li>hosts</li>
</ul>
<p>Which, if you followed the steps above, are located at:</p>
<ul>
<li>/opt/local/apache2/conf/httpd.conf</li>
<li>/opt/local/apache2/conf/extra/httpd-vhosts.conf</li>
<li>/private/etc/hosts</li>
</ul>
<p><strong>a. Enable Apache&#8217;s Virtual Host configuration</strong></p>
<p>in httpd.conf, uncomment the Virtual Hosts line:</p>
<blockquote><p><code>Include conf/extra/httpd-vhosts.conf</code></p></blockquote>
<p>This will allow you to add hosts to your vhosts configuration file.</p>
<p><strong>b. Add host locations</strong></p>
<p>open the vhosts file in your favorite text editor:</p>
<blockquote><p><code>/opt/local/apache2/conf/extra/httpd-vhosts.conf</code></p></blockquote>
<p>The first thing you&#8217;ll want to do here is comment out the default examples they give you (the ones that include <em>ServerAdmin webmaster@dummy-host.example.com</em>).  You might want them as a reference, but you don&#8217;t want them to be active.  Comment them out.</p>
<p>Next you&#8217;ll add your host.  Substitute in values below to correspond to your build and the hostname you choose:</p>
<blockquote><p><code>&lt;VirtualHost *:80&gt;</code></p>
<p><code>DocumentRoot "/Users/USERNAME/PATH"</code></p>
<p><code>ServerName hostname.suffix</code></p>
<p><code> </code><code>&lt;/VirtualHost&gt;</code></p></blockquote>
<p>Typically life is easier if you choose a disk path inside of your  Sites directory.  If you don&#8217;t you might need to do some more file  permission configuration.</p>
<p>In my case, the host I added is:</p>
<blockquote><p><code>&lt;VirtualHost *:80&gt;</code></p>
<p><code>DocumentRoot "/Users/jeff/Sites/projects"</code></p>
<p><code>ServerName projects.local</code></p>
<p><code> </code><code>&lt;/VirtualHost&gt;</code></p></blockquote>
<p>So now Apache knows that when it&#8217;s told to serve any files referenced  by the url projects.local, it&#8217;ll serve them from the path I&#8217;ve given it  in my Sites directory.  There are other arguments you can add to the  VirtualHost node, but this is all you need.</p>
<p><strong>c. Add host names to your hosts file</strong></p>
<p>Next you need to tell the machine that when you ask for that  particular server name, you want it to ask the local Apache server to  serve it.  Editing this file is globally applicable to all browser  applications &#8212; so once you edit this file, programs like Firefox,  Safari, Opera, etc will all serve up your local page instead of looking  the url up with the friendly neighborhood DNS.</p>
<p>Your machine already does this to a certain extent &#8212; for example,  the &#8216;localhost&#8217; prefix is already set up via the hosts file so that the  machine knows to look to the local Apache server, rather than out on the  web.  What we&#8217;re doing is adding one or many shortcuts that mimic this  behavior &#8212; but which point to more specific locations on disk.</p>
<p>Open your hosts file:</p>
<blockquote><p><code>/private/etc/hosts</code></p></blockquote>
<p>and add the line:</p>
<blockquote><p><code>127.0.0.1     hostname.suffix</code></p></blockquote>
<p>(so in my case I added):</p>
<blockquote><p><code>127.0.0.1     projects.local</code></p></blockquote>
<p>then save the file.</p>
<p><strong>d. Restart Apache</strong></p>
<p>Go back to the terminal and restart apache:</p>
<blockquote><p><code>sudo apachectl restart</code></p></blockquote>
<p>Now you should be all set.  Open up your browser and point it towards the virtual host you just made. In our case that&#8217;s:</p>
<p><em>http://projects.local</em></p>
<p>And your browser should serve up that url like magic. ;)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffreyclarke.net/blog/2011/02/a-web-developmen-environment-on-snow-leopard/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>More Microsoft Ad Campaign Missteps</title>
		<link>http://www.jeffreyclarke.net/blog/2009/06/more-microsoft-ad-campaign-missteps/</link>
		<comments>http://www.jeffreyclarke.net/blog/2009/06/more-microsoft-ad-campaign-missteps/#comments</comments>
		<pubDate>Mon, 22 Jun 2009 17:46:19 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA['Puters]]></category>
		<category><![CDATA[Rants and Raves]]></category>
		<category><![CDATA[10 Grand Buried Here]]></category>
		<category><![CDATA[Ad Campaigns]]></category>
		<category><![CDATA[Chrome]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[IE8]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://www.jeffreyclarke.net/blog/?p=1051</guid>
		<description><![CDATA[Oh Microsoft.  You have so much money.  Why is it all of your ad campaigns make you look like a grumpy old dinosaur, a complete dick or a bad politician? THE RECAP: Of course this all started with the ill-fated Seinfeld campaign which made the mistake of putting Bill Gates in front of a camera [...]]]></description>
			<content:encoded><![CDATA[<p>Oh Microsoft.  You have so much money.  Why is it all of your ad campaigns make you look like a grumpy old dinosaur, a complete dick or a bad politician?</p>
<p><strong>THE RECAP:</strong></p>
<p>Of course this all started with the ill-fated <a href="http://www.jeffreyclarke.net/blog/2008/09/new-microsoft-ads/" target="_blank">Seinfeld campaign</a> which made the mistake of putting Bill Gates in front of a camera for comedic effect.  The commercials made me wonder, &#8220;Why would I trust these guys&#8217; opinions about computers? They seem really out of touch.&#8221;</p>
<p>Then there was the <a href="http://www.jeffreyclarke.net/blog/2008/09/microstft-misses-the-mark-again/" target="_blank">&#8220;I&#8217;m a PC&#8221;</a> campaign which banked on the underwhelming selling point of &#8220;Look! Macs might be cool but some people also use PCs.&#8221;</p>
<p>Then there was the mildly misleading &#8220;Laptop Hunters&#8221; campaign to show that PCs are cheaper than Macs.  And that, given $1000 and a script, <a href="http://technologyexpert.blogspot.com/2009/03/microsofts-laptop-hunter-redhead-outed.html" target="_blank">a paid actor </a>would choose an inferior PC over a Mac.  You can read about it here and here and (my personal favorite) here, where a filmmaker chooses to edit video on a PC.  Interesting choice.  And as always, <a href="http://www.wired.com/gadgetlab/2009/05/laptophunter/" target="_blank">all of these ads were made on Macs</a>.</p>
<p>But you were just getting warmed up!</p>
<p><span id="more-1051"></span></p>
<p><strong>THE NEW IE8 CAMPAIGN</strong></p>
<p><strong>Ten Grand is Buried Here</strong></p>
<p>This all started last week with the Aussie-birthed campaign <a href="http://www.microsoft.com/australia/ie8/competition/Default.aspx" target="_blank"><strong>Ten Grand is Buried Here</strong></a>, whose intent was to persuade users to download IE8 and follow a bunch of clues to find 10K online.  Let me start by saying that I applaud the thought: were IE6 (which is now over 8 years old!) to vanish from the earth, I would be a very happy web developer.  So, good idea.  Kudos!</p>
<p>The catch (or let&#8217;s say, &#8216;the hook&#8217;) was, of course, you could only find the money using IE8.  This was reiterated several times on the page, along with <a href="http://mitcho.com/blog/projects/ten-grand-is-buried-there/" target="_blank">browser-specific digs</a> on whatever non-Microsoft product you used to visit the page.  Firefox is &#8216;old,&#8217; (as old as IE?), Safari is &#8216;boring&#8217; (again, as boring as IE?), Chrome is &#8216;tarnished&#8217; (ha!).</p>
<p>The upper brass at MSFT decided to change their tune this week &#8212; opting to remove the browser-specific digs and make the page viewable to all.  Maybe it&#8217;s not a good idea to alienate potential users of their product, they decided.  Clever.</p>
<p><strong>(Mis)Information Warfare</strong></p>
<p>This morning I found the more formal <a href="http://www.microsoft.com/windows/internet-explorer/get-the-facts/browser-comparison.aspx" target="_blank">IE8 campaign</a> &#8212; a subtle information / spin campaign on the product page that further attempts to convince users that IE8 is the best.  My favorite part is the <a href="http://www.microsoft.com/windows/internet-explorer/get-the-facts/browser-comparison.aspx" target="_blank"><strong>Browser Comparison</strong></a> tab which, without stating any facts, declares IE8 to be superior in 8 categories: <em>Security, Privacy<strong>, </strong>Ease of Use<strong>, </strong>Web Standards<strong>, </strong>Developer Tools<strong>, </strong>Reliability</em><strong>, </strong><em>Customizability</em><strong> </strong>and <em>Compatibility</em>.</p>
<p><img class="alignnone size-full wp-image-1054" title="msft" src="http://www.jeffreyclarke.net/blog/wp-content/uploads/2009/06/msft.jpg" alt="msft" width="460" height="514" /></p>
<p>Ok.  Where to begin?</p>
<p>First off, where&#8217;s Safari?  Where&#8217;s Opera?</p>
<p>Second, with such general categories and no statements to back them up, this chart might as well read:</p>
<table style="text-align: center; height: 84px;" border="0" width="303">
<tbody>
<tr>
<td></td>
<td>My Product</td>
<td>Your Product</td>
</tr>
<tr>
<td style="text-align:left">Good Nature</td>
<td>x</td>
<td></td>
</tr>
<tr>
<td style="text-align:left">Great Personality</td>
<td>x</td>
<td></td>
</tr>
<tr>
<td style="text-align:left">Interesting Prospects</td>
<td>x</td>
<td></td>
</tr>
</tbody>
</table>
<p>Third, some of the claims they make are ridiculous.  IE8 is more standards compliant than Firefox?  And Chrome?  Both of which <a href="http://files.getdropbox.com/u/967526/Screenshot.png" class="lightview" rel="gallery[1051]" target="_blank">score way better on the Acid 2 and Acid 3 tests</a>?  Are you high?  And IE8 is only more compatible with more sites on the internet because those sites were coded for IE6, and won&#8217;t render anywhere else.  Plus, IE hasn&#8217;t run on Mac since version 5.5.  That&#8217;s not particularly compatible with anything.</p>
<p>And then there&#8217;s the <strong>MythBusting</strong> tab.  Which ventures into the realm of pure delusion.</p>
<p><strong>Myth #1: I<a onclick="showFaq(1,4,'1_1'); 						globaltracking.onclicktrack('iegetthefacts_mythbusting_myth1ieslower');">nternet Explorer is much slower than Firefox and Chrome. </a></strong></p>
<p><a onclick="showFaq(1,4,'1_1'); 						globaltracking.onclicktrack('iegetthefacts_mythbusting_myth1ieslower');"></a>They claim their browser is faster because, once you learn all of their application shortcuts (Accelerator, Smart Address Bar), you can get around faster than you can if you use a browser that doesn&#8217;t have these features.  If we pick apart this statement, they&#8217;re basically saying their browser application is slower, but that you can work around it.  Of course they also neglect to say that Chrome and FF already have most or all of these features.  Which renders the whole thing a choice between a slower browser that has nice user shortcuts or a faster browser that has the same user shortcuts.</p>
<p><strong>Myth #2: <a onclick="showFaq(1,4,'1_2'); 						globaltracking.onclicktrack('iegetthefacts_mythbusting_myth2ielesssecure');">Internet Explorer is less secure than Firefox. </a></strong></p>
<p>Sites a <a href="http://my.opera.com/haavard/blog/2009/03/26/malware-report-from-nss-labs-manipulates-statistics" target="_blank">Microsoft-sponsored NSS Labs report that Opera has already called into question</a>.</p>
<p><strong>Myth #3: <a onclick="showFaq(1,4,'1_3'); 						globaltracking.onclicktrack('iegetthefacts_mythbusting_myth3firefoxricher');">Firefox is a richer, more adaptable browser than Internet Explorer.</a></strong></p>
<p>Firefox and Chrome are based on open-source technologies.  They are therefore virtually infinitely adaptable, and therefore &#8216;richer.&#8217; And while there may be a ton of IE8 add-ons, I can definitely say not all of them are free.  I&#8217;ve never had to pay for a Firefox add-on.</p>
<p><strong>Myth #4:<a onclick="showFaq(1,4,'1_4'); 						globaltracking.onclicktrack('iegetthefacts_mythbusting_myth4iedoesntplay');"> Internet Explorer doesn&#8217;t play well with Web standards. </a></strong></p>
<p>Let me start by rephrasing this as 3 more specific statements.  1) IE has a history of not playing well with web standards and 2) IE8 does better than previous IE versions where web standards are concerned, and 3) IE8 is more web-standards compliant than Chrome and Firefox 3.</p>
<p><strong>1: true.</strong> There is no denying IE has never played nice with web standards.  They are the reason you can&#8217;t make an AJAX call without a browser test.</p>
<p><strong>2: true</strong>.  Sure.  It can&#8217;t have gotten worse.  Right?</p>
<p><strong>3: truly questionable. </strong>This statement is based on the claim that:</p>
<blockquote><p>In addition to passing more of the official CSS 2.1 test suites than any other browser, Microsoft got really hands-on in the overall testing process by developing and contributing thousands of new tests for the consortium.</p></blockquote>
<p>This is an uncited reference to <a href="http://blogs.msdn.com/ie/archive/2009/01/27/microsoft-submits-thousands-more-css-2-1-tests-to-the-w3c.aspx" target="_blank">this internal blog post</a>, which states IE8 passes more of <em>its own </em>CSS 2.1 tests than any other browser manufacturer.  Tests which have been submitted to the w3C, but which have not yet been accepted by the consortium.  Plus CSS 2.1 is the <em>last generation standard</em>.  Who cares if they made up more tests for themselves to pass if the tests are for a spec that is slowly becoming obsolete? 3.0 is the current/next gen standard.</p>
<p>It&#8217;s just sad.  These guys used to be innovators.  And they have a massive number of people working for them up in Redlands.  Why can&#8217;t they just develop a great product, instead of developing one that they know is inferior and then pretending it&#8217;s better?  One can only pray <a href="http://www.w3schools.com/browsers/browsers_stats.asp" target="_blank">their market share continues to slip</a>.  Maybe then they&#8217;ll get the message.</p>
<p><strong>UPDATE: </strong>I just found Michael Calore&#8217;s analysis of IE8&#8242;s MythBusting on <a href="http://www.webmonkey.com/blog/Taking_Microsoft_to_Task_Over_IE8__Myths_" target="_blank">Webmonkey</a> which says a lot of similar stuff.  And is pretty hilarious.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffreyclarke.net/blog/2009/06/more-microsoft-ad-campaign-missteps/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Conan O&#8217;Brien, The Lost Mario Brother</title>
		<link>http://www.jeffreyclarke.net/blog/2009/06/conan-obrien-lost-mario-brother/</link>
		<comments>http://www.jeffreyclarke.net/blog/2009/06/conan-obrien-lost-mario-brother/#comments</comments>
		<pubDate>Thu, 04 Jun 2009 16:49:14 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA['Puters]]></category>
		<category><![CDATA[General Nerdiness]]></category>
		<category><![CDATA[Conan O'Brien]]></category>
		<category><![CDATA[Super Mario Brothers]]></category>

		<guid isPermaLink="false">http://www.jeffreyclarke.net/blog/?p=1017</guid>
		<description><![CDATA[Check this out: Conan&#8217;s New Stage Looks Like Super Mario It&#8217;s pretty amazing that someone took the time to put together that collage over at Serious Lunch.  And even more amazing that, yes, Conan&#8217;s set does look a lot like a SMB background. Thanks Vulture &#38; Serious Lunch]]></description>
			<content:encoded><![CDATA[<p>Check this out:</p>
<p><a href="http://seriouslunch.blogspot.com/2009/06/conans-new-stage-looks-like-super-mario.html" target="_blank"><img class="alignnone size-full wp-image-1035" title="Conan in Super Mario World" src="http://www.jeffreyclarke.net/blog/wp-content/uploads/2009/06/seriouslunch_conan.jpg" alt="Conan in Super Mario World" width="420" height="487" /></a></p>
<p><strong><a href="http://seriouslunch.blogspot.com/2009/06/conans-new-stage-looks-like-super-mario.html" target="_blank">Conan&#8217;s New Stage Looks Like Super Mario</a></strong></p>
<p>It&#8217;s pretty amazing that someone took the time to put together that collage over at <a href="http://seriouslunch.blogspot.com/" target="_blank">Serious Lunch</a>.  And even more amazing that, yes, Conan&#8217;s set does look a lot like a SMB background.</p>
<p>Thanks <a href="http://nymag.com/daily/entertainment/2009/06/conans_tonight_show_live_from.html" target="_blank">Vulture</a> &amp; <a href="http://seriouslunch.blogspot.com/" target="_blank">Serious Lunch</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffreyclarke.net/blog/2009/06/conan-obrien-lost-mario-brother/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Web Development Server Environment on Leopard</title>
		<link>http://www.jeffreyclarke.net/blog/2009/06/a-web-development-server-environment-on-leopard/</link>
		<comments>http://www.jeffreyclarke.net/blog/2009/06/a-web-development-server-environment-on-leopard/#comments</comments>
		<pubDate>Mon, 01 Jun 2009 14:29:49 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA['Puters]]></category>
		<category><![CDATA[General Nerdiness]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[Leopard]]></category>
		<category><![CDATA[Mac OS 10.5]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.jeffreyclarke.net/blog/?p=977</guid>
		<description><![CDATA[UPDATE: I&#8217;ve now written a modified guide for Snow Leopard! I apologize &#8212; this is a little nerdier than this blog typically gets, but I wanted to put this up online somewhere and didn&#8217;t have anywhere else to put it. I&#8217;ve been frustrated with the web server that comes with Mac OS 10.5 (Leopard) and [...]]]></description>
			<content:encoded><![CDATA[<p><strong>UPDATE:</strong> I&#8217;ve now written a modified guide for <a href="http://www.jeffreyclarke.net/blog/2011/02/a-web-developmen-environment-on-snow-leopard/">Snow Leopard</a>!</p>
<p>I apologize &#8212; this is a little nerdier than this blog typically gets, but I wanted to put this up online somewhere and didn&#8217;t have anywhere else to put it.</p>
<p>I&#8217;ve been frustrated with the web server that comes with Mac OS 10.5 (Leopard) and I&#8217;ve worked to set up my own server for web development projects.  I&#8217;d tried this a number of ways, but this time I was really happy with the process and the end result &#8212; so I typed up a little document on how to set up a nice web dev environment (partly so I can repeat it, but partly to share).  Enjoy!</p>
<p><span id="more-977"></span></p>
<p style="text-align: center;">* * * * *</p>
<p><!--   body #page #content{ text-align:left;margin:5px auto; padding:10px 0 0; width:100%;}    --></p>
<p>I&#8217;ve found a relatively easy way to maintain a flexible, updatable development under MacOS 10.5 which goes so far as to install my own components, but not to have to compile them (which I&#8217;ve done several times and can attest, is a pain).</p>
<p>This setup gives you a great web development environment under Leopard (geared in my case towards Flash development compatible with the WordPress platform), which does a better job of playing by the rules than the default install of a lot of these elements.  And with MacPorts, the whole thing is modular and very easily maintained.</p>
<p>And everything on the list is free and/or open-source.</p>
<p>* Note that you&#8217;ll need to have administrator privileges on your user account to do this.</p>
<p>** Also note that this is geared towards creating a relatively unfettered development environment.  I don&#8217;t make any considerations about server security or server optimization for large-scale web applications.  This is really geared towards creating a simple, local dev environment.</p>
<p><strong>Includes:</strong></p>
<ul>
<li>XCode Tools</li>
<li> MacPorts</li>
<li> Apache2</li>
<li> PHP 5</li>
<li> MySQL 5</li>
</ul>
<p><strong>* optional installs:</strong></p>
<ul>
<li> Subversion</li>
<li> SCPlugin</li>
<li> Sequel Pro (formerly CocoaMySQL)</li>
</ul>
<p><em>derived from a bunch of sources, including:</em><br />
<a href="http://seancoates.com/php-5-2-5-on-leopard" target="_blank">php-5.2.5 on Leopard</a><br />
<a href="http://blog.rajatpandit.com/2009/03/12/using-macport-to-setup-php5-apache2-on-leopard/" target="_blank">Using Macport to Setup PHP5 and Apache2 on Leopard/</a><br />
<a href="http://matthewcarriere.com/2008/04/02/installing-mysql-on-mac-os-x-leopard-using-macports/" target="_blank">Installing MYSQL on Mac OS X Leopard Using Macports</a></p>
<p><strong style="display: block; margin-top: 30px; margin-bottom: 25px; font-size: 1.3em;">Here goes:</strong></p>
<p><strong>1. Install XCode Tools:</strong><br />
<a href="http://developer.apple.com/technology/xcode.html" target="_blank">http://developer.apple.com/technology/xcode.html</a></p>
<p>pretty self-explanatory. Install them.  You&#8217;ll need them at the very least for MacPorts.  But they come in handy if you ever need to compile anything.</p>
<p><strong>2. Install MacPorts</strong><br />
<a href="http://www.macports.org/install.php" target="_blank">http://www.macports.org/install.php</a></p>
<p>MacPorts is a modular install system with easy update / swap / uninstall capacity.  It&#8217;s like Fink (I say, never having used Fink) &#8212; just an easy way to install a bunch of standard programs.</p>
<p>There are several install options, but the easiest thing to do is just use the disk image here:</p>
<p><a href="http://svn.macports.org/repository/macports/downloads/MacPorts-1.7.1/MacPorts-1.7.1-10.5-Leopard.dmg" target="_blank">http://svn.macports.org/repository/macports/downloads/MacPorts-1.7.1/MacPorts-1.7.1-10.5-Leopard.dmg</a></p>
<p>Unless you&#8217;re an advanced user I recommend you do that.</p>
<p><strong>3. Update MacPorts</strong></p>
<blockquote><p>sudo port -v selfupdate #makes sure ports is up to date<br />
sudo port sync #syncs the local port index with the remote index</p></blockquote>
<p><strong>4. Install Apache 2</strong></p>
<blockquote><p>sudo port install apache2<br />
sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist # set to autorun at boot</p></blockquote>
<p>The standard web server. Standard, because it&#8217;s really stable, fast and flexible.</p>
<p>more info: <a href="http://blog.rajatpandit.com/2009/03/12/using-macport-to-setup-php5-apache2-on-leopard/" target="_blank">http://blog.rajatpandit.com/2009/03/12/using-macport-to-setup-php5-apache2-on-leopard/</a></p>
<p>** notes **<br />
You don&#8217;t necessarily need these, but I find it&#8217;s helpful to have some aliases to address apache &#8212; mostly for start, stop and restart functionality.  You can set these aliases to be whatever you want.  Or ignore them.  I just find them helpful.</p>
<blockquote><p>alias apache_start=&#8221;sudo /opt/local/apache2/bin/apachectl start&#8221;<br />
alias apache_restart=&#8221;sudo /opt/local/apache2/bin/apachectl restart&#8221;<br />
alias apache_stop=&#8221;sudo /opt/local/apache2/bin/apachectl stop&#8221;</p></blockquote>
<p><strong>5. Install MySQL 5</strong></p>
<blockquote><p>sudo port install mysql5 +server<br />
sudo /opt/local/lib/mysql5/bin/mysql_install_db &#8211;user=mysql #initialze mysql<br />
sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist #set mysql to autostart at boot<br />
sudo /opt/local/bin/mysqld_safe5 #start</p></blockquote>
<p>#create symbolic links to not have to type in mysql5 every time:</p>
<blockquote><p>sudo ln -s /opt/local/bin/mysql5 /opt/local/bin/mysql<br />
sudo ln -s /opt/local/bin/mysqladmin5 /opt/local/bin/mysqladmin</p></blockquote>
<p>More info: <a href="http://matthewcarriere.com/2008/04/02/installing-mysql-on-mac-os-x-leopard-using-macports/" target="_blank">http://matthewcarriere.com/2008/04/02/installing-mysql-on-mac-os-x-leopard-using-macports/</a></p>
<p><strong>6. Install php5 (with apache2, mysql and pear support)</strong></p>
<blockquote><p>sudo port install php5 +apache2 +mysql5 +pear</p></blockquote>
<p><strong>7. Activate PHP</strong></p>
<blockquote><p>cd /opt/local/apache2/modules<br />
sudo /opt/local/apache2/bin/apxs -a -e -n &#8220;php5&#8243; libphp5.so</p></blockquote>
<p><strong>8. Move Leopard&#8217;s standard Apache out of the regular path</strong></p>
<blockquote><p>sudo mv /usr/sbin/apachectl /usr/sbin/apachectl-leopard</p></blockquote>
<p><strong>9. Move your new Apache into the path</strong><br />
(you might not need the first 2 steps, but I&#8217;m working on a totally clean Leopard build, so I don&#8217;t have these directories yet)</p>
<blockquote><p>sudo mkdir /usr/local<br />
sudo mkdir /usr/local/bin<br />
sudo ln -s /opt/local/apache2/bin/apachectl /usr/local/bin/apachectl</p></blockquote>
<p><strong>10. Move Leopard&#8217;s bundled PHP out of the way</strong></p>
<blockquote><p>sudo mv /usr/bin/php /usr/bin/php-leopard</p></blockquote>
<p><strong>11. Do some Apache configuration for PHP:</strong><br />
(all of these are modifications to the httpd.conf file located here: /opt/local/apache2/conf/httpd.conf)</p>
<p><strong>a. </strong>Add index.php to the list of DirectoryIndex:</p>
<blockquote><p>&lt;IfModule dir_module&gt;<br />
DirectoryIndex index.html index.php<br />
&lt;/IfModule&gt;</p></blockquote>
<p><strong>b.</strong> Add handlers for PHP files:</p>
<blockquote><p># Add handling for PHP files<br />
&lt;IfModule php5_module&gt;<br />
AddHandler application/x-httpd-php .php<br />
AddHandler application/x-httpd-php-source .phps<br />
&lt;/IfModule&gt;</p></blockquote>
<p>This block can go anywhere in the httpd.conf &#8212; but it&#8217;s probably best to keep the module handlers in alphabetical order.</p>
<p><strong>c. </strong>Restart Apache<br />
If you added the alias to your bash profile, you can now do apache_restart. Otherwise, enter:</p>
<blockquote><p>sudo apachectl restart</p></blockquote>
<p><strong>11. Include user Sites directories (enable the following file by un-commenting it):</strong></p>
<blockquote><p># User home directories<br />
Include conf/extra/httpd-userdir.conf</p></blockquote>
<p><strong>12. Re-link mysql.sock:</strong></p>
<blockquote><p>sudo ln -s /opt/local/var/run/mysql5/mysqld.sock /tmp/mysql.sock</p></blockquote>
<p>This step is essential so everyone can agree where MySQL is living on the system and how to connect to it.  Before I did this, Apache and PHP seemed to be able to access MySQL, and I could access MySQL from the command line, but programs like SequelPro couldn&#8217;t find the MySQL socket.  This step seems to correct that problem and let everyone play nicely.</p>
<p><strong style="display: block; margin-top: 30px; margin-bottom: 0px; font-size: 1.3em;"><em>** OPTIONAL **</em></strong><br />
These steps are optional &#8212; certainly not essential, but I find them to be very helpful tools for web development.</p>
<p><strong>13. Install Subversion</strong></p>
<blockquote><p>sudo port install subversion</p></blockquote>
<p>This installs the latest version of Subversion on the system &#8212; which is then used for SVN access from the command line, from Eclipse, from SCPlugin, etc.</p>
<p><strong>14. Install SCPlugin</strong></p>
<p><a href="http://scplugin.tigris.org/" target="_blank">http://scplugin.tigris.org/</a></p>
<p>SCPlugin is a great little tool that integrates Subversion access with the MacOS Finder and lets you do all of your basic SVN commands from there (checkout, update, revert, etc).  It doesn&#8217;t give you deep, deep access into SVN commands like version checkout or repository browsing, but for lazy commands like checkout and update, it&#8217;s great.</p>
<p><strong>15. Install CocoaMySQL / SequelPro</strong></p>
<p><a href="http://sequel-pro.googlecode.com/files/CocoaMySQL-pre0.7b6.zip" target="_blank">CocoaMySQL 0.7b6</a><br />
<a href="http://www.theonline.org/cocoamysql/CocoaMySQL-SBG-v0_7_1.dmg.zip (CocoaMySQL-SBG 0.7.1)" target="_blank">CocoaMySQL-SBG 0.7.1</a></p>
<p>Of those two I prefer <strong>0.7b6 </strong>&#8211; It seems perfectly stable to me.</p>
<p>CocoaMySQL is an awesome little MySQL editor / browser based on the CocoaMySQL codebase.  I&#8217;ve been using it for years and I&#8217;ve found it&#8217;s a lot faster than entering SQL commands in the Terminal or dealing with PHPMyAdmin (which is super-slow even running locally).</p>
<p>CocoaMySQL lets you manage DBs effortlessly. I find it&#8217;s great for DB creation (when you&#8217;re still sketching out a project and want to play around with table structure), and for common tasks like importing and exporting.</p>
<p>It&#8217;s a native MacOS application, so it&#8217;s really zippy and it lets you do local and remote DB access.  And it plays nice with all of the components we&#8217;ve installed so far.</p>
<p>I highly recommend it.</p>
<p>The only drawback is that the codebase for CocoaMySQL has been abandoned.  It&#8217;s been picked up by the SequelPro project, but honestly these guys have a ways to go before their product matches CocoaMySQL (like &#8212; they still need to add user administration).  By the time you read this maybe they&#8217;ve added some features.  If not, I&#8217;d say CocoaMYSQL still works beautifully &#8212; even though the code has been abandoned.</p>
<p>If you want SequelPro, though, you can get it here:</p>
<p><a href="http://www.sequelpro.com/" target="_blank">http://www.sequelpro.com/</a></p>
<p><strong>16. ADVANCED &#8211; Virtual Hosts</strong></p>
<p>I first experimented with Virtual Hosts when I started doing WordPress development &#8212; mostly because WordPress seems much happier with shorter real world style urls like:</p>
<p><em>http://radio.local</em></p>
<p>than those you&#8217;d typically see running on your local box:</p>
<p><em>http://localhost/~jeff/projects/wordpress/radio-station</em></p>
<p>But once I started playing with these, I decided it was MUCH easier to be able to deal with these super-short urls (think Bit.ly for your local box) than to have to type in the whole thing.  It&#8217;s made my life a lot simpler, so I figured I&#8217;d pass along the info.</p>
<p>Note that when you choose a host name, you&#8217;ll want to choose one that doesn&#8217;t exist on the web.  You&#8217;re basically overriding your machine&#8217;s host lookup functionality &#8212; hard coding urls to corresponding locations on your local disk &#8212; and thereby bypassing DNS lookup.  So if you pathed http://www.google.com to your local disk, your computer wouldn&#8217;t be able to find the real google until you undid the Virtual host.  So be careful.</p>
<p>I typically choose a hostname that includes the suffix .local.  That&#8217;s never given me any problems (eg. projects.local, flash.local, radio.local).</p>
<p>Let&#8217;s begin.</p>
<p>You&#8217;ll be dealing with 3 files on this:</p>
<ul>
<li>httpd.conf</li>
<li>httpd-vhosts.conf</li>
<li>hosts</li>
</ul>
<p>Which, if you followed the steps above, are located at:</p>
<ul>
<li>/opt/local/apache2/conf/httpd.conf</li>
<li>/opt/local/apache2/conf/extra/httpd-vhosts.conf</li>
<li>/private/etc/hosts</li>
</ul>
<p><strong>a. Enable Apache&#8217;s Virtual Host configuration</strong><br />
in httpd.conf, uncomment the Virtual Hosts line:</p>
<blockquote><p>Include conf/extra/httpd-vhosts.conf</p></blockquote>
<p>This will allow you to add hosts to your vhosts configuration file.</p>
<p><strong>b. Add host locations</strong></p>
<p>open the vhosts file in your favorite text editor:</p>
<blockquote><p>/opt/local/apache2/conf/extra/httpd-vhosts.conf</p></blockquote>
<p>The first thing you&#8217;ll want to do here is comment out the default examples they give you (the ones that include <em>ServerAdmin webmaster@dummy-host.example.com</em>).  You might want them as a reference, but you don&#8217;t want them to be active.  Comment them out.</p>
<p>Next you&#8217;ll add your host.  Substitute in values below to correspond to your build and the hostname you choose:</p>
<blockquote><p>&lt;VirtualHost *:80&gt;<br />
DocumentRoot &#8220;/Users/USERNAME/PATH&#8221;<br />
ServerName hostname.suffix<br />
&lt;/VirtualHost&gt;</p></blockquote>
<p>Typically life is easier if you choose a disk path inside of your Sites directory.  If you don&#8217;t you might need to do some more file permission configuration.</p>
<p>In my case, the host I added is:</p>
<blockquote><p>&lt;VirtualHost *:80&gt;<br />
DocumentRoot &#8220;/Users/jeff/Sites/projects&#8221;<br />
ServerName projects.local<br />
&lt;/VirtualHost&gt;</p></blockquote>
<p>So now Apache knows that when it&#8217;s told to serve any files referenced by the url projects.local, it&#8217;ll serve them from the path I&#8217;ve given it in my Sites directory.  There are other arguments you can add to the VirtualHost node, but this is all you need.</p>
<p><strong>c. Add host names to your hosts file</strong></p>
<p>Next you need to tell the machine that when you ask for that particular server name, you want it to ask the local Apache server to serve it.  Editing this file is globally applicable to all browser applications &#8212; so once you edit this file, programs like Firefox, Safari, Opera, etc will all serve up your local page instead of looking the url up with the friendly neighborhood DNS.</p>
<p>Your machine already does this to a certain extent &#8212; for example, the &#8216;localhost&#8217; prefix is already set up via the hosts file so that the machine knows to look to the local Apache server, rather than out on the web.  What we&#8217;re doing is adding one or many shortcuts that mimic this behavior &#8212; but which point to more specific locations on disk.</p>
<p>Open your hosts file:</p>
<blockquote><p>/private/etc/hosts</p></blockquote>
<p>and add the line:</p>
<blockquote><p>127.0.0.1     hostname.suffix</p></blockquote>
<p>(so in my case I added):</p>
<blockquote><p>127.0.0.1     projects.local</p></blockquote>
<p>then save the file.</p>
<p><strong>d. Restart Apache</strong><br />
Go back to the terminal and restart apache:</p>
<blockquote><p>sudo apachectl restart</p></blockquote>
<p>Now you should be all set.  Open up your browser and point it towards the virtual host you just made. In our case that&#8217;s:</p>
<p><em>http://projects.local</em></p>
<p>And your browser should serve up that url like magic. ;)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffreyclarke.net/blog/2009/06/a-web-development-server-environment-on-leopard/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>This is What You Can Do With Video Projections</title>
		<link>http://www.jeffreyclarke.net/blog/2009/03/this-is-what-you-can-do-with-video-projections/</link>
		<comments>http://www.jeffreyclarke.net/blog/2009/03/this-is-what-you-can-do-with-video-projections/#comments</comments>
		<pubDate>Thu, 19 Mar 2009 15:29:31 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA['Puters]]></category>
		<category><![CDATA[Flicks]]></category>
		<category><![CDATA[General Nerdiness]]></category>
		<category><![CDATA[Theatron]]></category>
		<category><![CDATA[Advertising]]></category>
		<category><![CDATA[Michel Gondry]]></category>
		<category><![CDATA[Projections]]></category>
		<category><![CDATA[Puma]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://www.jeffreyclarke.net/blog/?p=795</guid>
		<description><![CDATA[How awesome is this Puma ad: Not that this is uncharted territory (it&#8217;s building off of Michel Gondry&#8217;s work, and most likely countless others before him), but it&#8217;s definitely pushing the boundaries further than I&#8217;ve ever seen them pushed before. What&#8217;s amazing about this, and the kind of work that Gondry does in &#8216;Dead Leaves [...]]]></description>
			<content:encoded><![CDATA[<p>How awesome is this Puma ad:</p>
<p><object width="425" height="264" data="http://www.youtube.com/v/TM8DA830xng&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/TM8DA830xng&amp;hl=en&amp;fs=1" /><param name="allowfullscreen" value="true" /></object></p>
<p>Not that this is uncharted territory (it&#8217;s building off of <a href="http://www.jeffreyclarke.net/blog/2008/12/how-does-michel-gondry-do-it/" target="_blank">Michel Gondry&#8217;s work</a>, and most likely countless others before him), but it&#8217;s definitely pushing the boundaries further than I&#8217;ve ever seen them pushed before.</p>
<p>What&#8217;s amazing about this, and the kind of work that Gondry does in &#8216;<a href="http://www.youtube.com/watch?v=zh7UFi2b9xU&amp;eurl=http%3A%2F%2Fwww.jeffreyclarke.net%2Fblog%2F2008%2F12%2Fhow-does-michel-gondry-do-it%2F&amp;feature=player_embedded" target="_blank">Dead Leaves and the Dirty Ground</a>&#8216; is that the spectacle itself is theatrical in nature.  It&#8217;s not something that could only be done on video and edited together in post.  It&#8217;s something you could experience live &#8212; but which you happen to be watching on film.</p>
<p>This ad takes the theatrical paradigm a step further &#8212; it&#8217;s a very post-modern interaction with video, complete with Noh theater style invisible stage hands (<a href="http://en.wikipedia.org/wiki/Noh" target="_blank">Kohken)</a> moving the projection surfaces on and off the stage.</p>
<p>This is the kind of work I want to do in terms of using projections and video in theater.  It seems like a pretty limitless frontier.</p>
<p>Now I just need a little bit of money&#8230; and I should be all set. :)</p>
<p>Thanks <a href="http://designnotes.info/?p=1709" target="_blank">DesignNotes</a> for pointing this one out.</p>
<p>UPDATE: I just changed out the video embed code.  For full effect, switch to HD and watch it in full screen.  It&#8217;ll blow your mind.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffreyclarke.net/blog/2009/03/this-is-what-you-can-do-with-video-projections/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Who Designed That?</title>
		<link>http://www.jeffreyclarke.net/blog/2009/02/who-designed-that/</link>
		<comments>http://www.jeffreyclarke.net/blog/2009/02/who-designed-that/#comments</comments>
		<pubDate>Tue, 17 Feb 2009 13:51:36 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA['Puters]]></category>
		<category><![CDATA[General Nerdiness]]></category>
		<category><![CDATA[Music]]></category>
		<category><![CDATA[Ramblings]]></category>
		<category><![CDATA[Ads]]></category>
		<category><![CDATA[Creative]]></category>
		<category><![CDATA[FFFFound]]></category>

		<guid isPermaLink="false">http://www.jeffreyclarke.net/blog/?p=767</guid>
		<description><![CDATA[Because it&#8217;s awesome!!! I&#8217;ve gotta admit &#8212; I&#8217;m such a sucker for things like this.  I just came across 24 Unforgettable Advertisements yesterday and loved it (well&#8230; not so much the PETA one &#8212; keep scrolling down to Woodland Shoes and the McDonalds bus stop).  I really love it when people take familiar objects and [...]]]></description>
			<content:encoded><![CDATA[<p>Because it&#8217;s awesome!!!</p>
<p><a href="http://ffffound.com/image/e0d6eef10edd4c1d1d49a0783f2c5c164c1c00d1" target="_blank"><img class="alignnone size-full wp-image-768" title="3263916059_8f1a7187d0" src="http://www.jeffreyclarke.net/blog/wp-content/uploads/2009/02/3263916059_8f1a7187d0.jpg" alt="3263916059_8f1a7187d0" width="420" /></a></p>
<p>I&#8217;ve gotta admit &#8212; I&#8217;m such a sucker for things like this.  I just came across <a href="http://www.bspcn.com/2008/06/29/24-unforgettable-advertisements/" target="_blank">24 Unforgettable Advertisements</a> yesterday and loved it (well&#8230; not so much the PETA one &#8212; keep scrolling down to Woodland Shoes and the McDonalds bus stop).  I really love it when people take familiar objects and make you look at them in a totally different way &#8212; even if it&#8217;s for the sake of an advertisement.</p>
<p>Thanks again, <a href="http://ffffound.com/image/e0d6eef10edd4c1d1d49a0783f2c5c164c1c00d1" target="_blank">FFFFound</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffreyclarke.net/blog/2009/02/who-designed-that/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Yo, Apple: Ease Up</title>
		<link>http://www.jeffreyclarke.net/blog/2008/09/yo-apple-ease-up/</link>
		<comments>http://www.jeffreyclarke.net/blog/2008/09/yo-apple-ease-up/#comments</comments>
		<pubDate>Tue, 23 Sep 2008 22:01:55 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA['Puters]]></category>
		<category><![CDATA[Rants and Raves]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.jeffreyclarke.net/blog/?p=475</guid>
		<description><![CDATA[Dear Apple, Regarding your recent behavior towards your iPhone Developer Network: please stop being such fascists. It&#8217;s one thing to hold your developers to high standards and reject apps that do not meet those standards (I&#8217;m looking at you, AIM).  It&#8217;s quite another to reject applications because they are like yours and (heaven forbid) possibly [...]]]></description>
			<content:encoded><![CDATA[<p>Dear Apple,</p>
<p>Regarding your recent behavior towards your iPhone Developer Network: please stop being such fascists.</p>
<p>It&#8217;s one thing to hold your developers to high standards and reject apps that do not meet those standards (I&#8217;m looking at you, AIM).  It&#8217;s quite another to reject applications because they are like yours and (heaven forbid) possibly even perform better than your own.</p>
<p>Be nice.</p>
<p>Sit back, relax, and remember just how much you rely on the developers of the open source community &#8212; how much of their code you&#8217;ve rolled into your own.</p>
<p>What&#8217;s wrong with a little competition?  What do you have to be scared of?  People should be challenging you to improve your own applications.  Let us, the users, make the choice.  If we want to have 3 mail applications, 12 versions of Sudoku and 85 different ways to upload our photos to Flickr, we can agree that&#8217;s stupid, but that should be our choice to make.  And really, we both know your apps are going to be better in the end anyway.  But let us figure that out for ourselves.</p>
<p>We&#8217;re smart.  We bought your iPhone in the first place, didn&#8217;t we?  Trust us to put what we want on it.</p>
<p>I don&#8217;t want to hear any more crap <a href="http://www.macnn.com/articles/08/09/23/apple.extends.iphone.nda/" target="_blank">like this from you</a>.  Really?  A statement of confidentiality to gag your developers, preventing them from venting that they just blew months of dev time on an application you rejected for no reason? Come on.  You&#8217;re better than this.  Or at least you used to be.</p>
<p>Shape up!</p>
<p>Until you do, I will scream from the hilltops that Jailbreak is the only way to iPhone.</p>
<p>Sincerely,</p>
<p>Jeff<br />
Lord Geek Supreme<br />
Geek Chic</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffreyclarke.net/blog/2008/09/yo-apple-ease-up/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Plot Thickens</title>
		<link>http://www.jeffreyclarke.net/blog/2008/09/the-plot-thickens/</link>
		<comments>http://www.jeffreyclarke.net/blog/2008/09/the-plot-thickens/#comments</comments>
		<pubDate>Mon, 22 Sep 2008 14:32:42 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA['Puters]]></category>
		<category><![CDATA[Nice one!]]></category>
		<category><![CDATA[Advertising]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://www.jeffreyclarke.net/blog/?p=454</guid>
		<description><![CDATA[Over the weekend, a lot of dirty laundry was aired about Microsoft&#8217;s anti-Apple campaign, including: The entire campaign was created on Macs, as evidenced by metadata scraped from some of the ad campaign&#8217;s photos. The ad agency behind the campaign, Crispin Porter + Bogusky, was profiled a few months ago on Apple&#8217;s Pro site as [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_464" class="wp-caption alignnone" style="width: 415px"><a href="http://www.jeffreyclarke.net/blog/wp-content/uploads/2008/09/2001-vista.jpg" class="lightview" rel="gallery[454]" title="2001-vista"><img class="size-full wp-image-464" title="2001-vista" src="http://www.jeffreyclarke.net/blog/wp-content/uploads/2008/09/2001-vista.jpg" alt="what are you doing, steve?" width="405" height="404" /></a><p class="wp-caption-text">what are you doing, Steve?</p></div>
<p>Over the weekend, a lot of dirty laundry was aired about Microsoft&#8217;s anti-Apple campaign, including:</p>
<ol>
<li><a href="http://www.roughlydrafted.com/2008/09/19/microsofts-im-a-pc-ads-created-on-macs/" target="_blank">The entire campaign was created on Macs</a>, as evidenced by metadata scraped from some of the ad campaign&#8217;s photos.</li>
<li>The ad agency behind the campaign, Crispin Porter + Bogusky, was profiled a few months ago on Apple&#8217;s Pro site as being <a href="http://www.roughlydrafted.com/2008/09/19/microsofts-im-a-pc-ads-created-on-macs/" target="_blank">fanatical Apple users</a>.</li>
<li>Microsoft&#8217;s Mojave experiment &#8212; designed to convince users to take another look at Vista &#8212; <a href="http://www.roughlydrafted.com/2008/08/15/microsofts-mojave-experiment-exposes-serious-vista-problems/" target="_blank">apparently fudged a lot of its numbers</a>.</li>
<li>The Times quote that Microsoft uses on all of their campaigns, &#8216;Windows Vista is beautiful,&#8217; was apparently taken out of the context of <a href="http://www.nytimes.com/2006/12/14/technology/14pogue.html?_r=1&amp;oref=slogin" target="_blank">a highly critical David Pogue article</a>, in which he talks about how clunky the OS is and how most of the interface was ripped off from Apple.</li>
<li>RoughlyDrafted wrote a <a href="http://www.roughlydrafted.com/2008/09/08/paul-thurrott-calls-apple-%E2%80%9Cthe-bad-guys%E2%80%9D-of-microsofts-300-million-ads/" target="_blank">concise, chilling </a>rebuttal to Paul Thurrott calling Apple &#8216;the Bad Guys&#8217; and &#8216;liars&#8217; for exposing Vista&#8217;s flaws (which brings up a very good point &#8212; could Microsoft possibly make the argument that MacOS has huge flaws?  I&#8217;d like to see that one.)</li>
</ol>
<p>All of this adds up to what looks like a huge embarrassment for Microsoft.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffreyclarke.net/blog/2008/09/the-plot-thickens/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microstft 0, Apple 2</title>
		<link>http://www.jeffreyclarke.net/blog/2008/09/microstft-misses-the-mark-again/</link>
		<comments>http://www.jeffreyclarke.net/blog/2008/09/microstft-misses-the-mark-again/#comments</comments>
		<pubDate>Fri, 19 Sep 2008 22:11:49 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA['Puters]]></category>
		<category><![CDATA[Flicks]]></category>
		<category><![CDATA[Rants and Raves]]></category>
		<category><![CDATA[Advertising]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Get a Mac]]></category>
		<category><![CDATA[Microsft]]></category>

		<guid isPermaLink="false">http://www.jeffreyclarke.net/blog/?p=443</guid>
		<description><![CDATA[Round 2 of Microsoft&#8217;s &#8220;We&#8217;re not as lame as you think we are&#8221; campaign aired last night during The Office.  Check it: Ok.  It&#8217;s better than the Seinfeld ads.  I&#8217;ll give it that.  But that&#8217;s not that much. My beef with it is this: these people are not cool (that&#8217;s the point, right?).  They&#8217;re fine.  [...]]]></description>
			<content:encoded><![CDATA[<p>Round 2 of Microsoft&#8217;s &#8220;We&#8217;re not as lame as you think we are&#8221; campaign aired last night during The Office.  Check it:</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="src" value="http://www.youtube.com/v/D3fuphN0yFE&amp;hl=en&amp;fs=1" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/D3fuphN0yFE&amp;hl=en&amp;fs=1" allowfullscreen="true"></embed></object></p>
<p>Ok.  It&#8217;s better than the Seinfeld ads.  I&#8217;ll give it that.  But that&#8217;s not that much.</p>
<p><span id="more-443"></span></p>
<p>My beef with it is this: these people are not cool (that&#8217;s the point, right?).  They&#8217;re fine.  They seem perfectly nice.  But the thing the Mac vs PC commercials got right was the attitude of the Mac.  He just seems like a great, smart guy who you&#8217;d want to have a drink with.  You want to hang out with that guy.  You want to be that guy.  So in the traditional advertising sense, they&#8217;re selling you an image: buy a Mac and you can be cool.</p>
<p>So fine.  Not all ads have to play into that old-school ad logic.  What does this ad have to say for itself?</p>
<p>What this ad tells me is that many dull people who lead semi-adventurous lives are already using Windows.  I knew that.  They all seem like people who are not particularly savy or tasteful &#8212; and wouldn&#8217;t necessarily know the difference between a Mac and a PC.  Or, like, they get grant money from Microsoft so they <em>have</em> to buy PCs.</p>
<p>With this crowd it doesn&#8217;t seem like an issue of taste or any sort of discerning opinion. As a savy (albeit ferociously pro-Mac) technology consumer, I don&#8217;t get the idea from the commercial that this product will help me lead a more productive, fun life.  It just proves that too many other people of all walks of life use PCs.</p>
<p>As far as I know, Microsoft is losing market share to Apple primarily in the 18-25 range. That age range cares more about looks, ease of use, and general coolness quotient far more than the fact that a large number of older people do their perfectly interesting jobs just fine in spite of the fact that they own PCs.</p>
<p>So what&#8217;s the point?  To make people who already have PCs feel like they&#8217;re in good company? Maybe.  I guess that&#8217;s valuable.  But then this whole campaign is more of Microsft trying to plug the dam of the outflow of users &#8212; rather than a counter-attack.</p>
<p>Safety.  Make people feel safe and secure in the boring products they already own.</p>
<p>I guess it&#8217;s just what you&#8217;d expect from Microsoft.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffreyclarke.net/blog/2008/09/microstft-misses-the-mark-again/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>iPhone Dev Team</title>
		<link>http://www.jeffreyclarke.net/blog/2008/09/iphone-dev-team/</link>
		<comments>http://www.jeffreyclarke.net/blog/2008/09/iphone-dev-team/#comments</comments>
		<pubDate>Mon, 15 Sep 2008 17:07:31 +0000</pubDate>
		<dc:creator>Jeff</dc:creator>
				<category><![CDATA['Puters]]></category>
		<category><![CDATA[General Nerdiness]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iPhone Dev Team]]></category>
		<category><![CDATA[Jailbreak]]></category>

		<guid isPermaLink="false">http://www.jeffreyclarke.net/blog/?p=369</guid>
		<description><![CDATA[I just want to take a sec to give a shout out to the iPhone Dev Team &#8212; our friends who have come up with the most reliable way to jailbreak your iPhone.  They&#8217;re so fast, and so very good. Case in point: Apple released the new iPhone 2.1 Firmware last Friday.  By Saturday morning, [...]]]></description>
			<content:encoded><![CDATA[<p>I just want to take a sec to give a shout out to the <a href="http://blog.iphone-dev.org/" target="_blank">iPhone Dev Team</a> &#8212; our friends who have come up with the most reliable way to jailbreak your iPhone.  They&#8217;re so fast, and so very good.</p>
<p>Case in point: Apple released the new iPhone 2.1 Firmware last Friday.  By Saturday morning, the Dev Team had cracked it.</p>
<p><a href="http://blog.iphone-dev.org/" target="_blank"><img class="alignnone size-full wp-image-370" title="the iPhone Dev Team" src="http://www.jeffreyclarke.net/blog/wp-content/uploads/2008/09/p_icon_resize-1.png" alt="" width="320" height="321" /></a></p>
<p>If you&#8217;ve got an iPhone and you&#8217;re looking to do some Jailbreaking, accept no substitutes. These guys are the real deal.  I&#8217;m seriously looking forward to the point when these guys have a solution for actually <em>unlock</em> the phone for use on any network.</p>
<p>Or the day when Apple makes Jailbreaking (and even unlocking) irrelevant.  Their current pattern of <a href="http://bits.blogs.nytimes.com/2008/09/16/apples-capricious-app-policy/" target="_blank">rejecting applications for the App Store without having any sort of clear acceptance standard</a> (AFTER developers have paid $100 for the privilege of being able to submit to Apple in the first place and invested countless hours of unpaid development time) is pretty tyrannical, imho.</p>
<p>I would fully support anyone who wants to Jailbreak their phone  &#8212; if it didn&#8217;t violate my service agreement, of course.  There are a lot of useful applications out there that, for some reason or another, Apple does not want you to use (<a href="http://www.iphonemodem.com/" target="_blank">iPhone Modem</a>, <a href="http://www.appleiphoneschool.com/2008/05/16/nemussync-053-google-calendar-iphone-sync-wirelessly/" target="_blank">NemusSync</a>, <a href="http://www.snapturelabs.com/" target="_blank">Snapture</a>, <a href="http://www.iphonevideorecorder.com/index.html" target="_blank">VideoRecorder</a>, <a href="http://www.appleiphoneschool.com/2008/04/17/bossprefs-164/" target="_blank">BigBoss Prefs</a>, <a href="http://theiphoneupdate.wordpress.com/2008/09/02/searcher-app/" target="_blank">Searcher</a>, <a href="http://www.iphone-hacks.com/2008/08/02/winterboard-released/" target="_blank">WinterBoard</a>, <a href="http://code.google.com/p/customize/">Customize</a>, not to mention <a href="http://code.google.com/p/mobileterminal/" target="_blank">Terminal</a> and <a href="http://www.appleiphoneschool.com/openssh/" target="_blank">OpenSSH</a> for the hardcore nerds.  And that barely scratches the surface).</p>
<p>It&#8217;s my feeling that &#8211;  I paid through the nose for this particular piece of hardware.  Like any hardware that <strong>I own</strong>, I should be able to control how I use it.  Apple doesn&#8217;t dictate to me what color my MBP&#8217;s desktop is.  Why shouldn&#8217;t I be able to customize what my iPhone Springboard looks like?  The camera on the iPhone <strong>can record video</strong>.  Why shouldn&#8217;t I be able to use an application that takes advantage of that?</p>
<p>For more about how to Jailbreak your iPhone using the PwangeTool or QuickPwn, check out the <a href="http://www.appleiphoneschool.com/jailbreak/" target="_blank">Apple iPhone School</a>.  Or just jump right in with QuickPwn.  It does all of the heavy lifting for you.</p>
<p>As I said, I cannot condone this sort of behavior.  And I&#8217;ve <em>never</em> even <em>considered </em>Jailbreaking my iPhone.  I mean, that would violate my service contract, now wouldn&#8217;t it? And I wouldn&#8217;t want to piss off AT&amp;T&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffreyclarke.net/blog/2008/09/iphone-dev-team/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.347 seconds -->

