<?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>Nuclear Rooster</title>
	<atom:link href="http://dev.nuclearrooster.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://dev.nuclearrooster.com</link>
	<description></description>
	<lastBuildDate>Mon, 19 Jul 2010 03:48:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Node.JS filesystem watcher: Auto-reload server on code-change</title>
		<link>http://dev.nuclearrooster.com/2010/07/18/node-js-filesystem-watcher-auto-reload-server-on-code-change/</link>
		<comments>http://dev.nuclearrooster.com/2010/07/18/node-js-filesystem-watcher-auto-reload-server-on-code-change/#comments</comments>
		<pubDate>Mon, 19 Jul 2010 03:46:40 +0000</pubDate>
		<dc:creator>nick.stielau</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dev.nuclearrooster.com/?p=474</guid>
		<description><![CDATA[Wow, a 2nd Node.JS post of the day, a Sunday to boot. I was thinking about how to auto-reload a node server, and then I came across a great solution by accident. DracoBlue has some good Node.JS articles. In particular, check out this one about auto-reloading in addition to a link to the code in [...]]]></description>
			<content:encoded><![CDATA[<p>Wow, a 2nd Node.JS post of the day, a Sunday to boot.</p>
<p>I was thinking about how to auto-reload a node server, and then I came across a great solution by accident.  <a href="http://dracoblue.net/">DracoBlue</a> has some <a href="http://dracoblue.net/dev/hot-reload-for-nodejs-servers-on-code-change/173/">good Node.JS articles</a>.  In particular, check out <a href="http://dracoblue.net/dev/hot-reload-for-nodejs-servers-on-code-change/173/">this one about auto-reloading</a> in addition to a link to the <a href="http://github.com/DracoBlue/spludo/blob/master/build/run_dev_server.js">code in their Spludo Node.JS framework</a> which makes this happen.</p>
<p>Simply save the file to your apps top-level directory, change the 'run_server.js' to the name of your file that you want watched, and presto, you're app will be restarted if any js files changes.  Love it.</p>
<p>Here's what the console looks like:</p>
<pre class="brush: plain;">
steggie:appstat nstielau$ node dev_server.js
DEBUG: DEVSERVER: Starting server
Server running at http://127.0.0.1:8124/ in development
DEBUG: DEVSERVER: Restarting because of changed file at ./appstat_tracker.js
DEBUG: DEVSERVER: Stopping server for restart
DEBUG: DEVSERVER: Child process exited: null
DEBUG: DEVSERVER: Starting server
Server running at http://127.0.0.1:8124/ in development
</pre>
<p>I wish node had a --watch flag that would do this for me.  I took a peek at the node code, but I'm not quite ready to make that happen.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.nuclearrooster.com/2010/07/18/node-js-filesystem-watcher-auto-reload-server-on-code-change/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Capistrano Scripts for Node.js</title>
		<link>http://dev.nuclearrooster.com/2010/07/18/capistrano-scripts-for-node-js/</link>
		<comments>http://dev.nuclearrooster.com/2010/07/18/capistrano-scripts-for-node-js/#comments</comments>
		<pubDate>Sun, 18 Jul 2010 23:38:45 +0000</pubDate>
		<dc:creator>nick.stielau</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dev.nuclearrooster.com/?p=467</guid>
		<description><![CDATA[Here are some basic capistrano scripts and a configuration script to get Node.js running on Ubuntu 10.0.4 Lucid on ec2 (or anywhere else). I pieced these together from different places, but it's kinda cool to have a 2-command deploy out-of-the-box. Here is a gist that should get you up and running with node.js on ec2. [...]]]></description>
			<content:encoded><![CDATA[<p>Here are some basic capistrano scripts and a configuration script to get Node.js running on Ubuntu 10.0.4 Lucid on ec2 (or anywhere else).  I pieced these together from different places, but it's kinda cool to have a 2-command deploy out-of-the-box.  Here is a gist that should get you <a href="http://gist.github.com/479007">up and running with node.js on ec2</a>.  Clone the gist repo to you local box and follow along!</p>
<p>I also configured nginx to proxy to the example Node.js application, mostly so that it would be accessible on port 80, which is enabled by default for EC2 security groups.</p>
<h2>EC2 Launch Script</h2>
<p>If you have the ec2 tools installed (I'd recommend <a href="http://github.com/mxcl/homebrew">brew</a>), and you have your credential environment variables in place, you can run this script to launch an ec2 instance.  It's using Alestic's ubuntu 10.04 AMI<br />
<script src="http://gist.github.com/479007.js?file=launch_instance.sh"></script></p>
<h2>Ubuntu 10.04 Configure Script</h2>
<p>This is the config script that the launch script uses.<br />
<script src="http://gist.github.com/479007.js?file=configure_server.sh"></script></p>
<h2>Copy host to Capfile</h2>
<p>If you're following along, you'll want to copy the public DNS name of your ec2 instance to the 'host' variable in the Capfile.</p>
<h2>Capfile</h2>
<p>You can break these out into ./config/deploy.rb or whatever you like, but it's all here for succinctness.<br />
<script src="http://gist.github.com/479007.js?file=Capfile"></script></p>
<h2>Run the capistrano scripts</h2>
<pre class="brush: plain;">
cap deploy:setup
cap deploy
</pre>
<h2>References </h2>
<ul>
<li><a href="http://github.com/mnutt/hummingbird">Mnutt's HUmmingbird</a></liL
<li><a href="http://static01.vanzonneveld.net:8080/techblog/article/run_nodejs_as_a_service_on_ubuntu_karmic/">Kevin's article on running node as a service on ubuntu Karmic</a></li>
<li><a href="http://howtonode.org/deploying-node-upstart-monit">How-to-node on upstart and monit</a></li>
<li><a href="http://caolanmcmahon.com/deploying_nodejs_applications_with_upstart.html">Caolan's article on Node.js and upstart deployment</a>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://dev.nuclearrooster.com/2010/07/18/capistrano-scripts-for-node-js/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Compiling Node.js on a 512mb (ve) MediaTemple VPS</title>
		<link>http://dev.nuclearrooster.com/2010/07/15/compiling-node-js-on-a-512-ve-mediatemple-vps/</link>
		<comments>http://dev.nuclearrooster.com/2010/07/15/compiling-node-js-on-a-512-ve-mediatemple-vps/#comments</comments>
		<pubDate>Thu, 15 Jul 2010 18:42:46 +0000</pubDate>
		<dc:creator>nick.stielau</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dev.nuclearrooster.com/?p=456</guid>
		<description><![CDATA[The Bad News You can't. Or at least I couldn't. Make started throwing "virtual memory exhausted: Cannot allocate memory" errors after a few seconds. I tried setting some make flags. I confirmed make was increasing the fail count of 'privvmpages' in /proc/user_beancounters. I started trying to change the swap. And then I found an easier [...]]]></description>
			<content:encoded><![CDATA[<h3>The Bad News</h3>
<p>You can't.  Or at least I couldn't.  Make started throwing "virtual memory exhausted: Cannot allocate memory" errors after a few seconds.  I tried setting some make flags.  I confirmed make was increasing the fail count of 'privvmpages' in /proc/user_beancounters.  I started trying to change the swap.  And then I found an easier way.</p>
<h3>Good News</h3>
<p>It is pennies and minutes to upgrade to a VPS with 1gig of RAM, compile node.js, and revert back to your economic 512mb slice.  You keep all your data.  No problem.</p>
<h3>Temporarily (<2hrs) upgrade your MediaTemple (ve) server</h3>
<p>1) Enter your MediaTemple console</p>
<p>2) Select 'Upgrade Account'<br />
<img src="http://dev.nuclearrooster.com/wp-content/uploads/2010/07/mt_upgrade.jpg" alt="" title="mt_upgrade" width="919" height="516" class="aligncenter size-full wp-image-458" /></p>
<p>3) Select the size container you need (1gig works for compiling node js)<br />
<img src="http://dev.nuclearrooster.com/wp-content/uploads/2010/07/mt_select_upgrade.jpg" alt="" title="mt_select_upgrade" width="920" height="648" class="aligncenter size-full wp-image-457" /></p>
<p>4) Wait a few minutes, ssh in, configure &#038;& make &#038;& make install</p>
<p>5) Reverse the process, going back to the 512mb VPS.</p>
<h3>Conclusion</h3>
<p>At first I was pretty frustrated that I couldn't compile node.  But MediaTemple does let you choose from a lot of new OSes, which is nice, err, pretty much a requirement.  I consider myself pretty handy with a linux server, but I want to worry about improving the application and infrastructure, not hacking some memory issue on a shared server because I can't afford more power yet.  That is wasted time.  But media temple makes it amazingly easy to upgrade and downgrade your box.  (mt) ftw!</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.nuclearrooster.com/2010/07/15/compiling-node-js-on-a-512-ve-mediatemple-vps/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>IRC with Adium</title>
		<link>http://dev.nuclearrooster.com/2010/07/06/irc-with-adium/</link>
		<comments>http://dev.nuclearrooster.com/2010/07/06/irc-with-adium/#comments</comments>
		<pubDate>Tue, 06 Jul 2010 17:14:07 +0000</pubDate>
		<dc:creator>nick.stielau</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dev.nuclearrooster.com/?p=445</guid>
		<description><![CDATA[IRC with Adium IRC is a great way to get help when you need it, and it's even easier now that your favorite OS X IM client supports IRC. Here's how to get up and running. How to 1) Create an account Add a new IRC account. Enter your nickname, host server (irc.freenode.net). You probably [...]]]></description>
			<content:encoded><![CDATA[<h3>IRC with Adium</h3>
<p>IRC is a great way to get help when you need it, and it's even easier now that your <a href="http://adium.im/">favorite OS X IM client</a> supports IRC.  Here's how to get up and running. </p>
<h3>How to</h3>
<h4>1) Create an account</h4>
<p>Add a new IRC account. Enter your nickname, host server (irc.freenode.net).  You probably won't need a password.</p>
<p><a href="http://dev.nuclearrooster.com/wp-content/uploads/2010/07/Screen-shot-2010-07-06-at-10.02.14-AM.png"><img src="http://dev.nuclearrooster.com/wp-content/uploads/2010/07/Screen-shot-2010-07-06-at-10.02.14-AM.png" alt="Create an IRC account with Adium" title="Create an IRC account" width="572" height="477" class="aligncenter size-full wp-image-446" /></a></p>
<h4>2) Join a group chat</h4>
<p>Make sure your new IRC account is connected, and select 'Join Group Chat' from the File menu.  Select the IRC account from the drop-down, enter the chat room (including the '#'), and join.</p>
<p><a href="http://dev.nuclearrooster.com/wp-content/uploads/2010/07/Screen-shot-2010-07-06-at-10.02.41-AM.png"><img src="http://dev.nuclearrooster.com/wp-content/uploads/2010/07/Screen-shot-2010-07-06-at-10.02.41-AM.png" alt="Join IRC chat with Adlim" title="Join IRC chat with Adlim" width="385" height="201" class="aligncenter size-full wp-image-447" /></a></p>
<h4>Chat away</h4>
<p><a href="http://dev.nuclearrooster.com/wp-content/uploads/2010/07/Screen-shot-2010-07-06-at-10.10.45-AM.png"><img src="http://dev.nuclearrooster.com/wp-content/uploads/2010/07/Screen-shot-2010-07-06-at-10.10.45-AM.png" alt="#mongodb IRC on Adium" title="#mongodb IRC on Adium" width="735" height="592" class="aligncenter size-full wp-image-449" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://dev.nuclearrooster.com/2010/07/06/irc-with-adium/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MongoDB Resources</title>
		<link>http://dev.nuclearrooster.com/2010/07/06/mongodb-resources/</link>
		<comments>http://dev.nuclearrooster.com/2010/07/06/mongodb-resources/#comments</comments>
		<pubDate>Tue, 06 Jul 2010 17:00:57 +0000</pubDate>
		<dc:creator>nick.stielau</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dev.nuclearrooster.com/?p=440</guid>
		<description><![CDATA[Somebody on #mongodb asked for some learning resources yesterday, noting that all the mongo books are not yet published. Sometimes it feels great to have a pulpy reference, but, in the meantime, there are plenty of resources out there. Tutorials 10gen's got a solid set of docs. A good place to start is the general [...]]]></description>
			<content:encoded><![CDATA[<p>Somebody on #mongodb asked for some learning resources yesterday, noting that all the mongo books are <a href="http://www.mongodb.org/display/DOCS/Books">not yet published</a>.  Sometimes it feels great to have a pulpy reference, but, in the meantime, there are plenty of resources out there.</p>
<h3>Tutorials</h3>
<p>10gen's got a solid set of docs.  A good place to start is the <a href="http://www.mongodb.org/display/DOCS/Tutorial">general tutorial</a>.  Once you've got your head around the basic ideas, go over and try the <a href="http://try.mongodb.org/">instant online tutorial</a> to convince you that you want to install MongoDB on your machine.</p>
<h3>Examples</h3>
<p>To dig into a little code, there are some good examples for both the ruby driver and mongomapper on github.  Check out the <a href="http://github.com/mongodb/mongo-ruby-driver/tree/master/examples/">Ruby examples</a> and the <a href="http://github.com/jnunemaker/mongomapper/tree/master/examples/">MongoMapper</a> examples for some concise usage examples.  Even if you're not into ruby, these examples clearly demonstrate some of the Mongo principles.</p>
<h3>Hosted MongoDB</h3>
<p>If you don't want to install MongoDB locally, or you want to get a hosted database, I can't say enough about <a href="https://mongohq.com/">MongoHQ</a>.  Whether you are playing around with a free DB or launching a live project, MongoHQ makes it easy.  Seamless Heroku integration?  You betcha.</p>
<h3>MongoFu</h3>
<p>MognoFu.com appears to be gaining some momentum as a MongoDB resource, with nicely organized <a href="http://mongofu.com">MongoDB tutorials</a> as well as questions, articles and snippits.  Check it out.</p>
<h3>Other Resources</h3>
<p>Lastly, there is a good list of external resources <a href="http://www.mongodb.org/display/DOCS/Ruby+External+Resources">here</a> that will no doubt be kept up-to-date better than this blog.</p>
<p>Dig in</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.nuclearrooster.com/2010/07/06/mongodb-resources/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>280 Slides:  these go up to 11</title>
		<link>http://dev.nuclearrooster.com/2010/05/14/280-slides-these-go-up-to-11/</link>
		<comments>http://dev.nuclearrooster.com/2010/05/14/280-slides-these-go-up-to-11/#comments</comments>
		<pubDate>Fri, 14 May 2010 22:38:19 +0000</pubDate>
		<dc:creator>nick.stielau</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[cuppaccino]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://dev.nuclearrooster.com/?p=428</guid>
		<description><![CDATA[Recently, I was looking through some of the Cuppaccino demos and saw this snippit about 280 Slides claiming that it is "one of the most advanced applications on the web today". I took the bait, and shortly after loading the page was the claim proven correct. Most web apps on the web to day are [...]]]></description>
			<content:encoded><![CDATA[<p>Recently, I was looking through some of the <a href="http://cappuccino.org/learn/demos/">Cuppaccino demos</a> and saw this snippit about <a href="http://280slides.com/">280 Slides</a> claiming that it is "one of the most advanced applications on the web today".  </p>
<p><a href="http://dev.nuclearrooster.com/wp-content/uploads/2010/05/Screen-shot-2010-05-14-at-3.28.05-PM.png"><img src="http://dev.nuclearrooster.com/wp-content/uploads/2010/05/Screen-shot-2010-05-14-at-3.28.05-PM.png" alt="" title="Screen shot 2010-05-14 at 3.28.05 PM" width="631" height="190" class="aligncenter size-full wp-image-427" /></a></p>
<p>I took the bait, and shortly after loading the page was the claim proven correct.</p>
<p><a href="http://dev.nuclearrooster.com/wp-content/uploads/2010/05/Screen-shot-2010-05-14-at-10.56.12-AM.png"><img src="http://dev.nuclearrooster.com/wp-content/uploads/2010/05/Screen-shot-2010-05-14-at-10.56.12-AM.png" alt="" title="Screen shot 2010-05-14 at 10.56.12 AM" width="333" height="332" class="aligncenter size-full wp-image-426" /></a></p>
<p>Most web apps on the web to day are completely loaded at 100%.  Clearly, 280 Slides is so terrifically advanced that it <a href="http://en.wikipedia.org/wiki/Up_to_eleven">goes to 105% </a>.  Genius.  These new web technologies truly are groundbreaking.</p>
<p>All joking aside, some of the Cuppaccino demos are pretty cool.  Go check them out.  </p>
]]></content:encoded>
			<wfw:commentRss>http://dev.nuclearrooster.com/2010/05/14/280-slides-these-go-up-to-11/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Developer Quiz:  Should I do this now?</title>
		<link>http://dev.nuclearrooster.com/2010/05/10/developer-quiz-should-i-do-this-now/</link>
		<comments>http://dev.nuclearrooster.com/2010/05/10/developer-quiz-should-i-do-this-now/#comments</comments>
		<pubDate>Mon, 10 May 2010 16:35:56 +0000</pubDate>
		<dc:creator>nick.stielau</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[operations]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://dev.nuclearrooster.com/?p=400</guid>
		<description><![CDATA[I recently had a average sized freakout after migrating from a beta to a real account at MongoHQ. (MongoHQ rocks. It wasn't their fault, the migration couldn't be easier. I just goofed something and was looking in the wrong place). A friend recently asked me "Can't you just not have that happen again?". Well, yes [...]]]></description>
			<content:encoded><![CDATA[<p>I recently had a average sized freakout after migrating from a beta to a real account at <a href="http://mongohq.com"/>MongoHQ</a>.  (MongoHQ rocks.  It wasn't their fault, the migration couldn't be easier.  I just goofed something and was looking in the wrong place). A friend recently asked me "Can't you just not have that happen again?".  Well, yes and no.</p>
<p>Avoiding freakouts is certainly part of being a good developer.  Self documenting code, a healthy test suite, multiple mirrored environments, etc.  But like my dad coaching hockey, if you don't fall sometimes, you're probably not trying hard enough.  Google better run exhaustive tests for the simplest features, but I can't afford to spend more than a few hours testing a trivial feature for a side project that will never pay my rent.  </p>
<p>Hopefully a simple set of questions will help keep my blood pressure low, and keep me punctual for dinner dates.  Please add any question that you think would help determine if <i>now</i> is the right time to embark on this particular problem. </p>
<p>I'd love to have an interactive little widget that I could pop open, answer a few questions, and get my coefficient-of-should-I-do-this-now.</p>
<ul>
<li>How long will this take, best case?</li>
<li>How long will this take, reasonably apocalyptic case?</li>
<li>What is the most number of people this could effect?</li>
<li>How many times have I done something like this before?</li>
<li>Have I ever done something exactly like this before?</li>
<li>Has this been testing programmatically?</li>
<li>Has this been tested in a dev/staging environment?</li>
<li>What do I have to do in the next two hours?</li>
<li>Where do I have to go in the next two hours?</li>
<li>Can I stay here for the next two hours?</li>
<li>Have I eaten recently?</li>
<li>Had a beer or a couple martinis lately?</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://dev.nuclearrooster.com/2010/05/10/developer-quiz-should-i-do-this-now/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Web-enable your OS X Documents folder</title>
		<link>http://dev.nuclearrooster.com/2010/05/09/web-enable-your-os-x-documents-folder/</link>
		<comments>http://dev.nuclearrooster.com/2010/05/09/web-enable-your-os-x-documents-folder/#comments</comments>
		<pubDate>Sun, 09 May 2010 22:48:39 +0000</pubDate>
		<dc:creator>nick.stielau</dc:creator>
				<category><![CDATA[OS X]]></category>
		<category><![CDATA[apache]]></category>

		<guid isPermaLink="false">http://dev.nuclearrooster.com/?p=402</guid>
		<description><![CDATA[Working with web technologies, you can't (or shouldn't) avoid HTML, PHP and JavaScript.  Apple provides the default webserver serving files from /Library/WebServer/Documents, and your user vhost under ~/Sites, but I don't find either very convenient.  I keep all of the projects under ~/Documents, and I want to be able to view those files in a browser as well.]]></description>
			<content:encoded><![CDATA[<h3>What?</h3>
<p>Give apache access to your Documents folder, so you can view your documents in a browser.</p>
<h3>Why?</h3>
<p>Working with web technologies, you can't (or shouldn't) avoid HTML, PHP and JavaScript.  Apple provides the default webserver serving files from /Library/WebServer/Documents, and your user vhost under ~/Sites, but I don't find either very convenient.  I keep all of the projects under ~/Documents, and I want to be able to view those files in a browser as well.</p>
<p>Some of this could be done through a browser over file://, but I find it easier to set it up this way.  Additionally, when developing Flash/Flex apps, the security sandbox model can necessitate using HTTP.</p>
<h3>How?</h3>
<p>First, create a virtual host file with the configuration details at /private/etc/apache2/extra/documents_vhost.conf.  Replace USERNAME with your username.  I chose port 1234, because it is easy to remember, but you can replace that with a port of your choosing.</p>
<pre class="brush: xml;">
&lt;VirtualHost 127.0.0.1:1234&gt;
    DocumentRoot &quot;/Users/USERNAME/Documents&quot;
    ServerName 127.0.0.1
	&lt;Directory &quot;/Users/USERNAME/Documents&quot;&gt;
	    Options Indexes FollowSymLinks MultiViews
	    AllowOverride All
	    Order allow,deny
	    Allow from all
	&lt;/Directory&gt;
&lt;/VirtualHost&gt;
</pre>
<p>Edit the main apache configuration file, /private/etc/apache2/httpd.conf.  Add the following to the bottom.</p>
<pre class="brush: plain;">
# Tell apache to listen to requests on this port
Listen 1234
# Include the vhost details
Include /private/etc/apache2/extra/documents_vhost.conf
</pre>
<p>Lastly, you have to change the permissions of your Documents folder so that it has read and execute permissions, required by Apache to read from it.  </p>
<pre class="brush: bash;">
chmod 711 ~/Documents
</pre>
<p>Restart apache</p>
<pre class="brush: bash;">
sudo /usr/sbin/apachectl graceful
</pre>
<p>and visit your Documents folder in your browser at <a href="http://127.0.0.1:1234/">http://127.0.0.1:1234/</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.nuclearrooster.com/2010/05/09/web-enable-your-os-x-documents-folder/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS Sprite example from Google maps</title>
		<link>http://dev.nuclearrooster.com/2010/05/07/css-sprite-example-from-google-maps/</link>
		<comments>http://dev.nuclearrooster.com/2010/05/07/css-sprite-example-from-google-maps/#comments</comments>
		<pubDate>Fri, 07 May 2010 23:15:13 +0000</pubDate>
		<dc:creator>nick.stielau</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dev.nuclearrooster.com/?p=386</guid>
		<description><![CDATA[CSS sprites are a great way to improve both the speed and user experience of your website. Combining multiple images into a single file reduces the number of different requests made, which is at the top of Yahoo's list of ways to speed up your website. Additionally, it improves user-experience: since essentially all the contained [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.alistapart.com/articles/sprites">CSS sprites</a> are a great way to improve both the speed and user experience of your website.  Combining multiple images into a single file reduces the number of different requests made, which is at the top of <a href="http://developer.yahoo.com/performance/rules.html">Yahoo's list</a> of ways to speed up your website. Additionally, it improves user-experience:  since essentially all the contained images are pre-loaded at the same, sprites offer flicker-less hovers.</p>
<p>I ran across this CSS Sprite of google's the other day while looking at Google Map's HTTP requests.  Juicy.  Looking around, I found a sprite from Bing, as well as two long fellows from Yahoo Maps.  Interesting that Yahoo went with a strictly vertical orientation, while the google sprite is jumbled together.</p>
<div align="center">
<div style="width: 400px">
<img src="http://dev.nuclearrooster.com/wp-content/uploads/2010/05/google_maps_css_sprite.png" alt="Google CSS Sprite" title="google_maps_css_sprite" width="142" height="131" class="aligncenter size-full wp-image-387" style="float: right;" /><br />
<img src="http://dev.nuclearrooster.com/wp-content/uploads/2010/05/bing_sprite.png" alt="" title="bing_sprite" width="125" height="231" class="aligncenter size-full wp-image-389" style="float: left;"/><br />
<br style="clear:both"/><br />
<img src="http://dev.nuclearrooster.com/wp-content/uploads/2010/05/yahoo_sprites_1.png" alt="" title="yahoo_sprites_1" width="28" height="1323" class="aligncenter size-full wp-image-390" style="float: right;" /><img src="http://dev.nuclearrooster.com/wp-content/uploads/2010/05/yahoo_sprites2.png" alt="" title="yahoo_sprites2" width="100" height="1831" class="aligncenter size-full wp-image-391" style="float: left;" />
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://dev.nuclearrooster.com/2010/05/07/css-sprite-example-from-google-maps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML 5 Browser Compatibility Screenshots (20+ browsers)</title>
		<link>http://dev.nuclearrooster.com/2010/05/02/html-5-browser-compatibility-screenshots-20-browsers/</link>
		<comments>http://dev.nuclearrooster.com/2010/05/02/html-5-browser-compatibility-screenshots-20-browsers/#comments</comments>
		<pubDate>Mon, 03 May 2010 03:28:18 +0000</pubDate>
		<dc:creator>nick.stielau</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[cross-browser]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[litmus]]></category>
		<category><![CDATA[litmusapp]]></category>

		<guid isPermaLink="false">http://dev.nuclearrooster.com/?p=343</guid>
		<description><![CDATA[I didn't think that much of HTML 5 at first. I saw a few cool demos for sure, but the thought of waiting for the browser compatibility seems like a non-starter. That is until I saw a demo of Gilt Group's HTML5 based real-time analytics tool that was presented at MongoSF last Friday. Enter Litmus [...]]]></description>
			<content:encoded><![CDATA[<p>I didn't think that much of HTML 5 at first.  I saw a few cool demos for sure, but the thought of waiting for the browser compatibility seems like a non-starter.  That is until I saw a demo of <a href="http://www.gilt.com/">Gilt Group's</a> HTML5 based real-time analytics tool that was presented at MongoSF last Friday.  </p>
<h3>Enter Litmus </h3>
<p><img src="http://litmusapp.com/images/logo-white.gif" style="padding-top:20px;float:left;width: 115px;padding-right: 15px;" alt="Litmus App"/><br />
So just what is the state of HTML 5 comparability?   Combining <a href="http://litmusapp.com/">Litmus App</a> and <a href="http://html5test.com/">HTML5 Test</a> provided a dead-simple way to check cross browser compatibility.  Here's it at a glance, or check out the <a href="http://rainier.litmusapp.com/pub/4a4f56e">Litmus App results</a>.  Litmus didn't quite work for every browser, so you're on your own for Opera 10 and Internet Exploder 9.</p>
<style type="text/css" media="screen">
#results div {
display: inline;
height: 150px;
width: 140px;
float: left;
}
#results div h3 {height: 50px;}
</style>
<p><br/></p>
<div id="results">
<div>
<h3>Explorer 5.0</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/d391a88e-0c10-4b56-9bb2-d5392fa4a136.fullpagethumb.png' alt='Explorer 5.0 HTML 5 Compatibility'/></div>
<div>
<h3>Explorer 5.5</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/c22fd71a-f8b2-4b8b-ae63-56c7d4f80199.fullpagethumb.png' alt='Explorer 5.5 HTML 5 Compatibility'/></div>
<div>
<h3>Explorer 6.0</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/f5bd4cc0-9330-4ca9-9aab-342cbdcc0841.fullpagethumb.png' alt='Explorer 6.0 HTML 5 Compatibility'/></div>
<div>
<h3>Explorer 7.0</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/87b0d858-67b8-4daa-b31b-3bc4fef7cc32.fullpagethumb.png' alt='Explorer 7.0 HTML 5 Compatibility'/></div>
<div>
<h3>Explorer 8.0</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/7bf2a577-d2d8-4523-8fc9-8b09d3c1b192.fullpagethumb.png' alt='Explorer 8.0 HTML 5 Compatibility'/></div>
<div>
<h3>Explorer 9.0 Preview</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/c3534462-8a27-4a14-ab41-b1e919029176.fullpagethumb.png' alt='Explorer 9.0 Preview HTML 5 Compatibility'/></div>
<div>
<h3>Firefox 1.0</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/f90b5920-790e-4987-bfd0-e12033b5ac53.fullpagethumb.png' alt='Firefox 1.0 HTML 5 Compatibility'/></div>
<div>
<h3>Firefox 1.5</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/b4ee1311-7f81-4f67-ae8b-cd7f6064e3aa.fullpagethumb.png' alt='Firefox 1.5 HTML 5 Compatibility'/></div>
<div>
<h3>Firefox 2.0</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/95d7f505-b2d1-4c38-a34d-40a7b49ee2f3.fullpagethumb.png' alt='Firefox 2.0 HTML 5 Compatibility'/></div>
<div>
<h3>Firefox 3.0</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/bf1447d0-521f-4295-a784-7b5833721247.fullpagethumb.png' alt='Firefox 3.0 HTML 5 Compatibility'/></div>
<div>
<h3>Firefox 3.6</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/03085e16-c4cd-4aa0-9eb2-0483ba7bc1cd.fullpagethumb.png' alt='Firefox 3.6 HTML 5 Compatibility'/></div>
<div>
<h3>Opera 10.0</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/c1348c43-f05e-4dfd-97b5-af2f2dc5267f.fullpagethumb.png' alt='Opera 10.0 HTML 5 Compatibility'/></div>
<div>
<h3>Netscape 9.0</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/1811720e-9bd1-4fbe-af3e-8245239e7b7c.fullpagethumb.png' alt='Netscape 9.0 HTML 5 Compatibility'/></div>
<div>
<h3>Safari 4.0</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/7bc74c50-3aa3-4e9e-8f27-98beccb8031c.fullpagethumb.png' alt='Safari 4.0 HTML 5 Compatibility'/></div>
<div>
<h3>Flock 1.2</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/4f64220f-0fc5-4708-b0a8-2374cba0a1f0.fullpagethumb.png' alt='Flock 1.2 HTML 5 Compatibility'/></div>
<div>
<h3>Flock 2.0</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/5901892d-3de9-4c58-b6dc-357bb1500575.fullpagethumb.png' alt='Flock 2.0 HTML 5 Compatibility'/></div>
<div>
<h3>Chrome 4.0</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/ebe2474d-d5de-4897-a16b-e078ca236982.fullpagethumb.png' alt='Chrome 4.0 HTML 5 Compatibility'/></div>
<div>
<h3>Sea Monkey 1.1</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/a0daf8c8-2017-434c-89de-bb5c70ebf52c.fullpagethumb.png' alt='Sea Monkey 1.1 HTML 5 Compatibility'/></div>
<div>
<h3>Safari 4.0 OSX</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/FDF95461-6F59-4532-9C41-86840656FC38.png' alt='Safari 4.0 OSX HTML 5 Compatibility'/></div>
<div>
<h3>Firefox 3.6 OSX</h3>
<p><img src='http://s3.amazonaws.com/resultcaptures/C26C3902-11C5-4A77-BF16-1EA8D50331D7.png' alt='Firefox 3.6 OSX HTML 5 Compatibility'/></div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://dev.nuclearrooster.com/2010/05/02/html-5-browser-compatibility-screenshots-20-browsers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
