<?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>Programmer&#039;s Paradox &#187; General</title>
	<atom:link href="http://www.programmersparadox.com/category/general/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.programmersparadox.com</link>
	<description></description>
	<lastBuildDate>Wed, 07 Dec 2011 15:18:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Checking out a branch from Github</title>
		<link>http://www.programmersparadox.com/2011/12/07/checking-out-a-branch-from-github/</link>
		<comments>http://www.programmersparadox.com/2011/12/07/checking-out-a-branch-from-github/#comments</comments>
		<pubDate>Wed, 07 Dec 2011 15:18:10 +0000</pubDate>
		<dc:creator>Mark Mzyk</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[branch]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[github]]></category>

		<guid isPermaLink="false">http://www.programmersparadox.com/?p=1491</guid>
		<description><![CDATA[These are the set of commands to checkout a branch of a repository from Github, which is not immediately obvious the first time you try it. First clone the repo if you haven&#8217;t: git clone url-to-repo-you-want Clone has already checked out the branches, but it only initially creates the master branch. You have to tell [...]<p><br/><br/><a href="http://www.programmersparadox.com/2011/12/07/checking-out-a-branch-from-github/">Checking out a branch from Github</a></p>
]]></description>
			<content:encoded><![CDATA[<p>These are the set of commands to checkout a branch of a repository from Github, which is not immediately obvious the first time you try it.</p>
<p>First clone the repo if you haven&#8217;t:</p>
<p><code>git clone url-to-repo-you-want</code></p>
<p>Clone has already checked out the branches, but it only initially creates the master branch. You have to tell it to create the other branches you might want.</p>
<p>To do that:</p>
<p><code>git checkout -t origin/branch-name</code></p>
<p>This will checkout and create a branch that has the name branch-name and that tracks the remote branch at origin/branch-name.</p>
<p>If you want your branch to have a different name from the remote branch:</p>
<p><code>git checkout -t -b your-branch-name origin/branch-name</code></p>
<p>This creates a branch with your-branch-name that tracks the branch at origin/branch-name.</p>
<p>Because these commands uses checkout you will then have the new branch as your current working branch. You can use git branch with the -t (&#8211;track) flag to create the branch without switching to it.</p>
<p>If you&#8217;re working in a repo you&#8217;ve already cloned and want to checkout a newer branch, it maybe necessary to do a git fetch first to make sure your local checkout knows about the remote branch before you create a local branch.</p>
<p><br/><br/><a href="http://www.programmersparadox.com/2011/12/07/checking-out-a-branch-from-github/">Checking out a branch from Github</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.programmersparadox.com/2011/12/07/checking-out-a-branch-from-github/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Becoming A Chef</title>
		<link>http://www.programmersparadox.com/2011/11/07/becoming-a-chef/</link>
		<comments>http://www.programmersparadox.com/2011/11/07/becoming-a-chef/#comments</comments>
		<pubDate>Mon, 07 Nov 2011 22:05:35 +0000</pubDate>
		<dc:creator>Mark Mzyk</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[chef]]></category>
		<category><![CDATA[icontact]]></category>
		<category><![CDATA[opscode]]></category>

		<guid isPermaLink="false">http://www.programmersparadox.com/?p=1461</guid>
		<description><![CDATA[It&#8217;s certainly true that you can&#8217;t guess the path your life will take. When I was a child I remember looking at my father, who was a career military man, and thinking that I&#8217;d go to college, graduate, find a good company to work for, and stay there the rest of my working life until [...]<p><br/><br/><a href="http://www.programmersparadox.com/2011/11/07/becoming-a-chef/">Becoming A Chef</a></p>
]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s certainly true that you can&#8217;t guess the path your life will take. When I was a child I remember looking at my father, who was a career military man, and thinking that I&#8217;d go to college, graduate, find a good company to work for, and stay there the rest of my working life until I retired.</p>
<p>It turns out that in my fourth year out of college I am already working at my fourth job. I intend to stay at this one for a while. While I enjoyed my time at <a href="http://www.icontact.com/">iContact</a> and thank them for everything they did for me, on October 17th I started work for <a href="http://www.opscode.com/">Opscode</a>, the company behind <a href="https://github.com/opscode/chef">Chef</a>.</p>
<p>The Opscode team is an amazing group and I lept at the chance to go work for them. It&#8217;s a change to go from scaling email sending to infrastructure automation, but I&#8217;m excited at the challenge. It&#8217;s yet another interesting problem to vex me until I conquer it.</p>
<p>It&#8217;s time to further sharpen my skills and help companies Rule the Cloud.</p>
<p>&nbsp;</p>
<p style="text-align: center;"><a href="http://www.programmersparadox.com/wp-content/uploads/2011/11/Knives1.jpg"><img class="aligncenter size-full wp-image-1466" title="Knives" src="http://www.programmersparadox.com/wp-content/uploads/2011/11/Knives1.jpg" alt="" width="500" height="375" /></a></p>
<p style="text-align: center;"><a href="http://www.flickr.com/photos/sfllaw/7908295/">Knives</a> / <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC License</a><a href="http://www.programmersparadox.com/wp-content/uploads/2011/11/Knives.jpg"><br />
</a></p>
<p><br/><br/><a href="http://www.programmersparadox.com/2011/11/07/becoming-a-chef/">Becoming A Chef</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.programmersparadox.com/2011/11/07/becoming-a-chef/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing Java 7 and JRuby on Mac OS X Lion</title>
		<link>http://www.programmersparadox.com/2011/08/24/installing-java-7-and-jruby-on-mac-os-x-lion/</link>
		<comments>http://www.programmersparadox.com/2011/08/24/installing-java-7-and-jruby-on-mac-os-x-lion/#comments</comments>
		<pubDate>Thu, 25 Aug 2011 02:56:48 +0000</pubDate>
		<dc:creator>Mark Mzyk</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.programmersparadox.com/?p=1391</guid>
		<description><![CDATA[I currently have a project that I&#8217;m evaluating using JRuby for. The first step in the evaluation is of course to set everything up. While I could have installed JRuby and let it run with the version of Java already available on Mac OS X Lion, I opted to be on the edge. That means [...]<p><br/><br/><a href="http://www.programmersparadox.com/2011/08/24/installing-java-7-and-jruby-on-mac-os-x-lion/">Installing Java 7 and JRuby on Mac OS X Lion</a></p>
]]></description>
			<content:encoded><![CDATA[<p>I currently have a project that I&#8217;m evaluating using JRuby for. The first step in the evaluation is of course to set everything up. While I could have installed JRuby and let it run with the version of Java already available on Mac OS X Lion, I opted to be on the edge. That means installing the latest OpenJDK Mac OS X port of Java 7 and installing JRuby on top of it.</p>
<p>These are the directions of how I did that.</p>
<p>These steps can be found in other places, but my hope is that by collecting them all in one place I make it easier for others.</p>
<p><strong>First stop, Java.</strong></p>
<p>Java 7 is not yet officially out for Lion, but it is possible to install a Mac OS X port early release version without too much trouble.</p>
<p>The directions are available on the <a href="http://wikis.sun.com/display/OpenJDK/Mac+OS+X+Port+Prerequisites">OpenJDK Mac OS X Port page</a>.</p>
<p>First make sure you meet the prerequisites, such as having a 64 bit capable machine, having Lion, having the latest Xcode installed (Version 4.1, <a href="http://itunes.apple.com/us/app/xcode/id448457090?mt=12">available through the Mac app store for free</a>).</p>
<p>Once you&#8217;ve verified the prerequisites and installed Xcode 4.1 if you need it, you&#8217;ll need to download Apple&#8217;s preview of Java 7. This doesn&#8217;t install Java 7, but it is necessary so that you have the proper APIs for Java 7 to work on the Mac.</p>
<p>To download it, go to <a href="http://connect.apple.com/">connect.apple.com</a>.</p>
<p>You will need to log in using your Apple Id and password. You can register if you don&#8217;t have one.</p>
<p>Once in, navigate to the Java section. You&#8217;ll then want to download the latest disk image for Lion, which as of this writing is <em>Java for 10.7 &#8211; 11M3504 (Disk Image)</em>.</p>
<p>Once the download is complete, run the disk image and install it.</p>
<p>Next you&#8217;ll need to follow further directions from the Mac OS X Ports page, found <a href="http://wikis.sun.com/display/OpenJDK/Mac+OS+X+Port">here</a>.</p>
<p>The directions will tell you how to install a preview version of Java 7 on Lion. You can either build it from source or download an unofficial build. I opted to download the <a href="http://code.google.com/p/openjdk-osx-build/downloads/list?q=label:Featured">latest unofficial build</a>, which is <em>OpenJDK-OSX-1.7-universal-20110822.dmg</em> at the time of this writing.</p>
<p>Once downloaded, install it.</p>
<p>Now Java 7 is on your system, but it won&#8217;t be the default Java. To make it the default Java, launch:</p>
<blockquote><p>/Applications/Utilities/Java Preferences.app</p></blockquote>
<p>and drag both of the OpenJDK 7 entries to the top of the list. Then close the Java Preferences app. Java 7 is now installed on your system and is the default.</p>
<p>To make sure Java 7 is the default, launch a terminal and run <code>java -version</code>.</p>
<p>You should see output that looks similar to this:</p>
<blockquote><p><code>openjdk version "1.7.0-internal"<br />
OpenJDK Runtime Environment (build 1.7.0-internal-b00)<br />
OpenJDK 64-Bit Server VM (build 21.0-b17, mixed mode)</code></p></blockquote>
<p><strong>It&#8217;s onto JRuby.</strong></p>
<p>Download the latest JRuby from <a href="http://jruby.org/">jruby.org</a> (as of this writing, it is 1.6.4).</p>
<p>I downloaded the tar ball. Extract it. It will place a jruby-1.6.4 folder wherever you extracted it to.</p>
<p>Move the folder to the location you want it on your system, if it isn&#8217;t already there.</p>
<p>Add the bin folder from the jruby folder you extracted to your system path. Good directions can be found at <a href="http://hathology.com/2008/06/how-to-edit-your-path-environment-variables-on-mac-os-x/">Hathology.com</a>. Note that those directions modify the path for every user on the system, not just a single user.</p>
<p>Once that is done, close and restart any terminals you have open. Then type <code>jruby -v</code> and you should see this:</p>
<blockquote><p><code>jruby 1.6.4 (ruby-1.8.7-p330) (2011-08-23 17ea768) (OpenJDK 64-Bit Server VM 1.7.0-internal) [darwin-x86_64-java]</code></p></blockquote>
<p>Success. You&#8217;re now running JRuby with Java 7 on Mac OS X Lion.</p>
<p>Since the Java 7 isn&#8217;t an official version, I can&#8217;t promise there won&#8217;t be bugs or other weirdness, but that&#8217;s the fun of living on the edge.</p>
<p style="text-align: center;"><a href="http://www.programmersparadox.com/wp-content/uploads/2011/08/jrubyconf1.jpg"><img class="size-full wp-image-1419 aligncenter" title="jrubyconf" src="http://www.programmersparadox.com/wp-content/uploads/2011/08/jrubyconf1.jpg" alt="" width="425" height="640" /></a></p>
<p style="text-align: center;"><a href="http://www.flickr.com/photos/bendjsf/4100504025/">JRubyConf Post Design</a> / <a href="http://creativecommons.org/licenses/by-nc/2.0/">CC License </a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><br/><br/><a href="http://www.programmersparadox.com/2011/08/24/installing-java-7-and-jruby-on-mac-os-x-lion/">Installing Java 7 and JRuby on Mac OS X Lion</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.programmersparadox.com/2011/08/24/installing-java-7-and-jruby-on-mac-os-x-lion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Code Coffee Raleigh</title>
		<link>http://www.programmersparadox.com/2011/07/20/code-coffee-raleigh/</link>
		<comments>http://www.programmersparadox.com/2011/07/20/code-coffee-raleigh/#comments</comments>
		<pubDate>Wed, 20 Jul 2011 18:14:02 +0000</pubDate>
		<dc:creator>Mark Mzyk</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.programmersparadox.com/?p=1370</guid>
		<description><![CDATA[When you&#8217;re in software development for even a short time, you learn that developers love coffee more than almost anything else, except code. Perhaps only beer can rival coffee. You also learn that developers love meetups. If a new language or technology shows up, no matter how obscure, a meetup will spring into being to [...]<p><br/><br/><a href="http://www.programmersparadox.com/2011/07/20/code-coffee-raleigh/">Code Coffee Raleigh</a></p>
]]></description>
			<content:encoded><![CDATA[<p>When you&#8217;re in software development for even a short time, you learn that developers love coffee more than almost anything else, except code. Perhaps only beer can rival coffee.</p>
<p>You also learn that developers love meetups. If a new language or technology shows up, no matter how obscure, a meetup will spring into being to support it. That doesn&#8217;t always mean many developers will go, but the mere fact that the meetup exists is enough.</p>
<p>For some odd reason though, coffee and meetups don&#8217;t often intermingle. Meetups normally happen at night, so beer and meetups are far more common. This is a reprehensible state of affairs.</p>
<p>To remedy this, I&#8217;m announcing <a href="http://www.codecoffeeraleigh.com/">Code Coffee Raleigh</a>, a currently once a month gathering of developers over coffee in the morning. I&#8217;m not the first to have this idea, not by a <a href="http://agile.dzone.com/articles/code-and-coffee-save-yourself?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+zones%2Fcss+(CSS+Zone)">long shot</a>, but as far as I know no gathering of software minds over coffee currently exists in Raleigh.</p>
<p>I&#8217;m not specifically calling this a meetup: there&#8217;s no place to sign up and no member count. All it needs is you to show up, ready to drink coffee and talk code. <a href="http://www.codecoffeeraleigh.com/">Details are on the website</a>.</p>
<p>The first happening is tomorrow, July 21, starting at 7:30 am, going until people have to leave. The place is <a href="http://www.newworldcoffeehouse.com/">New World Coffee House</a>, although I haven&#8217;t told them we&#8217;re coming, so let&#8217;s be courteous and try not to overrun the place.</p>
<p>I hope to see you there. If you can&#8217;t make it, I hope to see you at future meetings. That being said, you don&#8217;t have to wait for me to grab some coffee and code. Nothing about this process is unique to me, so feel free to start your own gathering. I&#8217;ve even put the <a href="https://github.com/mmzyk/Code-Coffee-Raleigh">website code on github</a> if you want it.</p>
<p>Happy drinking and coding.</p>
<p style="text-align: center;"><a href="http://www.programmersparadox.com/wp-content/uploads/2011/07/ritual.jpg"><img class="size-medium wp-image-1378" title="ritual" src="http://www.programmersparadox.com/wp-content/uploads/2011/07/ritual-223x300.jpg" alt="" width="223" height="300" /></a></p>
<p style="text-align: center;"><a href="http://www.flickr.com/photos/tonx/5715891055/in/photostream">ritual</a> / <a href="http://creativecommons.org/licenses/by-nc-sa/2.0/">CC License</a></p>
<p><br/><br/><a href="http://www.programmersparadox.com/2011/07/20/code-coffee-raleigh/">Code Coffee Raleigh</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.programmersparadox.com/2011/07/20/code-coffee-raleigh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Broken Windows</title>
		<link>http://www.programmersparadox.com/2011/05/16/broken-windows/</link>
		<comments>http://www.programmersparadox.com/2011/05/16/broken-windows/#comments</comments>
		<pubDate>Tue, 17 May 2011 03:39:06 +0000</pubDate>
		<dc:creator>Mark Mzyk</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.programmersparadox.com/?p=1340</guid>
		<description><![CDATA[Companies are always touting the next big thing. Their newest product revolutionizes the industry. It can&#8217;t be lived without. Advertising in this way reveals how most companies function: always attempting to create something new. Companies want to continually build new products and add new features, even if these come at the expense of fixing or [...]<p><br/><br/><a href="http://www.programmersparadox.com/2011/05/16/broken-windows/">Broken Windows</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Companies are always touting the next big thing. Their newest product revolutionizes the industry. It can&#8217;t be lived without.</p>
<p>Advertising in this way reveals how most companies function: always attempting to create something new.  Companies want to continually build new products and add new features, even if these come at the expense of fixing or improving existing functionality.</p>
<p>Prioritizing in this way is akin to having a house with a broken window, but instead of fixing the broken window you build a new addition onto the house.  While the addition adds tremendous value, it will always be brought down in value as long as the window remains broken.  As soon as the window is fixed, the house and addition rise in value<sup><a href="http://www.programmersparadox.com/2011/05/16/broken-windows/#footnote_0_1340" id="identifier_0_1340" class="footnote-link footnote-identifier-link" title="Broken Window Theory">1</a></sup>.</p>
<p>Consider this: how many broken windows are there where you work<sup><a href="http://www.programmersparadox.com/2011/05/16/broken-windows/#footnote_1_1340" id="identifier_1_1340" class="footnote-link footnote-identifier-link" title="Pragmatic Programmers: Software Entropy">2</a></sup>?</p>
<p>A step further: what can you do to repair them?</p>
<p style="text-align: center;"><a href="http://www.programmersparadox.com/wp-content/uploads/2011/05/brokenwindow.jpg"><img class="size-full wp-image-1344 alignnone" title="brokenwindow" src="http://www.programmersparadox.com/wp-content/uploads/2011/05/brokenwindow.jpg" alt="" width="480" height="383" /></a><br />
<a href="http://www.flickr.com/photos/judepics/259990934/">Broken Window</a> / <a href="http://creativecommons.org/licenses/by/2.0/">CC License</a></p>
<p><br/><br/><a href="http://www.programmersparadox.com/2011/05/16/broken-windows/">Broken Windows</a></p>
<ol class="footnotes"><li id="footnote_0_1340" class="footnote"><a href="http://en.wikipedia.org/wiki/Broken_windows_theory">Broken Window Theory</a></li><li id="footnote_1_1340" class="footnote"><a href="http://pragprog.com/the-pragmatic-programmer/extracts/software-entropy">Pragmatic Programmers: Software Entropy</a></li></ol>]]></content:encoded>
			<wfw:commentRss>http://www.programmersparadox.com/2011/05/16/broken-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

