<?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>Stereo Interactive &#38; Design &#187; Uncategorized</title>
	<atom:link href="http://stereointeractive.com/blog/tags/uncategorized/feed/" rel="self" type="application/rss+xml" />
	<link>http://stereointeractive.com/blog</link>
	<description>Development Blog</description>
	<lastBuildDate>Wed, 07 Jul 2010 19:16:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>MySQL Emergency</title>
		<link>http://stereointeractive.com/blog/2010/05/09/mysql-emergency/</link>
		<comments>http://stereointeractive.com/blog/2010/05/09/mysql-emergency/#comments</comments>
		<pubDate>Sun, 09 May 2010 17:40:57 +0000</pubDate>
		<dc:creator>Scott Meves</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://stereointeractive.com/blog/?p=521</guid>
		<description><![CDATA[My friends Lawrence Krubner and Darren Hoyt just launched MySql Emergency. It&#8217;s a site where you can post urgent MySql questions and post a small bounty ($4 or more) for a good solution to your problem. 
MySql Emergency is problem-solving community for MySql, ideal for users seeking quick, succinct answers they can&#8217;t find in any [...]]]></description>
			<content:encoded><![CDATA[<p>My friends Lawrence Krubner and Darren Hoyt just launched<a href="http://mysqlemergency.com"> MySql Emergency</a>. It&#8217;s a site where you can post urgent MySql questions and post a small bounty ($4 or more) for a good solution to your problem. </p>
<blockquote><p>MySql Emergency is problem-solving community for MySql, ideal for users seeking quick, succinct answers they can&#8217;t find in any MySql forums. MySql Emergency is also great for established MySql developers who want to help problem-solve and be paid fairly for their efforts.</p></blockquote>
<p>Sometimes Google just doesn&#8217;t cut it. Sometimes you want quick, succinct advice specific to your problem. MySql Emergency lets you lean on the knowledge of the masses and still get personalized advice.</p>
<p>If you think you know a thing or two about MySql and might want to make some quick cash on the side, or if you have a question for the community, you can register for free. I&#8217;ve earned more than a round of beers by spending just a few minutes sharing tips to fellow developers in need. </p>
<p>If you <a href="http://www.mysqlemergency.com/affiliates/register/name/stereoscott">register using this affiliate link</a> I might be able to get them to buy me another round <img src='http://stereointeractive.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://stereointeractive.com/blog/2010/05/09/mysql-emergency/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Moving wordpress site to another server</title>
		<link>http://stereointeractive.com/blog/2010/04/19/moving-wordpress-site-to-another-server/</link>
		<comments>http://stereointeractive.com/blog/2010/04/19/moving-wordpress-site-to-another-server/#comments</comments>
		<pubDate>Tue, 20 Apr 2010 02:35:34 +0000</pubDate>
		<dc:creator>Scott Meves</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://stereointeractive.com/blog/?p=511</guid>
		<description><![CDATA[There was a question posted on WP Questions about moving a wordpress from a local development server to the live server. Here is what I do for just about all of my WP sites. It works for me since while I&#8217;m building out a site I usually make local changes that I have to sync [...]]]></description>
			<content:encoded><![CDATA[<p>There was <a href="http://www.wpquestions.com/question/show/id/328">a question posted on WP Questions</a> about moving a wordpress from a local development server to the live server. Here is what I do for just about all of my WP sites. It works for me since while I&#8217;m building out a site I usually make local changes that I have to sync up to a staging site for people to review.</p>
<p>1. Edit your wp-config.php so it works on various environments. I do this like so:<br />
<span id="more-511"></span></p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span class="co1">// ** MySQL settings - You can get this info from your web host ** //</span>
<span class="kw1">switch</span> <span class="br0">&#40;</span><span class="re0">$_SERVER</span><span class="br0">&#91;</span><span class="st_h">'SERVER_NAME'</span><span class="br0">&#93;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
  <span class="kw1">case</span> <span class="st_h">'mysite.local'</span><span class="sy0">:</span> <span class="co1">// local dev environment</span>
    <span class="co1">// ** MySQL settings - You can get this info from your web host ** //</span>
    <span class="co4">/** The name of the database for WordPress */</span>
    <span class="kw3">define</span><span class="br0">&#40;</span><span class="st_h">'DB_NAME'</span><span class="sy0">,</span> <span class="st_h">'mylocal_db'</span><span class="br0">&#41;</span><span class="sy0">;</span>
    <span class="co4">/** MySQL database username */</span>
    <span class="kw3">define</span><span class="br0">&#40;</span><span class="st_h">'DB_USER'</span><span class="sy0">,</span> <span class="st_h">'root'</span><span class="br0">&#41;</span><span class="sy0">;</span>
    <span class="co4">/** MySQL database password */</span>
    <span class="kw3">define</span><span class="br0">&#40;</span><span class="st_h">'DB_PASSWORD'</span><span class="sy0">,</span> <span class="st_h">''</span><span class="br0">&#41;</span><span class="sy0">;</span>
    <span class="co4">/** MySQL hostname */</span>
    <span class="kw3">define</span><span class="br0">&#40;</span><span class="st_h">'DB_HOST'</span><span class="sy0">,</span> <span class="st_h">'localhost'</span><span class="br0">&#41;</span><span class="sy0">;</span>
    <span class="kw1">break</span><span class="sy0">;</span>
  <span class="kw1">default</span><span class="sy0">:</span>
    <span class="co4">/** The name of the database for WordPress */</span>
    <span class="kw3">define</span><span class="br0">&#40;</span><span class="st_h">'DB_NAME'</span><span class="sy0">,</span> <span class="st_h">'yourlive_db'</span><span class="br0">&#41;</span><span class="sy0">;</span>
    <span class="co4">/** MySQL database username */</span>
    <span class="kw3">define</span><span class="br0">&#40;</span><span class="st_h">'DB_USER'</span><span class="sy0">,</span> <span class="st_h">'yourlive_dbuser'</span><span class="br0">&#41;</span><span class="sy0">;</span>
    <span class="co4">/** MySQL database password */</span>
    <span class="kw3">define</span><span class="br0">&#40;</span><span class="st_h">'DB_PASSWORD'</span><span class="sy0">,</span> <span class="st_h">'yourlive_pw'</span><span class="br0">&#41;</span><span class="sy0">;</span>
    <span class="co4">/** MySQL hostname */</span>
    <span class="kw3">define</span><span class="br0">&#40;</span><span class="st_h">'DB_HOST'</span><span class="sy0">,</span> <span class="st_h">'localhost'</span><span class="br0">&#41;</span><span class="sy0">;</span>
    <span class="kw1">break</span><span class="sy0">;</span>
<span class="br0">&#125;</span></pre></div></div>

<p>That will let you use the same wp-config.php file on either server.</p>
<p>2. I dump my local database. I do this using a little shell script that will search the mysql dump for my local url and replace it with the live one. I put the following in a file called dbdump.sh:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span class="co0">#!/bin/bash</span>
&nbsp;
<span class="co0"># dump database</span>
mysqldump <span class="re5">-u</span> root mylocal_db <span class="sy0">&gt;</span> mylocal_db_dump.sql
&nbsp;
<span class="co0"># search inside the mylocal_db_dump.sql file for 'mysite.local' and replace with 'thelivesite.com'</span>
<span class="kw2">perl</span> <span class="re5">-pi</span> <span class="re5">-e</span> <span class="st_h">'s/mysite.local/thelivesite.com/g'</span> mylocal_db_dump.sql</pre></div></div>

<p>Then I can run this script with the command &#8220;./dbdump.sh&#8221; anytime I want to export my local database to an sql file to import on the live site.</p>
<p>3. I use rsync to sync my local version of the site up to the server. Alternatively, you could use FTP to upload the entire local site, but it&#8217;s harder to keep things in sync this way. If you want to use SSH, I put the following into a file named something like &#8220;upload.sh&#8221; and put it in my blog folder.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span class="co0">#!/bin/bash</span>
<span class="re2">GO</span>=$<span class="nu0">1</span>
: <span class="co1">${GO:=&quot;&quot;}</span>
&nbsp;
<span class="kw1">if</span> <span class="br0">&#91;</span> <span class="st0">&quot;<span class="es2">$GO</span>&quot;</span> = <span class="st0">&quot;go&quot;</span> <span class="br0">&#93;</span>
<span class="kw1">then</span>
  <span class="re2">ARGS</span>=<span class="st0">&quot;-avc&quot;</span>
<span class="kw1">else</span>
  <span class="re2">ARGS</span>=<span class="st0">&quot;-avcn&quot;</span>
<span class="kw1">fi</span>
&nbsp;
rsync <span class="re1">$ARGS</span> <span class="re5">--stats</span> <span class="re5">--progress</span> <span class="re5">--exclude-from</span>=rsync_exclude.txt <span class="re5">-e</span> <span class="st_h">'ssh'</span> . username<span class="sy0">@</span>yourserver.com:<span class="sy0">/</span>home<span class="sy0">/</span>path<span class="sy0">/</span>to<span class="sy0">/</span>your<span class="sy0">/</span>public_html</pre></div></div>

<p>Basically what this does is execute the &#8220;rsync&#8221; command with a few arguments. It will look at the files in the current directory on your machine and compare them with the files on the server. If you execute this script with a &#8220;go&#8221; parameter, it will actually perform the copy; otherwise it does a dry-run to show you what changes would occur. I put a list of a few files to ignore while syncing in &#8220;rsync_exclude.txt&#8221;. I ignore any hidden files like .DS_Store, my custom upload shell script which we just created, and temporary files and uploads. </p>
<p>Here is what mine usually contains:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">.DS_Store
.htaccess
upload.sh
dbdump.sh
rsync_exclude.txt
<span class="sy0">/</span>wp-content<span class="sy0">/</span>cache<span class="sy0">/*</span>
<span class="sy0">/</span>wp-content<span class="sy0">/</span>uploads<span class="sy0">/*</span></pre></div></div>

<p>You can then run the upload.sh script by executing the command like this:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">.<span class="sy0">/</span>upload.sh</pre></div></div>

<p>And if it looks ok, you actually perform the sync with:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">.<span class="sy0">/</span>upload.sh go</pre></div></div>

<p>4. Now we have all our files synced up&#8230; we just need to update the database. You can either either use something like phpMyAdmin to upload your &#8220;mylocal_db_dump.sql&#8221; file, or if you have SSH access you can execute it using your live mysql user:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">mysql <span class="re5">-u</span> yourlive_dbuser <span class="re5">-p</span> mylocal_db_dump.sql <span class="sy0">&gt;</span> yourlive_db</pre></div></div>

<p>This may seem like a lot of steps, but if you are rapidly developing your site and need to re-upload to a staging server frequently, this ends up saving a ton of time. Once you have the files in place, updating the live site is a simple matter of running these commands:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">.<span class="sy0">/</span>dbdump.sh
.<span class="sy0">/</span>upload.sh</pre></div></div>

<p>and then insert your SQL file into your live database, either through the command line or phpMyAdmin. </p>
<p>Now that I have these files I just copy them into any wordpress site I&#8217;m working on and I&#8217;m ready to upload as often as I want and it only takes a few seconds. I hope you find some use out of them, too.</p>
<p>If you want to download a bundle of the sample files I mention above, you can <a href='http://stereointeractive.com/blog/wp-content/uploads/2010/04/wordpressDeploy.zip'>download a zip archive of them here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://stereointeractive.com/blog/2010/04/19/moving-wordpress-site-to-another-server/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>twitter contest rules</title>
		<link>http://stereointeractive.com/blog/2010/03/30/twitter-contest-rules/</link>
		<comments>http://stereointeractive.com/blog/2010/03/30/twitter-contest-rules/#comments</comments>
		<pubDate>Tue, 30 Mar 2010 23:31:52 +0000</pubDate>
		<dc:creator>Scott Meves</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://stereointeractive.com/blog/?p=490</guid>
		<description><![CDATA[I&#8217;ve wondered what the rules and regulars are surrounding holding a contest in which prizes are given away based on &#8220;tweeted&#8221; entries. Many years ago a business of mine sponsored a large-scale sweepstakes, and besides the &#8220;no purchase necessary&#8221; clause, we had to accept  hand entries via mail. Here is a snippet of some [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve wondered what the rules and regulars are surrounding holding a contest in which prizes are given away based on &#8220;tweeted&#8221; entries. Many years ago a business of mine sponsored a large-scale sweepstakes, and besides the &#8220;no purchase necessary&#8221; clause, we had to accept  hand entries via mail. Here is a snippet of some official rules to one such twitter contest. If you or your clients plan on using a scheme like this for marketing purposes, it may come in handy. Obviously I am not a lawyer (&#8220;IANAL&#8221;) so if you plan on running a similar contest make sure you cover your bases!<br />
<span id="more-490"></span></p>
<blockquote>
<p>The sponsor of this promotion is XXX (“Sponsor”).</p>
<p>The promotion will begin at [date] and end at [date].</p>
<p>The prizes are [prize description] with a retail value of [price] (“Prizes”). The Prizes will be shipped to the winners within 3 &#8211; 6 weeks of the promotion closing date. The winner is responsible for any taxes associated with receipt of the Prizes. Sponsor reserves the right to substitute the Prizes with other prizes of equal or greater value if the Prizes are not available for any reason.</p>
<p>To enter the promotion, the entrant must follow Sponsor’s Twitter account located at the URL [url] from their own Twitter account. The entrant must then issue the status update from their Twitter account shown on the promotion page located at the URL[url]. Each entry will apply to the daily drawing held on the day (24-hour period starting at 12am EDT) that the Twitter status update is posted. Only one entry per day is allowed. The entrant’s Twitter updates must not be protected during the promotion period. Entrants may sign-up for their own Twitter account at https://twitter.com/signup.</p>
<p>One winner will be selected randomly from all the valid entries each day of the promotion. Sponsor will notify the winner via a Twitter direct message from the Sponsor’s Twitter account. If the winner does not respond within three (3) days, he or she will forfeit the Prizes and another winner will be randomly chosen. Each entrant can win a maximum of one (1) prize.</p>
<p>No purchase is necessary to enter or win. Void where prohibited or restricted by law. Employees of Sponsor and family members of such employees are not eligible to enter.</p>
<p>By participating in this promotion, entrants agree to release and hold harmless Sponsor from any claim or cause of action arising out of participation in the promotion.</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://stereointeractive.com/blog/2010/03/30/twitter-contest-rules/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Process for Submitting your iPad App to the App Store</title>
		<link>http://stereointeractive.com/blog/2010/03/26/process-for-submitting-your-ipad-app-to-the-app-store/</link>
		<comments>http://stereointeractive.com/blog/2010/03/26/process-for-submitting-your-ipad-app-to-the-app-store/#comments</comments>
		<pubDate>Fri, 26 Mar 2010 17:11:56 +0000</pubDate>
		<dc:creator>Scott Meves</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[appstore]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>

		<guid isPermaLink="false">http://stereointeractive.com/blog/?p=486</guid>
		<description><![CDATA[	]]></description>
			<content:encoded><![CDATA[<p>March 27th is the deadline to submit your new iPad application if you want it to be in the app store the for iPad launch date, April 3rd. </p>
<p>I took some notes during <a href="http://www.tuaw.com/2010/03/26/dev-clinic-submitting-apps-for-ipad-saturday/">TUAW&#8217;s Dev Clinic discussion</a> on the process to compile your app and upload it to iTunes:<span id="more-486"></span></p>
<ul>
<li><strong>Application Target</strong>
<ul>
<li>Make sure you are using the &#8220;release&#8221; configuration, and not &#8220;debug&#8221;</li>
<li>Base SDK: iPhone Device 3.2 (or 3.1.2 or 3.1.3 for Universal)</li>
<li>Architecture: armv7 (you&#8217;ll have to select &#8220;other&#8221; and type this in)</li>
<li>&#8230; for a universal app select &#8220;armv6 armv7&#8243;</li>
<li>Code signing identity: Distribution</li>
<li>Targeted device family: iPad (unless you are doing Universal)</li>
<li>Deployment target: &#8220;iPhone OS 3.2&#8243; for iPad-only, &#8220;iPhone OS 3.1.x for Universal&#8221;</li>
<li>Icons: use a 72&#215;72 icon (not 48px as some have said), you may or may not want to include a 57&#215;57 icon</li>
</ul>
</li>
<li><strong>Signing and Uploading</strong>
<ul>
<li>Set your configuration to &#8220;Release&#8221; in the Target Info window and in the Project window</li>
<li>Compile for the device, not the simulator</li>
<li>trash your previous builds (the entire build folder, even!)</li>
<li>double-check your code-signing identity, update your distro provision if necessary</li>
<li>after you compile, locate the binary using Products &lt; [app] &lt; Locate in Finder</li>
<li>zip up the app and submit it to apple</li>
</ul>
</li>
</ul>
<p>Other helpful resources:</p>
<ul>
<li>Re-signing applications http://www.tuaw.com/2010/02/09/sdk-devsugar-re-signing-applications/</li>
<li>If you want to triple-check everything, you can use this hint to try out your distribution build on your device: http://furbo.org/2008/11/12/the-final-test/</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://stereointeractive.com/blog/2010/03/26/process-for-submitting-your-ipad-app-to-the-app-store/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AirPort Extreme vs AirPort Express</title>
		<link>http://stereointeractive.com/blog/2010/03/23/airport-extreme-vs-airport-express/</link>
		<comments>http://stereointeractive.com/blog/2010/03/23/airport-extreme-vs-airport-express/#comments</comments>
		<pubDate>Tue, 23 Mar 2010 20:20:00 +0000</pubDate>
		<dc:creator>Scott Meves</dc:creator>
				<category><![CDATA[OS X]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[wireless]]></category>

		<guid isPermaLink="false">http://stereointeractive.com/blog/?p=471</guid>
		<description><![CDATA[I recently updated our home network from an AirPort Express (802.11g) to an AirPort Extreme (late 2009, dual-band). The AirPort Express works great; it&#8217;s small, easy to set up, and we only have a few devices on our network and use it to stream music just about all day long. The only time we encounter [...]]]></description>
			<content:encoded><![CDATA[<p>I recently updated our home network from an AirPort Express (802.11g) to an AirPort Extreme (late 2009, dual-band). The AirPort Express works great; it&#8217;s small, easy to set up, and we only have a few devices on our network and use it to stream music just about all day long. The only time we encounter some trouble is when we use the microwave, which causes our internet to cut out about half the time. Additionally, there are a lot of networks in the area on the same frequencies, so I imagine there is some interference caused by these 15 &#8211; 20 other networks using the same channels.<span id="more-471"></span></p>
<p>At some point I realized that the AirPort Express wasn&#8217;t able to keep up with the full speed of our internet connection. Here is a speed test using a direct connection to our cable modem:</p>
<p><img src="http://stereointeractive.com/blog/wp-content/uploads/2010/03/speedtest_direct.png" alt="" title="Speedtest - Direct Connection" width="300" height="135" class="alignright size-full wp-image-472" /></p>
<p>Connected to our wireless network (802.11g, with 2 &#8211; 3 devices connected at a time):<br />
<a href="http://stereointeractive.com/blog/wp-content/uploads/2010/03/speedtest_express.png"><img src="http://stereointeractive.com/blog/wp-content/uploads/2010/03/speedtest_express.png" alt="" title="Speedtest - AirPort Express" width="300" height="135" class="alignright size-full wp-image-474" /></a></p>
<p>So, we were losing a little bit of speed there. (I think the upload speeds were just a fluke in my not-so-scientific benchmarks&#8230; all subsequent tests showed more consistent upload speeds.) This may or may not matter to you depending on how you use your connection. As a web developer I&#8217;m downloading large files all the time, and I also like to try and gauge the comparable speed of our web servers against other websites out there, so having a fast connection is important. </p>
<p>If we upgraded to 802.11n, we needed an access point that was &#8220;dual-band,&#8221; since an iPhone and one of our computers only supports 802.11g. Without dual-band support, the entire network would slow down to support the lowest common denominator.</p>
<p>Setting up the Airport Extreme was easy. It even copied the settings right off our old Airport Express (same network name, security settings and passwords). After it was connected, I reconnected the Airport Express to use just to stream music to our stereo.</p>
<p>Here are the new speedtest results using the Airport Extreme:<br />
<img src="http://stereointeractive.com/blog/wp-content/uploads/2010/03/speedtest_extreme.png" alt="" title="Speedtest - Airport Extreme" width="300" height="135" class="alignright size-full wp-image-475" /></p>
<p>As you can see, this is pretty close to connecting to our cable modem directly through an ethernet connection. The 802.11n band, at the moment, is much less congested and it&#8217;s a lot more resistant to outside interference (no more internet time-outs when microwaving!). Our older devices can still connect at their speeds without limiting the performance of the whole network. </p>
<p>Overall I think it was a worthwhile upgrade. If you are thinking maybe your wireless network isn&#8217;t so hot, try testing your connection to see if your router is to blame. If your computer supports it, upgrading your network 802.11n can definitely speed things up, and if you have older devices (or iPhones) using the same network, make sure you go with something that has dual-band support.</p>
<p><strong>Update:</strong> Here was my result when I connected to the AirPort Extreme via ethernet. Obviously one test in each setup isn&#8217;t enough to get highly accurate results, but it was good enough for me. In this case, connecting through the APE with an ethernet connection added no latency to my internet connection, and was only slightly faster than connecting wirelessly.</p>
<p><a href="http://stereointeractive.com/blog/wp-content/uploads/2010/03/speedtest_extreme_ethernet.png"><img src="http://stereointeractive.com/blog/wp-content/uploads/2010/03/speedtest_extreme_ethernet.png" alt="" title="Speedtest - AirPort Extreme via Ethernet" width="300" height="135" class="alignright size-full wp-image-481" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://stereointeractive.com/blog/2010/03/23/airport-extreme-vs-airport-express/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>symfony sync command configuration (with symfony 1.0)</title>
		<link>http://stereointeractive.com/blog/2010/03/22/symfony-sync-command-configuration-with-symfony-1-0/</link>
		<comments>http://stereointeractive.com/blog/2010/03/22/symfony-sync-command-configuration-with-symfony-1-0/#comments</comments>
		<pubDate>Mon, 22 Mar 2010 10:18:57 +0000</pubDate>
		<dc:creator>Scott Meves</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Symfony]]></category>

		<guid isPermaLink="false">http://stereointeractive.com/blog/?p=467</guid>
		<description><![CDATA[I recently discovered a quick way to edit the rsync parameters used when executing the symfony sync command with symfony 1.0. 
I wanted to ignore timestamp and permissions differences, which wasn&#8217;t possible using the default configuration due to the -a (which stands for &#8216;archive&#8217; mode) parameter added to the rsync command. If you want to [...]]]></description>
			<content:encoded><![CDATA[<p>I recently discovered a quick way to edit the rsync parameters used when executing the <code>symfony sync</code> command with symfony 1.0. <span id="more-467"></span></p>
<p>I wanted to ignore timestamp and permissions differences, which wasn&#8217;t possible using the default configuration due to the -a (which stands for &#8216;archive&#8217; mode) parameter added to the rsync command. If you want to override the default settings, all you have to do is add a &#8216;parameters&#8217; key to your properties.ini file. Here is an example:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">  <span class="br0">&#91;</span>staging<span class="br0">&#93;</span>
    host<span class="sy0">=</span>yourhostname
    port<span class="sy0">=</span><span class="nu0">22</span>
    user<span class="sy0">=</span>yourusername
    <span class="kw3">dir</span><span class="sy0">=</span>your<span class="sy0">/</span>path<span class="sy0">/</span>to<span class="sy0">/</span>your<span class="sy0">/</span>app
    parameters<span class="sy0">=</span><span class="st_h">'-rlDzC --force --delete --exclude-from=config/rsync_exclude.txt'</span></pre></div></div>

<p>Keep in mind if you set your own custom parameters you won&#8217;t benefit from any of the default settings so you should include them yourself (like &#8211;force, &#8211;delete, and your rsycn_exclude file).</p>
]]></content:encoded>
			<wfw:commentRss>http://stereointeractive.com/blog/2010/03/22/symfony-sync-command-configuration-with-symfony-1-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Secret Behind &#8220;SEO&#8221;</title>
		<link>http://stereointeractive.com/blog/2009/10/17/the-secret-behind-seo/</link>
		<comments>http://stereointeractive.com/blog/2009/10/17/the-secret-behind-seo/#comments</comments>
		<pubDate>Sun, 18 Oct 2009 00:24:52 +0000</pubDate>
		<dc:creator>Scott Meves</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[seo]]></category>

		<guid isPermaLink="false">http://stereointeractive.com/blog/?p=369</guid>
		<description><![CDATA[What is the secret to SEO?
&#8220;Make something great. Tell people about it. Do it again.&#8221;

from Spammers, Evildoers, and Opportunists by Derek Powazek:
The problem with SEO is that the good advice is obvious, the rest doesn’t work, and it’s poisoning the web. I’m going to tell you about the problems, and then tell you the one [...]]]></description>
			<content:encoded><![CDATA[<p>What is the secret to SEO?</p>
<blockquote><p><strong>&#8220;Make something great. Tell people about it. Do it again.&#8221;</strong>
</p></blockquote>
<p>from <em><a href="http://powazek.com/posts/2090">Spammers, Evildoers, and Opportunists</a></em> by Derek Powazek:</p>
<blockquote><p>The problem with SEO is that the good advice is obvious, the rest doesn’t work, and it’s poisoning the web. I’m going to tell you about the problems, and then tell you the one true way to generate traffic on the web, based on my own 14 years of hits and misses.
</p></blockquote>
<p>This is a great post, which I discovered through <a href="http://daringfireball.net/linked/2009/10/13/powazek-seo">daringfireball</a>. It&#8217;s worth a read, either if you manage a website and have wondered about what &#8220;SEO&#8221; can (or in this case, can&#8217;t) do for you, or if you are a web developer and you get clients asking how they can improve their search visibility.</p>
]]></content:encoded>
			<wfw:commentRss>http://stereointeractive.com/blog/2009/10/17/the-secret-behind-seo/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>On iphone revenue share business models</title>
		<link>http://stereointeractive.com/blog/2009/08/01/on-iphone-revenue-share-business-models/</link>
		<comments>http://stereointeractive.com/blog/2009/08/01/on-iphone-revenue-share-business-models/#comments</comments>
		<pubDate>Sun, 02 Aug 2009 04:27:27 +0000</pubDate>
		<dc:creator>Scott Meves</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[iphone]]></category>

		<guid isPermaLink="false">http://stereointeractive.com/blog/?p=283</guid>
		<description><![CDATA[From the post:
Good app ideas are a dime a dozen. Your great idea isn’t guaranteed to make any money in the app store. Why should a developer develop your whole app for just a percentage of the money you are going to make? Just because you have a good idea? Most developers have good ideas [...]]]></description>
			<content:encoded><![CDATA[<p>From the post:</p>
<blockquote><p>Good app ideas are a dime a dozen. Your great idea isn’t guaranteed to make any money in the app store. Why should a developer develop your whole app for just a percentage of the money you are going to make? Just because you have a good idea? Most developers have good ideas too, and if they are going to risk not making anything for their hard work, they might as well balance that by doing their own work and making 100% of the profits.</p></blockquote>
<p><span id="more-283"></span></p>
<p><a href="http://www.bit-101.com/blog/?p=2263.">Read the post here.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://stereointeractive.com/blog/2009/08/01/on-iphone-revenue-share-business-models/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Springloops deployment with svn externals</title>
		<link>http://stereointeractive.com/blog/2009/07/31/springloops-deployment-with-svn-externals/</link>
		<comments>http://stereointeractive.com/blog/2009/07/31/springloops-deployment-with-svn-externals/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 17:28:34 +0000</pubDate>
		<dc:creator>Scott Meves</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[SVN]]></category>
		<category><![CDATA[Symfony]]></category>

		<guid isPermaLink="false">http://stereointeractive.com/blog/?p=279</guid>
		<description><![CDATA[We&#8217;ve been trying out springloops as a hosted svn solution for one of our smaller projects, and so far it does the job just fine. We are using it to host the subversion repository for a symfony project. We generally like to use svn:externals for the symfony library files themselves, this way it its easy [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve been trying out <a href="http://springloops.com">springloops</a> as a hosted svn solution for one of our smaller projects, and so far it does the job just fine. We are using it to host the subversion repository for a symfony project. We generally like to use svn:externals for the symfony library files themselves, this way it its easy to upgrade symfony, make sure every deployment has the necessary code base without having to worry about having PEAR installed on every server. <span id="more-279"></span></p>
<p>Springloops has a feature that will automatically copy your latest code to a server you specify, either automatically with every commit, or manually whenever you need it. Immediately I ran into a problem: <strong>Springloops will not fetch any code in an external repository and copy it to your server. </strong> This means that when we tried to auto-deploy our little app, all of the symfony files were missing!</p>
<p>Here is what their support (which was speedy, I might add, even for a free account like ours) says:</p>
<blockquote><p>Unfortunately deploying externals is not supported at the moment. The reason is it slows down the entire process because our engine would have to download changelog and file contents from remote servers. We are working on a solution to speed it up, but for now you will have to upload it manually just like you said. You might consider using svn export rather than checkout to avoid placing &#8220;.svn&#8221; control directories on your server.</p></blockquote>
<p>Good to know. So, given that information, here is a list of possible ways to easily deploy changes to your project:</p>
<ul>
<li>Use rsync. With symfony this is easy with the &#8220;project-deploy&#8221; command line tool. This is my preferred method because it&#8217;s just so darn easy, and lets me get away upload changes that aren&#8217;t yet committed to svn (gasp).</li>
<li>Checkout a version of your project from SVN on your server. When it comes time to upgrade, do an &#8220;<a href="http://svnbook.red-bean.com/en/1.1/re28.html">svn up</a>&#8221; or &#8220;<a href="http://svnbook.red-bean.com/en/1.0/re27.html">svn switch</a>&#8221; to get the latest changes or switch to another tagged release.</li>
<li>Do an <a href="http://svnbook.red-bean.com/en/1.0/re10.html">svn export</a> as suggested by the support guy to avoid placing the &#8220;.svn&#8221; directories on the server. If you don&#8217;t prevent access to these directories on your web server, <a href="http://www.adamgotterer.com/2009/01/26/hacking-the-svn-directory/">it can pose a serious risk</a>.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://stereointeractive.com/blog/2009/07/31/springloops-deployment-with-svn-externals/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>IE 6 getElementsById() and prototype $() function return dom elements by *name*</title>
		<link>http://stereointeractive.com/blog/2009/07/27/ie-6-getelementsbyid-and-prototype-function-return-dom-elements-by-name/</link>
		<comments>http://stereointeractive.com/blog/2009/07/27/ie-6-getelementsbyid-and-prototype-function-return-dom-elements-by-name/#comments</comments>
		<pubDate>Mon, 27 Jul 2009 16:07:29 +0000</pubDate>
		<dc:creator>Scott Meves</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[prototype]]></category>

		<guid isPermaLink="false">http://stereointeractive.com/blog/2009/07/27/ie-6-getelementsbyid-and-prototype-function-return-dom-elements-by-name/</guid>
		<description><![CDATA[I can&#8217;t believe I had not run into this yet, but today I had a page that had an element (an anchor) with a name attribute (&#8220;floorplans&#8221;), and further down the page a div with that id (&#8220;floorplans&#8221;). When I tried to dynamically load content into my div using $(&#8216;floorplans&#8217;), things were getting all out [...]]]></description>
			<content:encoded><![CDATA[<p>I can&#8217;t believe I had not run into this yet, but today I had a page that had an element (an anchor) with a name attribute (&#8220;floorplans&#8221;), and further down the page a div with that id (&#8220;floorplans&#8221;). When I tried to dynamically load content into my div using $(&#8216;floorplans&#8217;), things were getting all out of control on IE 6. Turns out IE6&#8217;s document.getElementById returns the first element whose id OR name matches the string, and of course Prototype&#8217;s $() function relies on the browser&#8217;s own getElementById(). Lesson learned! </p>
]]></content:encoded>
			<wfw:commentRss>http://stereointeractive.com/blog/2009/07/27/ie-6-getelementsbyid-and-prototype-function-return-dom-elements-by-name/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>
