<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Justin Carmony's Blog</title>
	
	<link>http://www.justincarmony.com/blog/</link>
	<description>Web Designer &amp; Software Engineer</description>
	<lastBuildDate>Sun, 04 Jul 2010 21:34:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/JustinCarmony" /><feedburner:info uri="justincarmony" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Alaskan Cruise – Very Fun</title>
		<link>http://feedproxy.google.com/~r/JustinCarmony/~3/TdGoWbDgFAM/</link>
		<comments>http://www.justincarmony.com/blog//2010/06/04/alaskan-cruise-very-fun/#comments</comments>
		<pubDate>Fri, 04 Jun 2010 21:34:06 +0000</pubDate>
		<dc:creator>Justin Carmony</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[alaska]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[vacation]]></category>

		<guid isPermaLink="false">http://www.justincarmony.com/blog/?p=564</guid>
		<description><![CDATA[I think it&#8217;s important for technology folk, especially programmers and system administrators, to take breaks and such that allow for us to be completely disconnected from our work. Its a very hard thing to do, especially if you work with very small companies. With Dating DNA, when I go on vacation, I&#8217;m the only Sys [...]


Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2009/09/16/speaking-utah-open-source-conference-2009/' rel='bookmark' title='Permanent Link: Speaking: Utah Open Source Conference 2009'>Speaking: Utah Open Source Conference 2009</a> <small>I will be speaking this year at the Utah Open...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>I think it&#8217;s important for technology folk, especially programmers and system administrators, to take breaks and such that allow for us to be completely disconnected from our work. Its a very hard thing to do, especially if you work with very small companies. With Dating DNA, when I go on vacation, I&#8217;m the only Sys Admin and all of our web development stops for the time I&#8217;m gone. So if there are Web Service APIs that need to be updated for our iPhone Developer, he has to wait as well. Also, if something goes down, I&#8217;m not around to fix it. Not a very fun situation to be in.</p>
<p>So for Dating DNA &#038; Clipish I put together the &#8220;Basic Server Administration Document&#8221; which detailed everything a person would need to know to perform basic sys admin tasks. It was nicked named the &#8220;Oh Crap&#8221; document. Fortunately, while I was gone, there were no problems, and the document was not needed.</p>
<p>For my other main project, CEVO, that was not the case. CEVO has 4 times the servers that Dating DNA has, and is a bit more complex. But there are two other programmers who also monitor the servers, so I wasn&#8217;t worried. Then, while I was gone, half the physical servers for a Virtual Server &#8220;Grid&#8221; went down, which was my pet project. The CTO for CEVO, Eric, had to try to figure out what was wrong and co-ordinate with the Data Center to figure what happened and how to fix everything. Since we host our Databases on this &#8220;Grid&#8221;, if it goes down, everything practically goes down. At the time, I was in Glacier Bay, watching Glaciers crumble and fall into the ocean, with zero internet connectivity.</p>
<p>So thank you Eric for putting up with everything while I was gone. It was all fixed by the time I came back.</p>
<p>But if there is anyone wondering if an Alaskan Cruise is worth it, it definitely is. My father-in-law took us, which was very nice of him. I&#8217;ll probably post some pictures in the near future of the trip. </p>


<p>Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2009/09/16/speaking-utah-open-source-conference-2009/' rel='bookmark' title='Permanent Link: Speaking: Utah Open Source Conference 2009'>Speaking: Utah Open Source Conference 2009</a> <small>I will be speaking this year at the Utah Open...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p><img src="http://feeds.feedburner.com/~r/JustinCarmony/~4/TdGoWbDgFAM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.justincarmony.com/blog//2010/06/04/alaskan-cruise-very-fun/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.justincarmony.com/blog//2010/06/04/alaskan-cruise-very-fun/</feedburner:origLink></item>
		<item>
		<title>Setting up Nagios for Servers</title>
		<link>http://feedproxy.google.com/~r/JustinCarmony/~3/vdG-MmjfcZs/</link>
		<comments>http://www.justincarmony.com/blog//2010/05/04/setting-up-nagios-for-servers/#comments</comments>
		<pubDate>Tue, 04 May 2010 21:17:20 +0000</pubDate>
		<dc:creator>Justin Carmony</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Nagios]]></category>
		<category><![CDATA[system administration]]></category>

		<guid isPermaLink="false">http://www.justincarmony.com/blog/?p=561</guid>
		<description><![CDATA[Ok, so I need to confess, I haven&#8217;t been a good blogger. I&#8217;ve gone two months without writing a post, which is broke a 2 year streak. But, I&#8217;m going to post date these posts, since I can. How I&#8217;ve gone this long without setting up Nagios to monitor servers is beyond me. However, I [...]


Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2010/03/22/cloud-to-bare-metal/' rel='bookmark' title='Permanent Link: The Cloud to Bare Metal'>The Cloud to Bare Metal</a> <small>A Little Background It was the summer of 2008 when...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>Ok, so I need to confess, I haven&#8217;t been a good blogger. I&#8217;ve gone two months without writing a post, which is broke a 2 year streak. But, I&#8217;m going to post date these posts, since I can.</p>
<p>How I&#8217;ve gone this long without setting up Nagios to monitor servers is beyond me. However, I was tired of my clients and so finding out a server was offline before me. So I threw up a 256MB virtual server on Slicehost, since I don&#8217;t have any servers with them at the moment, in case a data center went offline.</p>
<p>I put Ubuntu 10.04 LTS on the VM, and I followed the instructions found here on Linode: </p>
<p>http://library.linode.com/server-monitoring/nagios/ubuntu-10.04-lucid</p>
<p>It worked pretty well, but I think in the future I will just install the packages that come with the server distro. The reason being is there were several checking tools, like check_mysql and check_nrpe that were not installed because I didn&#8217;t have some dependencies installed. </p>
<p>Now after a few hours I have 9 servers being monitored with about two dozen services being monitored. I also found out that one server had a 96% full HDD, so it already is paying off. </p>
<p>On another note, for those who know me and are curious, I&#8217;m in full swing in finding sponsors for this years Utah Open Source Conference. I&#8217;ve talked to quite a few, just need to finalize and close their deals. If you know of a company interested in sponsoring this year&#8217;s conference, let me know (check the contact me link up above).</p>


<p>Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2010/03/22/cloud-to-bare-metal/' rel='bookmark' title='Permanent Link: The Cloud to Bare Metal'>The Cloud to Bare Metal</a> <small>A Little Background It was the summer of 2008 when...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p><img src="http://feeds.feedburner.com/~r/JustinCarmony/~4/vdG-MmjfcZs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.justincarmony.com/blog//2010/05/04/setting-up-nagios-for-servers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.justincarmony.com/blog//2010/05/04/setting-up-nagios-for-servers/</feedburner:origLink></item>
		<item>
		<title>#hackUTOS – April 24, 2010</title>
		<link>http://feedproxy.google.com/~r/JustinCarmony/~3/4nqBiiHRwcg/</link>
		<comments>http://www.justincarmony.com/blog//2010/04/16/hackutos-april-24-2010/#comments</comments>
		<pubDate>Fri, 16 Apr 2010 14:02:30 +0000</pubDate>
		<dc:creator>Justin Carmony</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.justincarmony.com/blog/?p=554</guid>
		<description><![CDATA[I&#8217;ve been busy with several blog post floating around in my head, its just a matter of sitting down and writing them out. In the meantime, next Saturday, April 24th, will be #hackUTOS. Here is the news announcement: ﻿﻿﻿If you have ever been interested in creating, improving or just participating in an open source project, [...]


Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2010/01/04/dear-2010-my-plans-for-next-year/' rel='bookmark' title='Permanent Link: Dear 2010 &#8211; My Plans for Next Year'>Dear 2010 &#8211; My Plans for Next Year</a> <small>Update: I started to write this post on the 31st,...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been busy with several blog post floating around in my head, its just a matter of sitting down and writing them out. In the meantime, next Saturday, April 24th, will be <a href="http://hack.utos.org/">#hackUTOS</a>. Here is the news announcement:</p>
<blockquote><p>﻿﻿﻿If you have ever been interested in creating, improving or just participating in an open source project, here’s your chance!&nbsp; Do you already have an free and open source software project you are working on?</p>
<h2>Come On Down!</h2>
<p>At <a href="http://hack.utos.org/">#hackUTOS</a>, there will be developers, designers, documenters, testers and more looking for something to get involved in. Come down and learn how to get involved in an open source project!&nbsp; Even if you aren’t a developer, there are needs for documentation, testing, promotion and more.</p>
<p><a href="http://www.facebook.com/pages/Utah-Open-Source-Conference/115286659676?ref=nf#%21/event.php?eid=114694361876524"><img title="hackUTOS" src="http://blog.utos.org/wp-content/blogs.dir/2/upload/2010/04/hackUTOS.png" alt="" height="158" width="293"></a></pre>
<address><a href="http://www.facebook.com/pages/Utah-Open-Source-Conference/115286659676?ref=nf#%21/event.php?eid=114694361876524">hackUTOS – A Code Festival</a> (RSVP Requested)</address>
<address>April 24, 2010 :: 9am – 6pm </address>
<address>Open Source Technology Center at Novell (<a href="http://sn.im/ostc-novell">map</a>)</address>
<address>#hackUTOS on irc.freenode.net</address>
<address><strong>free</strong> admission, f<strong>ree </strong>software, <strong>free</strong> SWAG and <strong>free</strong> food sponsored <a href="http://xmission.com"><em><strong>XMission</strong></em></a><em><strong> and <a href="http://stackable.com">Stackable.com</a></strong></em>!</address>
<p>More details at the <a href="http://wiki.utos.org/Event:hackUTOS_-_A_Code_Festival#Event_Logo">UTOS Wiki</a>.&nbsp; See our <a href="http://blog.utos.org/2010/04/07/event-hackutos-got-a-project/">previous</a> <a href="http://blog.utos.org/2010/04/04/event-hackutos-a-code-festival/">posts</a> as well.</p>
<p>Sponsored By:</p>
<p><a href="http://xmission.com"><img title="xmission_100x44" src="http://blog.utos.org/wp-content/blogs.dir/2/upload/2010/04/xmission_100x44.png" alt="" height="42" width="100"></a><a href="http://stackable.com"><img title="stackable_100x43" src="http://blog.utos.org/wp-content/blogs.dir/2/upload/2010/04//stackable_100x43.png" alt="" height="43" width="100"></a></p>
<p>See you all there!&nbsp; It’s going to be a blast!</p>
<p>Cheers,</p>
<p>Clint</p></blockquote>
<p>I don't believe I will be able to attend, but if you are are going to be around the Provo area, and are interested in getting involved in an Open Source project, check it out. </p>


<p>Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2010/01/04/dear-2010-my-plans-for-next-year/' rel='bookmark' title='Permanent Link: Dear 2010 &#8211; My Plans for Next Year'>Dear 2010 &#8211; My Plans for Next Year</a> <small>Update: I started to write this post on the 31st,...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p><img src="http://feeds.feedburner.com/~r/JustinCarmony/~4/4nqBiiHRwcg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.justincarmony.com/blog//2010/04/16/hackutos-april-24-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.justincarmony.com/blog//2010/04/16/hackutos-april-24-2010/</feedburner:origLink></item>
		<item>
		<title>VirtualBox Networking Setup</title>
		<link>http://feedproxy.google.com/~r/JustinCarmony/~3/j2oOTarqbAI/</link>
		<comments>http://www.justincarmony.com/blog//2010/03/22/virtualbox-networking-setup/#comments</comments>
		<pubDate>Mon, 22 Mar 2010 06:32:43 +0000</pubDate>
		<dc:creator>Justin Carmony</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[Servers]]></category>
		<category><![CDATA[solutions]]></category>
		<category><![CDATA[sys]]></category>
		<category><![CDATA[system administration]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[virtual]]></category>
		<category><![CDATA[virtualbox]]></category>
		<category><![CDATA[virtualization]]></category>

		<guid isPermaLink="false">http://www.justincarmony.com/blog/?p=548</guid>
		<description><![CDATA[Every time I go to set up VirtualBox and several VMs I always forget how I setup the networking for them. Once again, I went through the pain of trying to figure it all out, so I might as well document it for future use. The Problem When creating virtual machines, especially virtual linux servers, [...]


Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2010/03/22/cloud-to-bare-metal/' rel='bookmark' title='Permanent Link: The Cloud to Bare Metal'>The Cloud to Bare Metal</a> <small>A Little Background It was the summer of 2008 when...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>Every time I go to set up VirtualBox and several VMs I always forget how I setup the networking for them. Once again, I went through the pain of trying to figure it all out, so I might as well document it for future use.</p>
<h3>The Problem</h3>
<p>When creating virtual machines, especially virtual linux servers, I want them to be able to do the following things:</p>
<ol>
<li>Connect to the Internet</li>
<li>Connect over SSH from my Host Machine to the Guest Machine</li>
<li>Have the servers connect to each other on a private internal network</li>
</ol>
<p>Out of the box, a VM is configured for #1, however it cannot do #2 and #3. There are some solutions that do some <a href="http://mydebian.blogdns.org/?p=148">archaic port forwarding</a> by issuing special commands from the Terminal. This is just painful, and if you just want <strong><em>one</em></strong> port to work, that's manageable, but what if you want ssh, ftp, myql, http, https, etc? Any on multiple VMs? What a nightmare! What is painful is when googling for a solution, almost <strong><em>every</em></strong> "answer" is this crazy port forwarding method. There is a much cleaner, better way!</p>
<h3>Solution - Host to Guest Connectivity</h3>
<p><a href="http://www.justincarmony.com/blog/wp-content/uploads/2010/03/Screen-shot-2010-03-22-at-12.15.38-AM.png"><img src="http://www.justincarmony.com/blog/wp-content/uploads/2010/03/Screen-shot-2010-03-22-at-12.15.38-AM-300x208.png" alt="Screen shot 2010-03-22 at 12.15.38 AM" title="Screen shot 2010-03-22 at 12.15.38 AM" width="300" height="208" class="alignnone size-medium wp-image-549" /></a></p>
<p>Go into your VM's settings and go to "Network", it will list options for 4 different adapters. Instead of hacking one adapter to do all the work, just setup more adapters for your configuration. For adapter #2, set it to Host-only. This enables an IP range for communicating from the Host to the Guest and vice versa. Start up your VM, and if you are using something like Ubuntu, edit your /etc/network/interfaces file so it looks like this:</p>
<div class="igBar"><span id="lcode-4"><a href="#" onclick="javascript:showPlainTxt('code-4'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">CODE:</span>
<div id="code-4">
<div class="code">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"># This file describes the network interfaces available on your system</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"># and how to activate them. <span style="">For</span> more information, see interfaces<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#800000;color:#800000;">5</span><span style="color:#006600; font-weight:bold;">&#41;</span>.</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"># The loopback network interface</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">auto lo</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">iface lo inet loopback</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"># The primary network interface</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">auto eth0</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">iface eth0 inet dhcp</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">### ADD THESE LINES</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">auto eth1</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">iface eth1 inet dhcp </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>After adding these lines, run the command:</p>
<div class="igBar"><span id="lcode-5"><a href="#" onclick="javascript:showPlainTxt('code-5'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">CODE:</span>
<div id="code-5">
<div class="code">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">sudo /etc/init.<span style="">d</span>/networking restart </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>Now VirtualBox is configured to host this traffic over the 192.168.56.x IP range (I'm not sure if/where you can change this). So do an ifconfig on your guest machine, and it should show you the IP it has been assigned. If you want, you can change your /etc/network/interfaces so it can be statically assigned. You should now be able to SSH into your box on it's IP:</p>
<div class="igBar"><span id="lcode-6"><a href="#" onclick="javascript:showPlainTxt('code-6'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">CODE:</span>
<div id="code-6">
<div class="code">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">ssh -l justin <span style="color:#800000;color:#800000;">192</span>.<span style="color:#800000;color:#800000;">168</span>.<span style="color:#800000;color:#800000;">56</span>.<span style="color:#800000;color:#800000;">101</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<h3>Solution - Guest to Guest Communication</h3>
<p>Now, what if I have a Cassandra server, a Web Server, and a MySQL server each on their own VMs. What you do is create a third adapter set to "Internal Network". Then in your /etc/network/interfaces file you set eth2 to a static IP of your choosing. I typically use the 10.0.0.x range. So each server is respectively 10.0.0.10, 10.0.0.20, and 10.0.0.30. However, over the 10.0.0.x range there is no DHCP, no Gateway, no nothing, just direct communications over these IPs.</p>
<h3>Conclusion</h3>
<p>So please, for the love of everything good, don't resort to crazy port forwarding, complicated XML file editing, solutions for VirtualBox. Just use each type of interface configuration for what you need. Thank you!</p>


<p>Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2010/03/22/cloud-to-bare-metal/' rel='bookmark' title='Permanent Link: The Cloud to Bare Metal'>The Cloud to Bare Metal</a> <small>A Little Background It was the summer of 2008 when...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p><img src="http://feeds.feedburner.com/~r/JustinCarmony/~4/j2oOTarqbAI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.justincarmony.com/blog//2010/03/22/virtualbox-networking-setup/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		<feedburner:origLink>http://www.justincarmony.com/blog//2010/03/22/virtualbox-networking-setup/</feedburner:origLink></item>
		<item>
		<title>The Cloud to Bare Metal</title>
		<link>http://feedproxy.google.com/~r/JustinCarmony/~3/LnHarTKGjDw/</link>
		<comments>http://www.justincarmony.com/blog//2010/03/22/cloud-to-bare-metal/#comments</comments>
		<pubDate>Mon, 22 Mar 2010 06:02:22 +0000</pubDate>
		<dc:creator>Justin Carmony</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Servers]]></category>
		<category><![CDATA[system administration]]></category>
		<category><![CDATA[virtualization]]></category>

		<guid isPermaLink="false">http://www.justincarmony.com/blog/?p=545</guid>
		<description><![CDATA[A Little Background It was the summer of 2008 when I attended the LT Pact conference that I first drank the "Cloud Kool-Aid." As you can see from my notes, I was pretty excited about this whole concept. Excited enough, one client of mine signed up for Layered Tech's grid layer (which is what they [...]


Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2010/05/04/setting-up-nagios-for-servers/' rel='bookmark' title='Permanent Link: Setting up Nagios for Servers'>Setting up Nagios for Servers</a> <small>Ok, so I need to confess, I haven't been a...</small></li>
<li><a href='http://www.justincarmony.com/blog//2010/03/22/virtualbox-networking-setup/' rel='bookmark' title='Permanent Link: VirtualBox Networking Setup'>VirtualBox Networking Setup</a> <small>Every time I go to set up VirtualBox and several...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<h3>A Little Background</h3>
<p>It was the summer of 2008 when <a href="http://www.justincarmony.com/blog/2008/06/27/lt-pact-08-overview-of-experience/">I attended the LT Pact</a> conference that I first drank the "Cloud Kool-Aid." As you can see from my notes, I was pretty excited about this whole concept. Excited enough, one client of mine signed up for Layered Tech's grid layer (which is what they were demoing at the conference).</p>
<p>One interesting thing I heard at the LT Pact conference was one of their keynotes was as IT Researcher for Gartner. He outlined what phases the current industry would go through with "cloud computing":</p>
<ul>
<li>First, several early adopters would have great success implementing the technology.</li>
<li>Second, mainstream hype would "over-hype" cloud computing.</li>
<li>Due to the hype, many people would start "using the cloud" as a silver bullet, thinking the cloud would be perfect for anything.</li>
<li>A "cloud crash" would occur where disillusioned IT managers realized the cloud had its drawbacks, and wasn't the perfect solution for any problem. More over-hyped people will start to move away from the cloud.</li>
<li>After the dust had settled and the hype faded away, the actual cloud technology would find a common place in today's IT.</li>
</ul>
<p>Currently I think different people and groups are at different stages of the last three listed above. Some are still raving and hyping the cloud for everything. Some are <a href="http://alan.blog-city.com/has_amazon_ec2_become_over_subscribed.htm">bitter about their disillusionment</a>. Many are now <a href="http://www.infoworld.com/d/cloud-computing/cloud-versus-cloud-guided-tour-amazon-google-appnexus-and-gogrid-122">looking beyond the hype</a> at the real concepts behind "cloud computing" and finding "the services are wildly different. While many parts of Web hosting are pretty standard, the definition of 'cloud computing' varies widely." (<a href="http://www.infoworld.com/d/cloud-computing/cloud-versus-cloud-guided-tour-amazon-google-appnexus-and-gogrid-122">InfoWorld</a>)</p>
<blockquote><p>After a few hours, the fog of hype starts to lift and it becomes apparent that the clouds are pretty much shared servers just as the Greek gods are filled with the same flaws as earthbound humans. Yes, these services let you pull more CPU cycles from thin air whenever demand appears, but they can't solve the deepest problems that make it hard for applications to scale gracefully. Many of the real challenges lie at the architectural level, and simply pouring more server cycles on the fire won't solve fundamental mistakes in design.</p></blockquote>
<p>In a <a href="http://don.blogs.smugmug.com/2008/02/27/ec2-isnt-50-slower/">rebuttal blog post</a>, Don MacAskill defending accusations that EC2 was over 50% slower than stated. </p>
<blockquote><p>... let me explain what I think is happening: Amazon’s done a poor job at setting user expectations around how much compute power an instance has. And, to be fair, this really isn’t their fault – both AMD and Intel have been having a hard time conveying that very concept for a few years now...</p>
<p>Bottom line? EC2 is right on the money. Ted’s 2.0GHz Pentium 4 performed the benchmark almost exactly as fast as the Small (aka 1.7GHz old Xeon) instance. My 866MHz Pentium 3 was significantly slower, and my modern Opteron was significantly faster.</p>
<p>So what about that guy with the Ruby benchmark? Can you see what I missed, now? See, he’s using a Core 2 Duo. The Core line of processors has completely revolutionized Intel’s performance envelope, and thus, the Core processors preform much better for each clock cycle than the older Pentium line of CPUs. This is akin to AMD, which long ago gave up the GHz race, instead choosing to focus on raw performance (or, more accurately, performance per watt).</p></blockquote>
<h3>My Experiences</h3>
<p>Virtualized Servers can be awesome. They have some great advantages, while also having clear disadvantages (if you look beyond the hype). While I know I've quoted a lot about Amazon EC2, I have only experimented with it. However, I have a good deal of experience with <a href="http://www.3tera.com/AppLogic/">3Tera's AppLogic</a>, and have recently moved a website to <a href="http://www.rackspacecloud.com/">Rackspace Cloud</a>. </p>
<h3>Learning Curve</h3>
<p>While Rackspace Cloud was more straight forward, learning 3Tera's AppLogic is a large task. I spent several months learning a lot (and tearing my hair out some days) and then another year of learning to deal with it's quirks. It is pretty cool once you get it down, but in all honesty its features didn't line up with what the company using it needed. Every now and then we spin up a custom server for a website or something else. However, AppLogic is built more for people who are doing a large volume of similar instances. So while it works, it probably isn't the best fit for us. </p>
<p>Also, with AppLogic's components, they are engineered for very very specific tasks. Doing things outside of their scope *is* possible, however there was a vast amount of tinkering, reading, blood, sweat, and tears trying to get it to work. There are still things, like with the way AppLogic handle network routing, that are just unique at best. </p>
<h3>Bare Metal to The Cloud</h3>
<p>Each instance I've gone to deploy on the Cloud, either Rackspace Cloud, Amazon EC2, or AppLogic, the project itself had started on a dedicated server that we then moved to a virtualized server. Since when virtualized servers started to pop up, even in the earlier days of simple VPS solutions, you would be moving from dedicated bare metal to a virtual server. The inherit problem is that virtual servers, especially on shared hardware, have *less* resources available to them, especially CPU power. On Bare Metal Dedicated Servers, I rarely run into CPU issues. When the CPU power is being shared with several other "virtual servers", you suddenly only have a quarter of what was available.</p>
<p>Then you have your neighbors. While moving <a href="http://www.clipish.net/">Clipish</a> to the Rackspace Cloud the little 1GB RAM server felt peppy. I was confident in our choice. Clipish isn't complicated, and it's web services are pretty easy going. The only intense part is when you clear the image cache. Then when a web server request comes in and the image isn't there, it pulls the image from the Database, performs the ImageMagick operations to resize, watermark, create a thumbnail, etc on demand. During the early morning, it isn't a problem at all. However, one night I "cleared the cache" during peak times, and within minutes the server had locked up. </p>
<p>Turns out on our old server, the web services could easily burst to all 8 cores for a few minutes while regenerating hundreds of image caches. Even the Rackspace server could burst during off-peak hours and repopulate. However, during peak times, when the dozen or so "neighbors" we're using their allotted CPU, and our server couldn't "burst" like before. So what did we have to do? We wrote a script that would loop through our image library one at a time and regenerate it. This works, but after the move and we were experiencing these problems, we thought "did we make the right move to go to the cloud?"</p>
<h3>Cloud to Bare Metal</h3>
<p>I think the approach with the "cloud" needs to be this. You have your baby project, so throw it up on the cloud. Let it cost $15-$20 bucks a month. Take advantage of the daily backup snapshots, etc, and just worry about development. Let it grow and at some point you're going to hit a fork in the road:</p>
<ul>
<li><strong>Bare Metal Benefits outweigh Cloud Benefits</strong> - Bare Metal is typically cheaper than Cloud power. If you are not spinning up and down servers on a daily biases, but is a more fixed size, then quickly scaling isn't an issue. Cost can and should be a huge priority for hosting your application. If your application needs more higher CPU, Memory, or Bandwidth that doesn't fit the Cloud model then going Bare Metal is a good idea.
<li><strong>Cloud Benefits outweigh Bare Metal Benefits</strong> - If your application, however, can fit on the cloud and the budget at the same time, then it can be a beneficial to stay on the cloud. Just remember you can't expect a Cloud server to outperform a Bare Metal server of the same specs. But you can take advantage of things like spinning up new servers in minutes, take quick backups of virtual machines, etc.</li>
</ul>
<h3>Conclusion</h3>
<p>I guess my biggest advice when it comes to deciding on bare metal vs cloud is to understand the pros &#038; cons. Remember that while you <strong>can</strong> burst to more CPU, you shouldn't rely on that always being the case. The Cloud does afford some cool flexibility, but it isn't perfect, and it can be a lot more expensive than going bare metal. Also, if you're on bare metal, and moving to the cloud, the cost of raw power is a great deal more expensive on the Cloud. </p>


<p>Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2010/05/04/setting-up-nagios-for-servers/' rel='bookmark' title='Permanent Link: Setting up Nagios for Servers'>Setting up Nagios for Servers</a> <small>Ok, so I need to confess, I haven't been a...</small></li>
<li><a href='http://www.justincarmony.com/blog//2010/03/22/virtualbox-networking-setup/' rel='bookmark' title='Permanent Link: VirtualBox Networking Setup'>VirtualBox Networking Setup</a> <small>Every time I go to set up VirtualBox and several...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p><img src="http://feeds.feedburner.com/~r/JustinCarmony/~4/LnHarTKGjDw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.justincarmony.com/blog//2010/03/22/cloud-to-bare-metal/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.justincarmony.com/blog//2010/03/22/cloud-to-bare-metal/</feedburner:origLink></item>
		<item>
		<title>BestBuy Gives Me $8,770 — Wait, Just $87.00</title>
		<link>http://feedproxy.google.com/~r/JustinCarmony/~3/dOv1xLeaa28/</link>
		<comments>http://www.justincarmony.com/blog//2010/02/24/bestbuy-gives-me-8770-wait-just-87-00/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 23:01:37 +0000</pubDate>
		<dc:creator>Justin Carmony</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[bestbuy]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[Funny]]></category>
		<category><![CDATA[marketing]]></category>
		<category><![CDATA[mistakes]]></category>
		<category><![CDATA[oops]]></category>

		<guid isPermaLink="false">http://www.justincarmony.com/blog/?p=539</guid>
		<description><![CDATA[So I thought I would quickly throw this up here. I have a Best Buy within minutes of my house, and shop there frequently. Between a TV, and washer/dryer, we've spent enough money there to have a "Premier Silver" account. Today, I received an email from BestBuy with my correct account number, stating I had [...]


Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2009/09/23/my-iphone-has-hindered-my-email/' rel='bookmark' title='Permanent Link: My iPhone Has Hindered My Email'>My iPhone Has Hindered My Email</a> <small>What!? What is this that I speak of? My very...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>So I thought I would quickly throw this up here. I have a Best Buy within minutes of my house, and shop there frequently. Between a TV, and washer/dryer, we've spent enough money there to have a "Premier Silver" account. Today, I received an email from BestBuy with my correct account number, stating I had spent enough to keep my Premium Silver status. Then I looked up at how many points I had accumulated. 438,606 reward points! Right next to the points, it says they are worth a total of $8,770 dollars! I was shocked, which quickly turned to a chuckle. I knew it couldn't be right, since I hadn't spent even close to $8,770 dollars, so BestBuy must have found a crazy revenue stream to do this.</p>
<p><a href="http://www.justincarmony.com/blog/wp-content/uploads/2010/02/bestbuy-email.jpg"><img src="http://www.justincarmony.com/blog/wp-content/uploads/2010/02/bestbuy-email-300x290.jpg" alt="bestbuy-email" title="bestbuy-email" width="300" height="290" class="size-medium wp-image-540" /></a></p>
<p>So I went ahead and logged into my BestBuy account website. Sure enough, I only had 4,386 points worth about $87.00. Its amazing what a two digit difference can make. I wonder how many complaint phone calls BestBuy will field due to this error. I wonder which developer is to blame, and if he is going to get an ear full for this mistake. Personally, I always get very nervous when sending out mass emails. Especially when putting dollar amounts on them.</p>
<p><a href="http://www.justincarmony.com/blog/wp-content/uploads/2010/02/bestbuy-website.jpg"><img src="http://www.justincarmony.com/blog/wp-content/uploads/2010/02/bestbuy-website-300x288.jpg" alt="bestbuy-website" title="bestbuy-website" width="300" height="288" class="size-medium wp-image-541" /></a></p>
<p>Maybe I should call up and see if I can get them to honor their email.</p>


<p>Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2009/09/23/my-iphone-has-hindered-my-email/' rel='bookmark' title='Permanent Link: My iPhone Has Hindered My Email'>My iPhone Has Hindered My Email</a> <small>What!? What is this that I speak of? My very...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p><img src="http://feeds.feedburner.com/~r/JustinCarmony/~4/dOv1xLeaa28" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.justincarmony.com/blog//2010/02/24/bestbuy-gives-me-8770-wait-just-87-00/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.justincarmony.com/blog//2010/02/24/bestbuy-gives-me-8770-wait-just-87-00/</feedburner:origLink></item>
		<item>
		<title>The Skill of Making Habits</title>
		<link>http://feedproxy.google.com/~r/JustinCarmony/~3/6oTxT2z90CM/</link>
		<comments>http://www.justincarmony.com/blog//2010/02/04/the-skill-of-making-habits/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 16:39:17 +0000</pubDate>
		<dc:creator>Justin Carmony</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Goals]]></category>
		<category><![CDATA[habits]]></category>
		<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://www.justincarmony.com/blog/?p=537</guid>
		<description><![CDATA[Each New Year, people around the world make their resolutions. While I'm not big into making new year resolutions, I thought I would give it a shot. Well, one month later, I was only really successful at one of the goals. I've stopped drinking coke completely, and my overall sugary drink consumption has drastically dropped. [...]


Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2010/01/04/dear-2010-my-plans-for-next-year/' rel='bookmark' title='Permanent Link: Dear 2010 &#8211; My Plans for Next Year'>Dear 2010 &#8211; My Plans for Next Year</a> <small>Update: I started to write this post on the 31st,...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>Each New Year, people around the world make their resolutions. While I'm not big into making new year resolutions, I thought I would <a href="http://www.justincarmony.com/blog/2010/01/04/dear-2010-my-plans-for-next-year/">give it a shot</a>. Well, one month later, I was only really successful at one of the goals. I've stopped drinking coke completely, and my overall sugary drink consumption has drastically dropped. Instead of several cokes a day, it more of a root beer once or twice a week. However, my other major goal of working out every morning was a total flop.</p>
<p>Then I started to think about how people make changes in their lives. When I just focused on not drinking coke, it wasn't easy, but totally possible. They say it takes about <a href="http://answers.google.com/answers/threadview/id/786165.html">21 days to form a habit</a>. So instead of listing out a dozen goals at the beginning of the year, why not tackle a new one each month? Focus on one habit you want to create or change, spend the first 21 days creating it, and the remainder of the month keeping it. By the time the new month rolls around, your new habit is set and ready to go, and time to tackle a new habit.</p>
<p>One reason I believe setting one goal per month is typically one goal requires multiple changes. With giving up coke, I had to figure out what to replace it with. That means I had to keep our Brita pitcher full of water, which I had to make sure we had enough filters. When night time server emergencies occurred, or I had to drive late in the night, how could I get some caffeine? </p>
<p>So February I've made the goal to work out at least four times a week, hopefully five. That required me to get up earlier in the morning, which in turn means I had to go to bed earlier. I made sure I knew where my workout DVDs were at, that I pulled the weights out, and I had my workout clothes ready. That way, when my alarm went off, I could get up and go work out.</p>
<p>I can say, this week, I've worked out 3 days and tomorrow will make a fourth. Its not easy, but taking one habit at a time makes it totally possible. So from now on, each month, I'm going to tackle one habit. I have a theory, that the ability to make and change habits is an actual skill. Maybe down the road I'll be able to make two, or even three habits a month. I'll keep posting updates with how things are going.</p>
<p>For March, I think I'm going make it a habit to bring my lunch to work each day, which will help me eat healthier and save some money. My suggestion to anyone who wants to make some changes in their life, take it one habit at a time each month.</p>


<p>Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2010/01/04/dear-2010-my-plans-for-next-year/' rel='bookmark' title='Permanent Link: Dear 2010 &#8211; My Plans for Next Year'>Dear 2010 &#8211; My Plans for Next Year</a> <small>Update: I started to write this post on the 31st,...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p><img src="http://feeds.feedburner.com/~r/JustinCarmony/~4/6oTxT2z90CM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.justincarmony.com/blog//2010/02/04/the-skill-of-making-habits/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.justincarmony.com/blog//2010/02/04/the-skill-of-making-habits/</feedburner:origLink></item>
		<item>
		<title>PHP HipHop – What It Means</title>
		<link>http://feedproxy.google.com/~r/JustinCarmony/~3/QTUI7KkJH98/</link>
		<comments>http://www.justincarmony.com/blog//2010/02/03/php-hiphop-what-it-means/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 16:32:04 +0000</pubDate>
		<dc:creator>Justin Carmony</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[hiphop]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[scaling]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.justincarmony.com/blog/?p=527</guid>
		<description><![CDATA[There has been a lot of speculation about PHP, Facebook, and a big announcement. Over the last few weeks, several predominate PHP community members were invited to the Facebook offices to check something out. Facebook asked the PHP members, as Ben Ramsey put it, to "make a gentleman's agreement that I wouldn't talk until FB [...]


Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2009/09/14/so-you-want-to-be-a-web-developer/' rel='bookmark' title='Permanent Link: So You Want To Be A Web Developer?'>So You Want To Be A Web Developer?</a> <small>&lt;tangent&gt; This last week I've been talking with my brother...</small></li>
<li><a href='http://www.justincarmony.com/blog//2009/09/16/speaking-utah-open-source-conference-2009/' rel='bookmark' title='Permanent Link: Speaking: Utah Open Source Conference 2009'>Speaking: Utah Open Source Conference 2009</a> <small>I will be speaking this year at the Utah Open...</small></li>
<li><a href='http://www.justincarmony.com/blog//2010/04/16/hackutos-april-24-2010/' rel='bookmark' title='Permanent Link: #hackUTOS &#8211; April 24, 2010'>#hackUTOS &#8211; April 24, 2010</a> <small>I've been busy with several blog post floating around in...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.justincarmony.com/blog/wp-content/uploads/2010/02/HipHop_logo_white.png" alt="HipHop_logo_white" title="HipHop_logo_white" width="106" height="139" class="alignright size-full wp-image-526" /> There has been a lot of <a href="http://www.readwriteweb.com/archives/facebook_gets_faster_debuts_homegrown_php_compiler.php" target="_blank">speculation</a> about PHP, Facebook, and a big announcement. Over the last few weeks, several predominate PHP community members were invited to the Facebook offices to check something out. Facebook asked the PHP members, as Ben Ramsey put it, to "make a gentleman's agreement that I wouldn't talk until FB is ready." </p>
<p>Well, Facebook has made their <a href="http://developers.facebook.com/news.php?blog=1&#038;story=358" target="_blank">announcement</a>, and it is called HipHop.  Here is an excerpt:</p>
<blockquote><p>Today I'm excited to share the project a small team of amazing people and I have been working on for the past two years; HipHop for PHP. With HipHop we've reduced the CPU usage on our Web servers on average by about fifty percent, depending on the page. Less CPU means fewer servers, which means less overhead. This project has had a tremendous impact on Facebook. We feel the Web at large can benefit from HipHop, so we are releasing it as open source this evening in hope that it brings a new focus toward scaling large complex websites with PHP. While HipHop has shown us incredible results, it's certainly not complete and you should be comfortable with beta software before trying it out.</p>
<p>HipHop for PHP isn't technically a compiler itself. Rather it is a source code transformer. HipHop programmatically transforms your PHP source code into highly optimized C++ and then uses g++ to compile it. HipHop executes the source code in a semantically equivalent manner and sacrifices some rarely used features — such as eval() — in exchange for improved performance. HipHop includes a code transformer, a reimplementation of PHP's runtime system, and a rewrite of many common PHP Extensions to take advantage of these performance optimizations.</p></blockquote>
<p>Marco Tabini has a nice <a href="http://blog.tabini.ca/2010/02/hiphop-what-you-need-to-know/" target="_blank">summary</a> on what PHP need to know about HipHop. However, people I've talked to have had several opinions on HipHop, ranging from pure delight to doubts to indifference. Personally I think this is a great thing for PHP, and I'll tell you why.</p>
<p><strong>HipHop will enabled business to pick a web scripting language and use it from start-up to internet-giant.</strong> While HipHop isn't the first tool used to speed up PHP, such as APC, Memcached, and others; it is more of a current reminder: PHP is serious about the web. For people already using PHP, this is just a nice feature. For those who aren't using PHP, it shows that it is a <strong><em>very</em></strong> strong candidate. </p>
<p>I've worked in a non LAMP shop before. To non-PHP people, it has the stigma, regardless of <em>actual</em> performance, of being hard to scale. It is a "scripted language", and in the Java / .NET world where I was working, it was looked at as being an absurd choice. Now, PHP can make a strong case of being able to mature with your application and scale appropriately. </p>
<p>One fear that I have as a Project Manager, and anyone has who decided on the technology that they will implement, is "picking the wrong team." During my .NET days, Microsoft's team announced a new technology for .NET applications. It showed a lot of promise and simplified some things that were a pain in .NET. Our team adopted the new technology and ran with it. It wasn't perfect, but we liked it. Less than a year later, Microsoft announced that it would be moving the project to a drastically different team, which basically meant "there wasn't enough adoption, so we're putting this project on the back burner." The new team was basically to maintain the code forward, but not develop new features.</p>
<p>What happened is we invested on this new technology, and we saw the potential it would have in the future. We lost our investment, since that future potential would never be realized. Now our projects had this new technology embedded in many spots. Re-writing those places would take a great deal of time. From a Project Manager perspective, it was a poor choice.</p>
<p>For PHP, the emergence of HipHop, a concept that is working across thousands of production servers, it sends a <strong>strong message</strong> to the web development community as a whole. <strong>Not only is PHP widely adopted, flexible yet powerful, and easy to implement. PHP is competitive, and is continually evolving to adapt to web developer's needs.</strong> It is a safe bet for many projects, and it isn't going anywhere but up.</p>
<p>Will I be implementing HipHop right now? Probably not. Ilia Alshanetsky has a very healthy <a href="http://ilia.ws/archives/213-My-Thoughts-on-HipHop.html#extended" target="_blank">reality check</a> on what HipHop is for. But the bottom line is I don't need what HipHop is offering <em>yet</em>. I can see very great uses in the future for Dating DNA's compatibility generation, as well as certain pieces of other PHP projects that could use a serious performance boost. But for now, my Blog will not be HipHoping along. I'm excited for not only what HipHop does, but what it's greater underlining meaning as a whole with PHP.</p>


<p>Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2009/09/14/so-you-want-to-be-a-web-developer/' rel='bookmark' title='Permanent Link: So You Want To Be A Web Developer?'>So You Want To Be A Web Developer?</a> <small>&lt;tangent&gt; This last week I've been talking with my brother...</small></li>
<li><a href='http://www.justincarmony.com/blog//2009/09/16/speaking-utah-open-source-conference-2009/' rel='bookmark' title='Permanent Link: Speaking: Utah Open Source Conference 2009'>Speaking: Utah Open Source Conference 2009</a> <small>I will be speaking this year at the Utah Open...</small></li>
<li><a href='http://www.justincarmony.com/blog//2010/04/16/hackutos-april-24-2010/' rel='bookmark' title='Permanent Link: #hackUTOS &#8211; April 24, 2010'>#hackUTOS &#8211; April 24, 2010</a> <small>I've been busy with several blog post floating around in...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p><img src="http://feeds.feedburner.com/~r/JustinCarmony/~4/QTUI7KkJH98" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.justincarmony.com/blog//2010/02/03/php-hiphop-what-it-means/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.justincarmony.com/blog//2010/02/03/php-hiphop-what-it-means/</feedburner:origLink></item>
		<item>
		<title>Google Apps Dropping IE 6</title>
		<link>http://feedproxy.google.com/~r/JustinCarmony/~3/0ZUX39k91uY/</link>
		<comments>http://www.justincarmony.com/blog//2010/02/02/google-apps-dropping-ie-6/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 16:16:59 +0000</pubDate>
		<dc:creator>Justin Carmony</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Browsers]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.justincarmony.com/blog/?p=521</guid>
		<description><![CDATA[This morning I found this email in my inbox. I use Google Apps to host my email and calendars, which works really slick and is fabulous. Here is the email: Dear Google Apps admin,​ In order to continue to improve our products and deliver more sophisticated features and performance, we are harnessing some of the [...]


Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2009/09/23/my-iphone-has-hindered-my-email/' rel='bookmark' title='Permanent Link: My iPhone Has Hindered My Email'>My iPhone Has Hindered My Email</a> <small>What!? What is this that I speak of? My very...</small></li>
<li><a href='http://www.justincarmony.com/blog//2009/09/15/jquery-tip-better-toggle/' rel='bookmark' title='Permanent Link: jQuery Tip: Better Toggle'>jQuery Tip: Better Toggle</a> <small>For many web developers, jQuery is the most awesome JavaScript...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>This morning I found this email in my inbox. I use Google Apps to host my email and calendars, which works really slick and is fabulous. Here is the email:</p>
<blockquote><p>Dear Google Apps admin,​</p>
<p>In order to continue to improve our products and deliver more sophisticated features and performance, we are harnessing some of the latest improvements in web browser technology.  This includes faster JavaScript processing and new standards like HTML5.  As a result, over the course of 2010, <strong>we will be phasing out support for Microsoft Internet Explorer 6.0 ​as well as other older browsers that are not supported by their own manufacturers.</strong></p>
<p>We plan to begin phasing out support of these older browsers on the Google Docs suite and the Google Sites editor on March 1, 2010.  After that point, certain functionality within these applications may have higher latency and may not work correctly in these older browsers. <strong>Later in 2010, we will start to phase out support for these browsers for Google Mail and Google Calendar.</strong></p>
<p>Google Apps will continue to support Internet Explorer 7.0 and above, Firefox 3.0 and above, Google Chrome 4.0 and above, and Safari 3.0 and above.</p>
<p>Starting this week, users on these older browsers will see a message in Google Docs and the Google Sites editor explaining this change and asking them to upgrade their browser.  We will also alert you again closer to March 1 to remind you of this change.</p>
<p>In 2009, the Google Apps team delivered more than 100 improvements to enhance your product experience.  We are aiming to beat that in 2010 and continue to deliver the best and most innovative collaboration products for businesses.</p>
<p>Thank you for your continued support!</p>
<p>Sincerely,</p>
<p>The Google Apps team</p></blockquote>
<p>For all Web Developers around the world, we should all be rejoicing! Having a large internet giant telling its consumers to "drop IE 6" and other older browsers will make all our lives easy. I remember while working on a very large site, we used PNG images sparely for some background images. The deadline was extremely tight, but we were (barely) on schedule. Out of the blue I get an email forwarded to me from the marketing director for the client, and it went something like this:</p>
<blockquote><p>Why are all the backgrounds looking nothing like the mock? Its all a funny blue.</p></blockquote>
<p>Of course, the Marketing Director had IE 6. Whats worse, is that he was working for a very large computer technology business. We had to drop everything and apply ugly IE 6 hacks to enable PNG support. At the time, I tried explaining that the browser he was using was released while I was still in highschool, but he didn't understand. Hopefully now the big internet giants will start telling people "Get off IE 6." Once people adapt better browsers, the more we can do with the web.</p>


<p>Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2009/09/23/my-iphone-has-hindered-my-email/' rel='bookmark' title='Permanent Link: My iPhone Has Hindered My Email'>My iPhone Has Hindered My Email</a> <small>What!? What is this that I speak of? My very...</small></li>
<li><a href='http://www.justincarmony.com/blog//2009/09/15/jquery-tip-better-toggle/' rel='bookmark' title='Permanent Link: jQuery Tip: Better Toggle'>jQuery Tip: Better Toggle</a> <small>For many web developers, jQuery is the most awesome JavaScript...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p><img src="http://feeds.feedburner.com/~r/JustinCarmony/~4/0ZUX39k91uY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.justincarmony.com/blog//2010/02/02/google-apps-dropping-ie-6/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://www.justincarmony.com/blog//2010/02/02/google-apps-dropping-ie-6/</feedburner:origLink></item>
		<item>
		<title>Joining a Startup – The Advantages</title>
		<link>http://feedproxy.google.com/~r/JustinCarmony/~3/kxBuhnNEY9o/</link>
		<comments>http://www.justincarmony.com/blog//2010/01/21/joining-a-startup-the-advantages/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 06:50:36 +0000</pubDate>
		<dc:creator>Justin Carmony</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Education]]></category>
		<category><![CDATA[fun]]></category>
		<category><![CDATA[jobs]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[startups]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.justincarmony.com/blog/?p=513</guid>
		<description><![CDATA[While going through my backlog of my RSS feeds. I stumbled on Keith Casey's post on Joining a Startup. He wrote it as a "reality check" for people who are considering joining a startup as a developer. Here is a snip-it: First, everyone does everything. Check your ego at the door. In the first startup [...]


Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2010/02/02/google-apps-dropping-ie-6/' rel='bookmark' title='Permanent Link: Google Apps Dropping IE 6'>Google Apps Dropping IE 6</a> <small>This morning I found this email in my inbox. I...</small></li>
<li><a href='http://www.justincarmony.com/blog//2010/02/03/php-hiphop-what-it-means/' rel='bookmark' title='Permanent Link: PHP HipHop &#8211; What It Means'>PHP HipHop &#8211; What It Means</a> <small>There has been a lot of speculation about PHP, Facebook,...</small></li>
<li><a href='http://www.justincarmony.com/blog//2009/09/24/article-why-developers-get-fired/' rel='bookmark' title='Permanent Link: Article: Why Developers Get Fired'>Article: Why Developers Get Fired</a> <small>Here is an article that showed up on my RSS...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>While going through my backlog of my RSS feeds. I stumbled on <a href="http://caseysoftware.com/blog/joining-a-startup" target="blank">Keith Casey's post on Joining a Startup</a>. He wrote it as a "reality check" for people who are considering joining a startup as a developer. Here is a snip-it:</p>
<blockquote><p>First, everyone does everything. Check your ego at the door. In the first startup I was with, I was in charge of adding reporting to the eCommerce application and taking the garbage out. Was it an effective use of my time? Not at all. Did it have to be done? Yes. Did we have the money to hire someone else? Nope. If your startup is renting office space, you probably won't have to worry about this... but who signs for packages? Who re-orders coffee? On the flip side, you could be the one taking technical questions at the next investor pitch or invited to the big customer Christmas party.</p></blockquote>
<p>I thought he hit the nail on the head with the article. Over the last few years I've worked with three startups, one of which was successfully bought by a large corporation. The other two have successfully gained some good revenue, but are still in the "Looking for More Money" phase, and I continue to do work for them on a contractual basis.</p>
<p>My only concern was that at the end of the article, he only mentions that he is still okay with working for a startup. He didn't mention some of the biggest "perks" I consider working for a startup. So here are some of the items that, if you can handle the "draw backs", are some great things. These are not "guaranteed", as each startup is different, but typically you'll find some of these.</p>
<ul>
<li><strong>Accelerated Learning</strong> - I've felt that I've learned at such a faster rate while working in a startup. In large development teams, you typically work on very specific things. Your team only works on one part of a larger project or product. However, with the startup, you typically have to do a lot more varied work. At Ambient, the company that was sold, I was a junior developer of a company of three developers. Here is the list of <strong><em>some</em></strong> of stuff I did in roughly one year:
<ul>
<li>Company Website</li>
<li>All Web Services</li>
<li>All Web Designs</li>
<li>Website Demos &#038; Prototypes</li>
<li>Data Mining Services</li>
<li>Executive Dashboard</li>
<li>Sales &#038; Inventory Reporting Website</li>
<li>Customizable Online DVD Rental System</li>
</ul>
<p>Not only did I work almost exclusively on these projects, they integrated with the pieces the other two developers worked on. For three developers, we cranked out a lot of great software. Since I was the junior developer, when ever we had a tech support issue that was a little too complicated for our two tech support guys, I had to diagnose and solve a lot of complicated issues. I got experience with VPNs, LDAP and Active Directory, very large databases (100,000,000+ rows), VNC &#038; RDP, and automated deployments across thousands of remote locations, to name a few. </p>
<p>If you enjoy getting your hands on a lot of different technologies, and do a lot more than in a normal company, you can really learn a lot at a startup.</li>
<li><strong>Less Politics, More Work</strong> - While I know this doesn't apply to all startups, the ones I've worked in seem to have a lot less politics than other companies. I believe its because, first of all, there are less people to have politics with. Second, there is way to much work to get done to spend time on playing politics. Everyone seems to just be focused on getting work done.</li>
<li><strong>More Input, More Direction</strong> - While working in a startup, I've found that I have a lot more say in how we do things compared to other companies. Creativity isn't just a bonus, it is a requirement. Many times you are working on an idea, not a detailed specification. Your creativity is required to make the idea fully functional and work properly. I've found many times my ideas are implemented, and while looking at the final product, I can see my influences all over the place.</li>
<li><strong>Closer Team, Fewer Annoying Co-workers</strong> - Some may think this is a myth, however what I have experienced is startups don't have time to put up with teams that don't work well together. For the exception of one guy who was really nice, but a major pain to work with, I've enjoyed working with all my co-workers and (I hope they can say the same about me). Typically people who don't enjoy the fast pace leave after a short while. If there is an employee who doesn't get along with the others, typically they will go find work elsewhere because the stress of the pace <em><strong>and</strong></em> not getting along well with others compound out of control. Even if they don't leave on their own, management will usually find some solution, because a team that doesn't work well together won't produce the needed products to make a success. Unlike a large corporation, there isn't anywhere to hide bad workers. If you're not carrying your own weight, you're gone.</li>
<li><strong>No Boredom, High Adrenaline </strong>- The pace can be stressful, but I found it most of the time exhilarating. There is never, ever a lack of work. Currently for the two startups I'm doing work for, there are years and years worth of work I can do. Sometimes the deadlines can be a killer, but meeting them is very rewarding. Its an awesome feeling when your team of two developers and one project manager create a product that out performs &amp; demolishes competing products from large, well established companies.</li>
<li><strong>High Levels of Satisfaction</strong> - I personally feel I get more out of working for a successful startup. Since developers will produce more code and applications than in other companies, there is more to be proud of. If you're team is really tight, and a few of you create an amazing product, it is an amazing feeling.</li>
</ul>
<p>So while startups are not for everyone, and they have their drawbacks, I believe certain types of developers can find rewarding work in them. I know I've been lucky to work on some excellent products, and I haven't had an experience (yet) where I've gotten burned. Maybe the things I've mentioned aren't as common as I think, but I truly believe startups offer opportunities for developers to really accelerate their learning and excel at rewards jobs.</p>


<p>Related posts:<ol><li><a href='http://www.justincarmony.com/blog//2010/02/02/google-apps-dropping-ie-6/' rel='bookmark' title='Permanent Link: Google Apps Dropping IE 6'>Google Apps Dropping IE 6</a> <small>This morning I found this email in my inbox. I...</small></li>
<li><a href='http://www.justincarmony.com/blog//2010/02/03/php-hiphop-what-it-means/' rel='bookmark' title='Permanent Link: PHP HipHop &#8211; What It Means'>PHP HipHop &#8211; What It Means</a> <small>There has been a lot of speculation about PHP, Facebook,...</small></li>
<li><a href='http://www.justincarmony.com/blog//2009/09/24/article-why-developers-get-fired/' rel='bookmark' title='Permanent Link: Article: Why Developers Get Fired'>Article: Why Developers Get Fired</a> <small>Here is an article that showed up on my RSS...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p><img src="http://feeds.feedburner.com/~r/JustinCarmony/~4/kxBuhnNEY9o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.justincarmony.com/blog//2010/01/21/joining-a-startup-the-advantages/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.justincarmony.com/blog//2010/01/21/joining-a-startup-the-advantages/</feedburner:origLink></item>
	</channel>
</rss>
