<?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>Matt Robinson &#187; Recommended Stuff</title>
	<atom:link href="http://www.mattrobinson.net/category/recommended-stuff/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mattrobinson.net</link>
	<description>Nerding Out Since the Distant Future</description>
	<lastBuildDate>Sun, 22 Jan 2012 14:56:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Tmux Is Awesome &#8211; Even Better Than Screen</title>
		<link>http://www.mattrobinson.net/2011/04/10/tmux-is-awesome-even-better-than-screen/</link>
		<comments>http://www.mattrobinson.net/2011/04/10/tmux-is-awesome-even-better-than-screen/#comments</comments>
		<pubDate>Mon, 11 Apr 2011 03:56:01 +0000</pubDate>
		<dc:creator>mattr</dc:creator>
				<category><![CDATA[Recommended Stuff]]></category>

		<guid isPermaLink="false">http://www.mattrobinson.net/?p=79</guid>
		<description><![CDATA[I&#8217;ve been using GNU screen for years now as a way to deal with all the terminals I need to use at once (terminal multiplexing is what I talk to my wife about when I know she doesn&#8217;t want to hear about work). I started out using it, as many do, because I needed to [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using <a href="http://www.gnu.org/software/screen/">GNU screen</a> for years now as a way to deal with all the terminals I need to use at once (terminal multiplexing is what I talk to my wife about when I know she doesn&#8217;t want to hear about work).  I started out using it, as many do, because I needed to do some work over ssh on a remote terminal, and losing that connection was painful without using screen.  After getting used to it, I found I liked using it even when I wasn&#8217;t working over ssh because it gave me a way to easily manage a bunch of terminal sessions.</p>
<p>Then one day I wanted to do <a href="http://tooky.github.com/2010/01/08/remote-pairing-with-gnu-screen-and-vim.html">remote pairing</a> and had heard of people doing this in screen.  It&#8217;s a bit of a pain to setup with screen (shared login or chmod to set uid bit), but then I discovered <a href="http://tmux.sourceforge.net/">tmux</a> &#8211; and realized how many things screen didn&#8217;t have that I now don&#8217;t want to live without.  The main thing being vertical splits.  I used to think vertical splits were just for vim sessions, but I was wrong.  The <a href="http://tmux.cvs.sourceforge.net/viewvc/tmux/tmux/FAQ">tmux faq</a> has a much fuller list of differences from screen that are nice (auto naming windows, more intuitive help, easier multiuser, multiple sessions).  In tmux vs screen tmux wins hands down.  The only things I&#8217;ve found I miss about screen is that my vim sessions were part of the scrollback buffer, but in tmux they disappear from tmux&#8217;s scrollback when you exit vim.</p>
<div style="float: left; margin-right: 10px; margin-bottom: 10px;"><a href="https://picasaweb.google.com/lh/photo/VnR0PAqbR09N063c7SMkwg?feat=embedwebsite"><img src="https://lh5.googleusercontent.com/_Wo_DhMcZuSo/TaJ6XF12bsI/AAAAAAAEQ88/QyF0CDettlQ/s800/Screen%20shot%202011-03-31%20at%2011.44.30%20PM.png" height="500" width="800" /></a></div>
<p>Why not iTerm2, Terminator for Gnone, other OS specific terminal app here?  Did I mention they&#8217;re OS specific?  I want a terminal solution that works on any terminal the same way, and over ssh connections.  Oh, and open source and BSD licensed is nice too even if I never look at the source code.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mattrobinson.net/2011/04/10/tmux-is-awesome-even-better-than-screen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Version Control Your Configuration / Dot Files</title>
		<link>http://www.mattrobinson.net/2011/04/06/version-control-your-configuration-dot-files/</link>
		<comments>http://www.mattrobinson.net/2011/04/06/version-control-your-configuration-dot-files/#comments</comments>
		<pubDate>Thu, 07 Apr 2011 05:19:56 +0000</pubDate>
		<dc:creator>mattr</dc:creator>
				<category><![CDATA[Recommended Stuff]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[git version control dotfiles configuration]]></category>

		<guid isPermaLink="false">http://www.mattrobinson.net/?p=91</guid>
		<description><![CDATA[I&#8217;ve been meaning to write this post forever, but once I started doing what I suggest here it seemed so obvious that I have trouble remembering what life was like before I did it. Once you&#8217;ve been working in a terminal for long enough, you realize how much more productive you can be with your [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been meaning to write this post forever, but once I started doing what I suggest here it seemed so obvious that I have trouble remembering what life was like before I did it.  Once you&#8217;ve been working in a terminal for long enough, you realize how much more productive you can be with your aliases, scripts, prompts, plugins and other configurations setup the way you like.  This becomes especially apparent when you either work on someone else&#8217;s machine, or something happens and you have to rebuild yours and you realize just how slow you are in comparison.</p>
<p>How do you avoid this slowdown and prevent loss of all those great hacks and configurations you&#8217;ve built up?  Version control all the files that enable your productive environment.  Here&#8217;s my repo for all those files.  </p>
<p><a href="https://github.com/mmrobins/config-files">https://github.com/mmrobins/config-files</a></p>
<p>I&#8217;ve got bash, zsh, vim, screen, tmux, irb, tmux, irssi, ruby scripts, puppet scripts and more in this git repository.  I spend a lot time working remotely via ssh or on virtual machines on my development box, so it&#8217;s important not only that I have these files available, but I also have a fast way to get all these files in place quickly.  I also want changes that I make to these files to be easy to commit back to my repository.  To accomplish this, I make all these files symlinks to the files in my repository so that if I edit ~/.bashrc with my great new alias that saves all sorts of typing, it&#8217;s actually editing the .bashrc in my git respository.  Then I have a little perl script that when run puts all these symlinks in place for my automatically and backup up any files I&#8217;m moving out of the way to create the links, just in case.</p>
<p><a href="https://github.com/mmrobins/config-files/blob/master/create_symlinks">https://github.com/mmrobins/config-files/blob/master/create_symlinks</a></p>
<p>Now whenever I end up in a new environment on the terminal, I can get all my productivity in place with a few simple commands from the home directory.<br />
<code><br />
git clone git://github.com/mmrobins/config-files.git<br />
./config-files/create_symlinks<br />
source .bashrc<br />
</code></p>
<p>Now vim has my plugins and configuration, bash has my prompt, if GNU Screen or tmux are available they&#8217;re how I like them, my aliases work, etc.  There&#8217;s always going to be tweaks necessary for this to work cross platform and on different machines with different privileges, but since committing those changes back to the git repo is so easy, it become a natural part of my workflow to have these incremental improvements to my work environment available everywhere I work.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mattrobinson.net/2011/04/06/version-control-your-configuration-dot-files/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Passpack &#8211; Password Management Made Awesome</title>
		<link>http://www.mattrobinson.net/2009/10/22/passpack/</link>
		<comments>http://www.mattrobinson.net/2009/10/22/passpack/#comments</comments>
		<pubDate>Thu, 22 Oct 2009 08:10:08 +0000</pubDate>
		<dc:creator>mattr</dc:creator>
				<category><![CDATA[Recommended Stuff]]></category>
		<category><![CDATA[cool]]></category>
		<category><![CDATA[helpful]]></category>
		<category><![CDATA[recommended]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://www.mattrobinson.net/2009/10/22/passpack/</guid>
		<description><![CDATA[Keeping track of passwords has been a pain &#8211; until I found Passpack.  Passpack is a free, online password manager that I&#8217;ve been using for over a year now to keep track of most of my passwords. Security Storing passwords online might set of some security warning bells in your head since you&#8217;ll have all [...]]]></description>
			<content:encoded><![CDATA[<p>Keeping track of passwords has been a pain &#8211; until I found <a href="http://www.passpack.com/">Passpack</a>.  Passpack is a free, online password manager that I&#8217;ve been using for over a year now to keep track of most of my passwords.</p>
<h3>Security</h3>
<p>Storing passwords online might set of some security warning bells in your head since you&#8217;ll have all your passwords in one place, somewhere any could try to get to, but I&#8217;ve &lt;a href=&#8221;<a href="http://www.passpack.com/en/security/" target="_blank">http://www.passpack.com/en/security/</a>&#8220;&gt;convinced myself&lt;/a&gt; that using Passpack is safe and that they take security very seriously.  Your password data is never sent anywhere unencrypted, meaning not even Passpack programmers could access your data.  This means you have a login that does get sent to Passpack to access your account, but to &#8216;unpack&#8217; your data you have to type in another password they call your Packing Key.  </p>
<p>Another security benefit is that now I don&#8217;t reuse passwords like I used to.  Trying to remember all the logins and passwords for all the websites I go to used to be such a hassle that I just used the same 2 or 3 passwords for everything.  Passpack even has a nifty password generator that I used to create stronger passwords.</p>
<h3>Access</h3>
<p>I was a bit worried initially about what might happen if Passpack was down (I&#8217;ve never seen it happen) or if I lost my internet connection, but they have all sorts of offline options including a simple export (which you&#8217;ll want to encrypt if you&#8217;re storing it locally) and Google Gears.  I haven&#8217;t had a problem with getting Passpack from anywhere yet, but it&#8217;s nice to know that if I did I would have backup.</p>
<h3>Ease of Use</h3>
<p>Besides storing your passwords online, they make it ridiculously easy to login places.  They have a button that you can add to your browser toolbar that automatically logs you into websites that Passpack knows your password for.  It saves you from having to copy and paste stuff all over the place, although they make that easier too with one click copy to the clipboard without ever showing your username or password on the screen so you don&#8217;t have to worry about anyone shoulder surfing your info.</p>
<p>Besides all this, there&#8217;s some new features they offer that I don&#8217;t even take advantage of like secure message sending, and the ability to share passwords between accounts.  </p>
<p>Passpack is now one of the first sites that I open when I start a browsing session.  Perhaps one day <a href="http://www.openid.net">OpenID</a> or something like it will be ubiquitous and I won&#8217;t need so many passwords, but until then some sort of tool like this to help is essential.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mattrobinson.net/2009/10/22/passpack/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Put Your rc, Config Files and More Under Source Control</title>
		<link>http://www.mattrobinson.net/2009/06/21/put-your-rc-config-files-and-more-under-source-control/</link>
		<comments>http://www.mattrobinson.net/2009/06/21/put-your-rc-config-files-and-more-under-source-control/#comments</comments>
		<pubDate>Mon, 22 Jun 2009 02:08:07 +0000</pubDate>
		<dc:creator>mattr</dc:creator>
				<category><![CDATA[Recommended Stuff]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[config]]></category>
		<category><![CDATA[git]]></category>

		<guid isPermaLink="false">http://www.mattrobinson.net/?p=33</guid>
		<description><![CDATA[I&#8217;ve been working on more and more computers lately, and I was getting tired of my favorite bash and editor shortcuts not being available between the different machines. I finally took some good advice I heard a while back and put my config files under source control, and it&#8217;s been one of the best tips [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working on more and more computers lately, and I was getting tired of my favorite bash and editor shortcuts not being available between the different machines.  I finally took some good advice I heard a while back and put my config files under source control, and it&#8217;s been one of the best tips I&#8217;ve followed in some time.</p>
<p>The way I&#8217;ve done it is to use <a href="http://www.github.com/mmrobins">GitHub</a> to store my config files, so anyone else is free to take a look if they want to see how I&#8217;ve got vim, bash, screen, readline, ruby&#8217;s irb or other things configured.  However, the biggest benefit is that I can quickly get a new machine customized with all my favorite settings just by doing a checkout (clone in git) into my home directory on the new machine.  From there I&#8217;ve got a little script I run called &#8216;create_symlinks&#8217; that backs up the old config files before overwriting them with symlinks that point to the files in my checkout.  That way, whenever I update my repository, the files are automatically current.</p>
<p>This has been immensely helpful in taking the tricks I learn at work and easily incorporating them at home or on any remote server I have to do work.  If I add something new and cool to my vimrc at work, I just have to remember to commit it and push the changes to GitHub before I head home, and then I can continue working from home without having to remember whatever command I just automated.</p>
<p>I&#8217;ve even heard of people who go so far as to put their whole home directories under version control as a way of not only moving files around, but as a way of doing backups.  That seems overkill to me, but it&#8217;s worth thinking about what sorts of files we move around a lot might be easily moved and backed up using a source control system like git or SVN.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mattrobinson.net/2009/06/21/put-your-rc-config-files-and-more-under-source-control/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

