<?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>gricci.com</title>
	
	<link>http://gricci.com</link>
	<description>gricci.com</description>
	<lastBuildDate>Sat, 19 Jan 2013 15:29:22 -0700</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/deepcode" /><feedburner:info uri="deepcode" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
			<title>Fighting Repetitive Stress Injury</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/0NkyAxLVVfg/18-dealing-with-rsi</link>
			<pubDate>Wed, 29 Feb 2012 00:00:00 -0700</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

Yesterday I read this article, about how Henrik Warne beat RSI.  As a programmer for as long as I can remember, I too have had similar issues with Repetitive Stress Injury.  Coding for very long stints of time can be hell on the wrists.

I figured I'd jump in and add a few things that worked for me.

Equipment

It should be obvious, but if it's not, the best way to fight an issue with your wrists is to use better equipment.  We're talking mouse and keyboard here.

Keyboard

Probably after my 2nd year of programming in my bedroom (as a teen), I started having issues with my wrists.  I looked it up on forums, figured out that it was mostly due to the fact that I would sit in front of my computer for 10+ hours at a time, and asked for this keyboard for my birthday that year.  Problem solved, right?

Of course not.  Fighting RSI is something you'll likely due for your entire career.  Eventually, I switched over to the current edition of the Microsoft Ergonomic keyboard.  It did a lot to get rid of the pain at first, but eventually, I would find that my wrists would start hurting again, especially after extended coding marathons.  I would usually blame it on the age of the keyboard and buy a new one every year or so.  On those newer Microsoft ergonomic models, the PSI to push down a key increased several orders of magnitude as it ages.

Last year, I switched to the Kinesis Advantage keyboard.  The prices from the manufacturer are a bit inflated, check out Amazon.com and you can score one for a bit less.  This keyboard is a dream.  The PSI is pretty constant, even going into my 2nd year of use.  It also has optional foot pedals, but I don't use those.  This keyboard is hard to transition to, as the key layout is a bit different.  If you are coding every day, it might be a good idea to keep your old keyboard around for a bit while you get used to this one.  I believe it took me around 2 weeks to get fully used to this keyboard.  It's also very customizable, I use it on a Mac, and it comes with extra keys and a key puller to make it easy to switch layouts.

Since I've switched, I've never even thought about going back.  I have literally zero pain in my wrists now, and I'm coding more hours than I have in a long time (being a freelance consultant, that equates to money).

Mouse

I pride myself on never really having to touch the mouse.  I do everything possible by shortcut keys, hot keys or macros.  I use Vim as my everything editor.  For this reason, I don't really care about the mouse I use.  I am currently using the Apple Magic Mouse that came with my 27" iMac.

Desk

One of my favorite upgrades I made when changing over to work at home full-time was getting a standing desk.  While this doesn't directly change my RSI issues, it does help get me away from the computer more often.  When you are standing and are faced with a programming conundrum that you need some time to think about, it's quite easy to just wander away from the keyboard and go take out the trash.  That's something I'm sure my wife loves as well.

Breaks

I just mentioned it above, and the original post by Henrik Warne mentions it as well, but taking regular breaks is a great idea.  20 years ago, people weren't sitting in front of a computer, operating it with their fingers the way we are today.  It's going to take a few more cycles of evolution before I think we'll adapt.  For the moment, the best thing you can do is to do something else every hour or so, for a few minutes at a time.

Hope that helps!

--Steve

			]]></description>
			<content:encoded><![CDATA[
				

<p>Yesterday I read <a href="http://henrikwarne.com/2012/02/18/how-i-beat-rsi/" target="_blank" class="external">this article</a>, about how Henrik Warne beat RSI.  As a programmer for as long as I can remember, I too have had similar issues with Repetitive Stress Injury.  Coding for very long stints of time can be hell on the wrists.</p>

<p>I figured I'd jump in and add a few things that worked for me.</p>

<h2>Equipment</h2>

<p>It should be obvious, but if it's not, the best way to fight an issue with your wrists is to use better equipment.  We're talking mouse and keyboard here.</p>

<h3>Keyboard</h3>

<p>Probably after my 2nd year of programming in my bedroom (as a teen), I started having issues with my wrists.  I looked it up on forums, figured out that it was mostly due to the fact that I would sit in front of my computer for 10+ hours at a time, and asked for <a href="http://codinghorror.typepad.com/.a/6a0120a85dcdae970b0128776fcf06970c-pi" target="_blank" class="external">this keyboard</a> for my birthday that year.  Problem solved, right?</p>

<p>Of course not.  Fighting RSI is something you'll likely due for your entire career.  Eventually, I switched over to the current edition of the Microsoft Ergonomic keyboard.  It did a lot to get rid of the pain at first, but eventually, I would find that my wrists would start hurting again, especially after extended coding marathons.  I would usually blame it on the age of the keyboard and buy a new one every year or so.  On those newer Microsoft ergonomic models, the PSI to push down a key increased several orders of magnitude as it ages.</p>

<p>Last year, I switched to the <a href="http://www.kinesis-ergo.com/advantage.htm" target="_blank" class="external">Kinesis Advantage</a> keyboard.  The prices from the manufacturer are a bit inflated, check out <a href="http://amzn.to/z5N2hv" target="_blank" class="external">Amazon.com</a> and you can score one for a bit less.  This keyboard is a dream.  The PSI is pretty constant, even going into my 2nd year of use.  It also has optional foot pedals, but I don't use those.  This keyboard is hard to transition to, as the key layout is a bit different.  If you are coding every day, it might be a good idea to keep your old keyboard around for a bit while you get used to this one.  I believe it took me around 2 weeks to get fully used to this keyboard.  It's also very customizable, I use it on a Mac, and it comes with extra keys and a key puller to make it easy to switch layouts.</p>

<p>Since I've switched, I've never even thought about going back.  I have literally zero pain in my wrists now, and I'm coding more hours than I have in a long time (being a freelance consultant, that equates to money).</p>

<h3>Mouse</h3>

<p>I pride myself on never really having to touch the mouse.  I do everything possible by shortcut keys, hot keys or macros.  I use Vim as my <em>everything</em> editor.  For this reason, I don't really care about the mouse I use.  I am currently using the Apple Magic Mouse that came with my 27" iMac.</p>

<h3>Desk</h3>

<p>One of my favorite upgrades I made when changing over to work at home full-time was getting a standing desk.  While this doesn't directly change my RSI issues, it does help get me away from the computer more often.  When you are standing and are faced with a programming conundrum that you need some time to think about, it's quite easy to just wander away from the keyboard and go take out the trash.  That's something I'm sure my wife loves as well.</p>

<h2>Breaks</h2>

<p>I just mentioned it above, and the original post by Henrik Warne mentions it as well, but taking regular breaks is a great idea.  20 years ago, people weren't sitting in front of a computer, operating it with their fingers the way we are today.  It's going to take a few more cycles of evolution before I think we'll adapt.  For the moment, the best thing you can do is to do something else every hour or so, for a few minutes at a time.</p>

<p>Hope that helps!</p>

<p>--Steve</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=0NkyAxLVVfg:Or2s5ehMJu8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=0NkyAxLVVfg:Or2s5ehMJu8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=0NkyAxLVVfg:Or2s5ehMJu8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=0NkyAxLVVfg:Or2s5ehMJu8:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=0NkyAxLVVfg:Or2s5ehMJu8:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=0NkyAxLVVfg:Or2s5ehMJu8:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/0NkyAxLVVfg" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/18-dealing-with-rsi</feedburner:origLink></item>
			<item>
			<title>Interesting Reads</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/CubMNLkXaww/17-links</link>
			<pubDate>Fri, 16 Dec 2011 00:00:00 -0700</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

I've been contracting since the beginning of the year and decided to go
full-time with it this July and work really started to get the better of
me.  During the last 2 months, I haven't posted much, but have finally
made some room to begin anew.  Here are some stories I've read that I
haven't had time to post, but that I thought my readers might find
interesting:


What's In A GIF
-- I recently had to implement multi-frame GIFs in PHP and found
this byte
by byte guide pretty helpful in understanding how GIFs work.
Parenthood by Jeff Atwood
-- Mirrors a lot of my own feelings about being a geek dad.
Google+ Style Buttons
-- A great and thorough set of Google+-like buttons and styles to
  match, if you're into the Google+ look.
High Performance PHP Session Storage at Scale -- Great post about using PHP sessions from a memcache layer rather than
from disk, because disk doesn't scale well.
PHP Advent 2011 -- The PHP Advent site is live
for 2011, lots of great reads already up, too many to link to them
individually.


That's all for now. Hopefully I'll return to my previous blogging schedule after
the weekend.

			]]></description>
			<content:encoded><![CDATA[
				

<p>I've been contracting since the beginning of the year and decided to go
full-time with it this July and work really started to get the better of
me.  During the last 2 months, I haven't posted much, but have finally
made some room to begin anew.  Here are some stories I've read that I
haven't had time to post, but that I thought my readers might find
interesting:</p>

<ul>
<li><p><a href="http://matthewflickinger.com/lab/whatsinagif/bits_and_bytes.asp" target="_blank" class="external">What's In A GIF</a>
-- I recently had to implement multi-frame GIFs in PHP and found
<a href="http://matthewflickinger.com/lab/whatsinagif/bits_and_bytes.asp" target="_blank" class="external">this</a> byte
by byte guide pretty helpful in understanding how GIFs work.</p></li>
<li><p><a href="http://www.codinghorror.com/blog/2011/10/on-parenthood.html" target="_blank" class="external">Parenthood</a> by Jeff Atwood
-- Mirrors a lot of my own feelings about being a geek dad.</p></li>
<li><p><a href="http://code.shrapp.nl/google-plus-ui-buttons/demo.html#" target="_blank" class="external">Google+ Style Buttons</a>
-- A great and thorough set of Google+-like buttons and styles to
  match, if you're into the Google+ look.</p></li>
<li><p><a href="http://schlueters.de/blog/archives/164-High-Performance-PHP-Session-Storage-on-Scale.html" target="_blank" class="external">High Performance PHP Session Storage at Scale</a> -- Great post about using PHP sessions from a memcache layer rather than
from disk, because disk doesn't scale well.</p></li>
<li><p><a href="http://phpadvent.org" target="_blank" class="external">PHP Advent 2011</a> -- The PHP Advent site is live
for 2011, lots of great reads already up, too many to link to them
individually.</p></li>
</ul>

<p>That's all for now. Hopefully I'll return to my previous blogging schedule after
the weekend.</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=CubMNLkXaww:gPA4EC4Dp08:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=CubMNLkXaww:gPA4EC4Dp08:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=CubMNLkXaww:gPA4EC4Dp08:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=CubMNLkXaww:gPA4EC4Dp08:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=CubMNLkXaww:gPA4EC4Dp08:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=CubMNLkXaww:gPA4EC4Dp08:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/CubMNLkXaww" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/17-links</feedburner:origLink></item>
			<item>
			<title><a href="http://lights.elliegoulding.com/?" target="_blank" class="external">Lights</a></title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/cdcFbSMNIYo/16-lights</link>
			<pubDate>Fri, 14 Oct 2011 00:00:00 -0600</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

This WebGL music video is amazing.  Great song by a great artist as
well.  I can't believe we've come so far in so little time.

			]]></description>
			<content:encoded><![CDATA[
				

<p>This WebGL music video is amazing.  Great song by a great artist as
well.  I can't believe we've come so far in so little time.</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=cdcFbSMNIYo:mD_Hrts1Nm4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=cdcFbSMNIYo:mD_Hrts1Nm4:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=cdcFbSMNIYo:mD_Hrts1Nm4:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=cdcFbSMNIYo:mD_Hrts1Nm4:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=cdcFbSMNIYo:mD_Hrts1Nm4:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=cdcFbSMNIYo:mD_Hrts1Nm4:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/cdcFbSMNIYo" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/16-lights</feedburner:origLink></item>
			<item>
			<title>Show git branches that haven't been merged</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/UYVKC41w7C8/15-show-git-branches-that-havent-been-merged</link>
			<pubDate>Mon, 10 Oct 2011 00:00:00 -0600</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

Quick tip on how to show your git branches that haven't been merged yet.

git branch --no-merged


Very useful when trying to clean-up after a long week of developing many
features in tandem.

			]]></description>
			<content:encoded><![CDATA[
				

<p>Quick tip on how to show your git branches that haven't been merged yet.</p>

<pre><code>git branch --no-merged
</code></pre>

<p>Very useful when trying to clean-up after a long week of developing many
features in tandem.</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=UYVKC41w7C8:CN3Jq4hE3yM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=UYVKC41w7C8:CN3Jq4hE3yM:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=UYVKC41w7C8:CN3Jq4hE3yM:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=UYVKC41w7C8:CN3Jq4hE3yM:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=UYVKC41w7C8:CN3Jq4hE3yM:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=UYVKC41w7C8:CN3Jq4hE3yM:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/UYVKC41w7C8" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/15-show-git-branches-that-havent-been-merged</feedburner:origLink></item>
			<item>
			<title>Now on GitHub: gmail-biggestfiles</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/6L-AXRlt9CM/14-now-on-github-gmail-biggestfiles</link>
			<pubDate>Fri, 07 Oct 2011 00:00:00 -0600</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

I generally tend to write short scripts for a one time task.  Gmail-biggestfiles was born in that same vein.  Then the other day, a colleague was commenting on how he wanted to find the biggest files in his GMail account and remove them, since he was running out of space.

Thus, I put this up on GitHub.  He said it was "too slow", and so I refactored it to use imap_sort rather than imap_fetch_overview.  This is why sharing code via GitHub is profoundly useful in my eyes, quick feedback and interations.

Hopefully someone finds it useful as well.  It still can be a bit slow on large mail boxes, but it's offloading all of the sorting to the IMAP (Google) server now.

You can find the code on GitHub, feel free to fork it and make it faster if you feel the need.

Note: it's required that you have imap extensions installed alongside PHP, and IMAP access turned on in your GMail account

			]]></description>
			<content:encoded><![CDATA[
				

<p>I generally tend to write short scripts for a one time task.  Gmail-biggestfiles was born in that same vein.  Then the other day, a colleague was commenting on how he wanted to find the biggest files in his GMail account and remove them, since he was running out of space.</p>

<p>Thus, I put this up on GitHub.  He said it was "too slow", and so I refactored it to use imap_sort rather than imap_fetch_overview.  This is why sharing code via GitHub is profoundly useful in my eyes, quick feedback and interations.</p>

<p>Hopefully someone finds it useful as well.  It still can be a bit slow on large mail boxes, but it's offloading all of the sorting to the IMAP (Google) server now.</p>

<p>You can find the code <a href="http://github.com/sgricci/gmail-biggestfiles" target="_blank" class="external">on GitHub</a>, feel free to fork it and make it faster if you feel the need.</p>

<p><em>Note: it's required that you have imap extensions installed alongside PHP, and IMAP access turned on in your GMail account</em></p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=6L-AXRlt9CM:v_jr42tsDrg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=6L-AXRlt9CM:v_jr42tsDrg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=6L-AXRlt9CM:v_jr42tsDrg:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=6L-AXRlt9CM:v_jr42tsDrg:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=6L-AXRlt9CM:v_jr42tsDrg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=6L-AXRlt9CM:v_jr42tsDrg:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/6L-AXRlt9CM" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/14-now-on-github-gmail-biggestfiles</feedburner:origLink></item>
			<item>
			<title>Edit a MySQL command from the $EDITOR</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/50Tf3py2YLw/13-edit-mysql-command-from-editor</link>
			<pubDate>Thu, 06 Oct 2011 00:00:00 -0600</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

When using MySQL from the command line, you can get into a pretty long
SQL statement, and then realize you wanted to change something. For
example, a LEFT JOIN to an INNER JOIN.  Well, MySQL has a handy little
function for making it easier to edit a long command.  Much like the
Unix command 'fc', which I've written about
before, you can use your defined $EDITOR
environment variable to be edit your previous SQL statement.  At the
MySQL command line:

mysql&gt; \e


This will pop open your defined $EDITOR and allow you to edit the
command.  After editing, save and quit (:wq for you vim users), and just
type a semi-colon (;) and hit enter.  It will run whatever command
you've written into your editor. Voila!

			]]></description>
			<content:encoded><![CDATA[
				

<p>When using MySQL from the command line, you can get into a pretty long
SQL statement, and then realize you wanted to change something. For
example, a LEFT JOIN to an INNER JOIN.  Well, MySQL has a handy little
function for making it easier to edit a long command.  Much like the
Unix command 'fc', <a href="/06-useful-unix-commands-fc">which I've written about
before</a>, you can use your defined $EDITOR
environment variable to be edit your previous SQL statement.  At the
MySQL command line:</p>

<pre><code>mysql&gt; \e
</code></pre>

<p>This will pop open your defined $EDITOR and allow you to edit the
command.  After editing, save and quit (:wq for you vim users), and just
type a semi-colon (;) and hit enter.  It will run whatever command
you've written into your editor. <strong>Voila!</strong></p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=50Tf3py2YLw:Ugb-ZmnsU2c:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=50Tf3py2YLw:Ugb-ZmnsU2c:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=50Tf3py2YLw:Ugb-ZmnsU2c:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=50Tf3py2YLw:Ugb-ZmnsU2c:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=50Tf3py2YLw:Ugb-ZmnsU2c:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=50Tf3py2YLw:Ugb-ZmnsU2c:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/50Tf3py2YLw" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/13-edit-mysql-command-from-editor</feedburner:origLink></item>
			<item>
			<title>mysqldump and gzip one-liner</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/ol0eBc8vFQI/12-mysqldump-and-gzip-one-line</link>
			<pubDate>Wed, 05 Oct 2011 00:00:00 -0600</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

I frequently download mysql backups from our production environment (at
off hours of course) to do testing with actual data.  As a force of
habit, I've always just mysqldump'ed the data and then gzip'ed as two
separate commands.

Here's a one liner that I've started using instead.

mysqldump &lt;mysql_options&gt; | gzip -9 &gt; file.sql.gz


Note: the -9 in the gzip command is the compression level, 9 being the
maximum compression

			]]></description>
			<content:encoded><![CDATA[
				

<p>I frequently download mysql backups from our production environment (at
off hours of course) to do testing with actual data.  As a force of
habit, I've always just mysqldump'ed the data and then gzip'ed as two
separate commands.</p>

<p>Here's a one liner that I've started using instead.</p>

<pre><code>mysqldump &lt;mysql_options&gt; | gzip -9 &gt; file.sql.gz
</code></pre>

<p><em>Note: the -9 in the gzip command is the compression level, 9 being the
maximum compression</em></p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=ol0eBc8vFQI:lAQHkG5R4go:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=ol0eBc8vFQI:lAQHkG5R4go:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=ol0eBc8vFQI:lAQHkG5R4go:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=ol0eBc8vFQI:lAQHkG5R4go:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=ol0eBc8vFQI:lAQHkG5R4go:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=ol0eBc8vFQI:lAQHkG5R4go:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/ol0eBc8vFQI" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/12-mysqldump-and-gzip-one-line</feedburner:origLink></item>
			<item>
			<title>How To: Revert a merge (by resetting to what is on a remote repo)</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/tHqz-QkG7L8/11-revert-a-merge-in-git</link>
			<pubDate>Tue, 04 Oct 2011 00:00:00 -0600</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

I generally do (as a force of habit) my integration testing on my master
branch.  I'll typically look at the change on GitHub and if I see
something amiss, I'll denote it and move on.  Every once in a while, I
can't tell just by looking at the code, or have a suspicion that
something will break but want to make sure.

In these cases, I generally am at a stopping point. (E.g. I have all my
code checked in and pushed). In order to reset my local copy back to
what's on the origin server, I do the follwing:

git reset --hard origin/master


Origin being the remote that I want to pull from and master
being the branch.

			]]></description>
			<content:encoded><![CDATA[
				

<p>I generally do (as a force of habit) my integration testing on my master
branch.  I'll typically look at the change on GitHub and if I see
something amiss, I'll denote it and move on.  Every once in a while, I
can't tell just by looking at the code, or have a suspicion that
something will break but want to make sure.</p>

<p>In these cases, I generally am at a stopping point. (E.g. I have all my
code checked in and pushed). In order to reset my local copy back to
what's on the origin server, I do the follwing:</p>

<pre><code>git reset --hard origin/master
</code></pre>

<p><strong>Origin</strong> being the remote that I want to pull from and <strong>master</strong>
being the branch.</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=tHqz-QkG7L8:ee6NIO9y76U:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=tHqz-QkG7L8:ee6NIO9y76U:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=tHqz-QkG7L8:ee6NIO9y76U:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=tHqz-QkG7L8:ee6NIO9y76U:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=tHqz-QkG7L8:ee6NIO9y76U:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=tHqz-QkG7L8:ee6NIO9y76U:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/tHqz-QkG7L8" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/11-revert-a-merge-in-git</feedburner:origLink></item>
			<item>
			<title><a href="https://moocode.com/posts/6-code-your-own-multi-user-private-git-server-in-5-minutes" target="_blank" class="external">Code Your Own Multi-User Private Git Server in 5 Minutes</a></title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/yPFiFYecH0Q/10-code-your-own-multi-user-git-server</link>
			<pubDate>Sun, 02 Oct 2011 00:00:00 -0600</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

I was actually thinking about something very similar to this when it
popped up on HackerNews.  I may port the gitserve to python before I use
it, and if so, will gist the code.

			]]></description>
			<content:encoded><![CDATA[
				

<p>I was actually thinking about something very similar to this when it
popped up on HackerNews.  I may port the gitserve to python before I use
it, and if so, will gist the code.</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=yPFiFYecH0Q:g_8RdCIKqt0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=yPFiFYecH0Q:g_8RdCIKqt0:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=yPFiFYecH0Q:g_8RdCIKqt0:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=yPFiFYecH0Q:g_8RdCIKqt0:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=yPFiFYecH0Q:g_8RdCIKqt0:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=yPFiFYecH0Q:g_8RdCIKqt0:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/yPFiFYecH0Q" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/10-code-your-own-multi-user-git-server</feedburner:origLink></item>
			<item>
			<title><a href="https://stripe.com" target="_blank" class="external">Stripe</a></title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/MA0K66FuuUA/09-stripe</link>
			<pubDate>Fri, 30 Sep 2011 00:00:00 -0600</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

Full stack-payments.  Saw it on HackerNews.  Looks pretty easy to
integrate, now I just need a project that needs it.

			]]></description>
			<content:encoded><![CDATA[
				

<p>Full stack-payments.  Saw it on HackerNews.  Looks pretty easy to
integrate, now I just need a project that needs it.</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=MA0K66FuuUA:anRpb7QzJpc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=MA0K66FuuUA:anRpb7QzJpc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=MA0K66FuuUA:anRpb7QzJpc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=MA0K66FuuUA:anRpb7QzJpc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=MA0K66FuuUA:anRpb7QzJpc:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=MA0K66FuuUA:anRpb7QzJpc:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/MA0K66FuuUA" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/09-stripe</feedburner:origLink></item>
			<item>
			<title>Masters of Doom</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/kaIIneS4rs0/08-masters-of-doom</link>
			<pubDate>Sat, 16 Apr 2011 00:00:00 -0600</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

I've been reading Masters of Doom, which is a very inspiring book for a developer such as myself to read.  I came across this quote attributed to John Carmack, founder at id Software and one of the subjects of the book, and it really resonated with me.


  The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.
  
  
  On software patents, Quoted in John Carmack: Knee Deep in the VooDoo Voodoo Extreme
  


			]]></description>
			<content:encoded><![CDATA[
				

<p>I've been reading <a href="http://http://www.amazon.com/Masters-Doom-Created-Transformed-Culture/dp/0375505245" target="_blank" class="external">Masters of Doom</a>, which is a very inspiring book for a developer such as myself to read.  I came across this quote attributed to John Carmack, founder at id Software and one of the subjects of the book, and it really resonated with me.</p>

<blockquote>
  <p>The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.</p>
  
  <ul>
  <li>On software patents, Quoted in <a href="http://www.firingsquad.com/features/carmack/page3.asp" target="_blank" class="external">John Carmack: Knee Deep in the VooDoo</a> <em>Voodoo Extreme</em></li>
  </ul>
</blockquote>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=kaIIneS4rs0:tNUp1lGBxhc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=kaIIneS4rs0:tNUp1lGBxhc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=kaIIneS4rs0:tNUp1lGBxhc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=kaIIneS4rs0:tNUp1lGBxhc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=kaIIneS4rs0:tNUp1lGBxhc:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=kaIIneS4rs0:tNUp1lGBxhc:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/kaIIneS4rs0" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/08-masters-of-doom</feedburner:origLink></item>
			<item>
			<title>I’m also addicted to analytics...</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/2w3p0OtyKlk/07-im-also-addicted-to-analytics</link>
			<pubDate>Tue, 22 Mar 2011 00:00:00 -0600</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

I read this (lengthly) post on RailsTips.org and it got me thinking.  I am also pretty obsessed with numbers, whether it be benchmarks or web traffic.

I've spent the majority of the day (when not coding) looking at Mozilla's Glow visualization (Firefox 4 downloads), and reading about how it works.

Are you an analytics junky as well?

			]]></description>
			<content:encoded><![CDATA[
				

<p>I read this (lengthly) <a href="http://railstips.org/blog/archives/2011/03/21/hi-my-name-is-john/" target="_blank" class="external">post</a> on RailsTips.org and it got me thinking.  I am also pretty obsessed with numbers, whether it be benchmarks or web traffic.</p>

<p>I've spent the majority of the day (when not coding) looking at Mozilla's <a href="http://glow.mozilla.com" target="_blank" class="external">Glow</a> visualization (Firefox 4 downloads), and reading about <a href="http://blog.mozilla.com/data/2011/03/22/how-glow-mozilla-org-gets-its-data/" target="_blank" class="external">how it works</a>.</p>

<p>Are you an analytics junky as well?</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=2w3p0OtyKlk:cZiKOpHA0Zw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=2w3p0OtyKlk:cZiKOpHA0Zw:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=2w3p0OtyKlk:cZiKOpHA0Zw:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=2w3p0OtyKlk:cZiKOpHA0Zw:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=2w3p0OtyKlk:cZiKOpHA0Zw:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=2w3p0OtyKlk:cZiKOpHA0Zw:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/2w3p0OtyKlk" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/07-im-also-addicted-to-analytics</feedburner:origLink></item>
			<item>
			<title>Useful Unix Commands: fc</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/jl06MOst1Og/06-useful-unix-commands-fc</link>
			<pubDate>Thu, 03 Mar 2011 00:00:00 -0700</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

Slowly becoming my favorite, my Useful Unix Command of the moment is: fc

fc allows you to open the last run command in an editor.  By default, it will open with the editor set up in $EDITOR (vim for me).

If you have ever had to type a really long command out, and missed something, or wanted to run it for several more files, fc is very useful as it opens in Vim ($EDITOR) and then, upon closing, will run the command again.

This command works on most Linux systems, Unix systems and on Mac OS X.  Give it a try.

			]]></description>
			<content:encoded><![CDATA[
				

<p>Slowly becoming my favorite, my Useful Unix Command of the moment is: <a href="http://en.wikipedia.org/wiki/Fc_%28Unix%29" target="_blank" class="external">fc</a></p>

<p>fc allows you to open the last run command in an editor.  By default, it will open with the editor set up in $EDITOR (vim for me).</p>

<p>If you have ever had to type a really long command out, and missed something, or wanted to run it for several more files, fc is very useful as it opens in Vim ($EDITOR) and then, upon closing, will run the command again.</p>

<p>This command works on most Linux systems, Unix systems and on Mac OS X.  Give it a try.</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=jl06MOst1Og:yVxmtC4aEk0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=jl06MOst1Og:yVxmtC4aEk0:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=jl06MOst1Og:yVxmtC4aEk0:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=jl06MOst1Og:yVxmtC4aEk0:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=jl06MOst1Og:yVxmtC4aEk0:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=jl06MOst1Og:yVxmtC4aEk0:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/jl06MOst1Og" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/06-useful-unix-commands-fc</feedburner:origLink></item>
			<item>
			<title>(Mac)Vim Tip: Configure MacVim to start without the Top Toolbar Expanded</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/O9LNlkbpKC8/05-macvim-tip-configure-macvim-to-start-without-the-top-toolbar-expanded</link>
			<pubDate>Wed, 31 Dec 1969 17:00:00 -0700</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

I figured I'd share this one:

To remove the MacVim top toolbar, set this in your .vimrc file:

set guioptions-=T


And never have to close that toolbar again.

			]]></description>
			<content:encoded><![CDATA[
				

<p>I figured I'd share this one:</p>

<p>To remove the MacVim top toolbar, set this in your .vimrc file:</p>

<pre><code>set guioptions-=T
</code></pre>

<p>And never have to close that toolbar again.</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=O9LNlkbpKC8:x1aVnLzRqcg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=O9LNlkbpKC8:x1aVnLzRqcg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=O9LNlkbpKC8:x1aVnLzRqcg:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=O9LNlkbpKC8:x1aVnLzRqcg:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=O9LNlkbpKC8:x1aVnLzRqcg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=O9LNlkbpKC8:x1aVnLzRqcg:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/O9LNlkbpKC8" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/05-macvim-tip-configure-macvim-to-start-without-the-top-toolbar-expanded</feedburner:origLink></item>
			<item>
			<title>Just watched: Exit Through the Gift Shop</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/b2FRYZILPas/04-just-watched-exit-through-the-gift-shop</link>
			<pubDate>Sun, 27 Feb 2011 00:00:00 -0700</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

My wife and I just watched Exit Through the Gift Shop, a hilarious documentary by Banksy, which to my surprise was not as much about Banksy as I would've thought.

If you are in the mood for a documentary, you can not go wrong with this film. Go. Watch it.

P.S. It's available on Netflix Instant Streaming as well.

			]]></description>
			<content:encoded><![CDATA[
				

<p>My wife and I just watched <a href="http://www.imdb.com/title/tt1587707/" target="_blank" class="external">Exit Through the Gift Shop</a>, a hilarious documentary by <a href="http://www.banksy.co.uk/" target="_blank" class="external">Banksy</a>, which to my surprise was not as much about Banksy as I would've thought.</p>

<p>If you are in the mood for a documentary, you can not go wrong with this film. Go. Watch it.</p>

<p>P.S. It's available on Netflix Instant Streaming as well.</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=b2FRYZILPas:jaj9CcuYT3M:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=b2FRYZILPas:jaj9CcuYT3M:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=b2FRYZILPas:jaj9CcuYT3M:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=b2FRYZILPas:jaj9CcuYT3M:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=b2FRYZILPas:jaj9CcuYT3M:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=b2FRYZILPas:jaj9CcuYT3M:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/b2FRYZILPas" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/04-just-watched-exit-through-the-gift-shop</feedburner:origLink></item>
			<item>
			<title>Git submodules are awesome</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/5GTJFAPlFVs/03-git-submodules-are-awesome</link>
			<pubDate>Mon, 06 Jun 2011 00:00:00 -0600</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

Recently, I've switched all of my personal repositories over to Git from Subversion.  When working on personal projects in subversion, I've always included some base functionality (my own boilerplate, if you will). These include my Zend Framework Authentication wrapper and controller and Smarty template wrapper, as well as some simple configuration files that these modules rely on. I've always used svn externals for these but I have to say that the git submodule system is making me smile.

For my own future reference, he is how to use them:

Adding a submodule:

git submodule add user@host:~/path/to/git/repo.git path/to/check/out
git submodule init


This will add and then initialize the repository under your current project.  If the path doesn't exist, it will create it.

Updating a submodule:

The following will update the submodules under your current project.

git submodule update


If necessary, you can also go into the directory and perform the usual git tasks, since it is its own repository.

Have fun with git submodules!

			]]></description>
			<content:encoded><![CDATA[
				

<p>Recently, I've switched all of my personal repositories over to Git from Subversion.  When working on personal projects in subversion, I've always included some base functionality (my own boilerplate, if you will). These include my Zend Framework Authentication wrapper and controller and Smarty template wrapper, as well as some simple configuration files that these modules rely on. I've always used svn externals for these but I have to say that the git submodule system is making me smile.</p>

<p>For my own future reference, he is how to use them:</p>

<h2>Adding a submodule:</h2>

<pre><code>git submodule add user@host:~/path/to/git/repo.git path/to/check/out
git submodule init
</code></pre>

<p>This will add and then initialize the repository under your current project.  If the path doesn't exist, it will create it.</p>

<h2>Updating a submodule:</h2>

<p>The following will update the submodules under your current project.</p>

<pre><code>git submodule update
</code></pre>

<p>If necessary, you can also go into the directory and perform the usual git tasks, since it is its own repository.</p>

<p>Have fun with git submodules!</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=5GTJFAPlFVs:Y1HrS6GZv30:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=5GTJFAPlFVs:Y1HrS6GZv30:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=5GTJFAPlFVs:Y1HrS6GZv30:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=5GTJFAPlFVs:Y1HrS6GZv30:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=5GTJFAPlFVs:Y1HrS6GZv30:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=5GTJFAPlFVs:Y1HrS6GZv30:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/5GTJFAPlFVs" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/03-git-submodules-are-awesome</feedburner:origLink></item>
			<item>
			<title><a href="http://adamschepis.com/blog/2011/09/15/why-i-go-home-a-dads-manifesto/" target="_blank" class="external">Why I Go Home: A Developer Dad's Manifesto</a></title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/C_XuVAAU7yc/02-Why-I-Go-Home-A-Developer-Dads-Manifesto</link>
			<pubDate>Mon, 19 Sep 2011 00:00:00 -0600</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

I echo Adam's message in this post.  I too have been guilty of working
long hours much to the chagrin of my family and his story stands as a
reminder to me that I can always get another job..

			]]></description>
			<content:encoded><![CDATA[
				

<p>I echo Adam's message in this post.  I too have been guilty of working
long hours much to the chagrin of my family and his story stands as a
reminder to me that I can always get another job..</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=C_XuVAAU7yc:NzGgicbSQDQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=C_XuVAAU7yc:NzGgicbSQDQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=C_XuVAAU7yc:NzGgicbSQDQ:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=C_XuVAAU7yc:NzGgicbSQDQ:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=C_XuVAAU7yc:NzGgicbSQDQ:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=C_XuVAAU7yc:NzGgicbSQDQ:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/C_XuVAAU7yc" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/02-Why-I-Go-Home-A-Developer-Dads-Manifesto</feedburner:origLink></item>
			<item>
			<title>Mac OS X: Change your hostname</title>
			<link>http://feedproxy.google.com/~r/deepcode/~3/lukl4Nar87o/01-mac-os-x-change-your-hostname</link>
			<pubDate>Sun, 18 Sep 2011 00:00:00 -0600</pubDate>
			<dc:creator>Steve Gricci</dc:creator>
			<description><![CDATA[
				

Here are two ways to change your hostname in Mac OS X.

The first, open a new terminal and type this:

sudo hostname &lt;new hostname&gt;


Note: You will be asked for your password, because you are performing
this command as root

The second, go to System Preferences -> Sharing -> Computer Name.

The first option will be more immediate.

			]]></description>
			<content:encoded><![CDATA[
				

<p>Here are two ways to change your hostname in Mac OS X.</p>

<p>The first, open a new terminal and type this:</p>

<pre><code>sudo hostname &lt;new hostname&gt;
</code></pre>

<p><em>Note: You will be asked for your password, because you are performing
this command as root</em></p>

<p>The second, go to System Preferences -> Sharing -> Computer Name.</p>

<p>The first option will be more immediate.</p>

			<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/deepcode?a=lukl4Nar87o:iqF9-MSbbIc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/deepcode?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=lukl4Nar87o:iqF9-MSbbIc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/deepcode?i=lukl4Nar87o:iqF9-MSbbIc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=lukl4Nar87o:iqF9-MSbbIc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/deepcode?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/deepcode?a=lukl4Nar87o:iqF9-MSbbIc:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/deepcode?i=lukl4Nar87o:iqF9-MSbbIc:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/deepcode/~4/lukl4Nar87o" height="1" width="1"/>]]></content:encoded>
		<feedburner:origLink>http://gricci.com/01-mac-os-x-change-your-hostname</feedburner:origLink></item>
		</channel>
</rss>
