<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
 
 <title>Ren Provey</title>
 <link href="http://renprovey.com/atom.xml" rel="self"/>
 <link href="http://renprovey.com/"/>
 <updated>2011-12-08T12:17:16-08:00</updated>
 <id>http://renprovey.com/</id>
 <author>
   <name>Ren Provey</name>
   <email>ren@renprovey.com</email>
 </author>

 
 <entry>
   <title>Cloud Coding</title>
   <link href="http://renprovey.com/notes/2011/12/07/ipad-dream"/>
   <updated>2011-12-07T00:00:00-08:00</updated>
   <id>http://renprovey.com/notes/2011/12/07/ipad-dream</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;Cloud Coding&lt;/h1&gt;

  &lt;p&gt;After reading Mark O'Connor's &lt;a href=&quot;http://yieldthought.com/post/12239282034/swapped-my-macbook-for-an-ipad&quot;&gt;post&lt;/a&gt; about swapping his MacBook for an iPad+Linode, I decided to give the setup a whirl.  For reasons that probably defy logic (what can I say, I'm a slave to fashion), I substituted Panic's &lt;a href=&quot;http://panic.com/prompt&quot;&gt;Prompt&lt;/a&gt; for the recommended &lt;a href=&quot;http://www.zinger-soft.com/iSSH_features.html&quot;&gt;iSSH&lt;/a&gt; and have yet to feel any pain from the decision.&lt;/p&gt;

  &lt;p&gt;Mark covers a lot of the setup for a Linode server in his &lt;a href=&quot;http://yieldthought.com/post/12638596672/setting-up-an-ipad-linode&quot;&gt;follow-up post&lt;/a&gt;.  For now, I am just SSHing to my home machine via &lt;a href=&quot;http://no-ip.com&quot;&gt;no-ip.com&lt;/a&gt;, and the only real fiddly bit that I needed to add was the following in my vimrc:&lt;/p&gt;

  &lt;code&gt;
    if has('gui_running')&lt;br/&gt;
      &amp;nbsp;&amp;nbsp;set background=light&lt;br/&gt;
    else&lt;br/&gt;
      &amp;nbsp;&amp;nbsp;let g:solarized_termcolors=256&lt;br/&gt;
      &amp;nbsp;&amp;nbsp;set background=dark&lt;br/&gt;
    endif&lt;br/&gt;
  &lt;/code&gt;

  &lt;p&gt;The key thing here is to force solarized to use the &lt;code&gt;let g:solarized_termcolors=256&lt;/code&gt; even if vim is running in a terminal.  Panic's Prompt by default will register itself as a 16 color terminal, to get 256 colors working (and the beautiful &lt;a href=&quot;http://ethanschoonover.com/solarized&quot;&gt;Solarized&lt;/a&gt; color scheme), I added &lt;code&gt;export TERM=xterm-256color&lt;/code&gt; to the login script which can be configured in Prompt's individual machine settings.&lt;/p&gt;

  &lt;p&gt;We'll see how the setup works out, for now it is nice to just be traveling around with only an iPad.&lt;/p&gt;

  &lt;a href=&quot;/notes/2011/12/07/ipad-dream&quot; class=&quot;permalink&quot;&gt;December 07 2011&lt;/a&gt;
&lt;/article&gt;
</content>
 </entry>
 
 <entry>
   <title>IDEO HCD Toolkit: Deliver</title>
   <link href="http://renprovey.com/notes/2011/11/17/ideo-hcd-deliver"/>
   <updated>2011-11-17T00:00:00-08:00</updated>
   <id>http://renprovey.com/notes/2011/11/17/ideo-hcd-deliver</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;IDEO HCD Toolkit: Deliver&lt;/h1&gt;

  &lt;p&gt;While reading the &lt;a href=&quot;http://www.ideo.com/work/human-centered-design-toolkit/&quot;&gt;HCD Toolkit&lt;/a&gt;, I've noticed that each section is roughly the same size.  Don't get me wrong, each section has been a small wonder-world of information, but I couldn't help wonder if the Deliver section had been hardest of all to trim down.  It covers a lot of ground and not a word was wasted.  To summarize it would be to re-write it, but the pieces of the section which really resonated with me were:&lt;/p&gt;

  &lt;ul&gt;
    &lt;li&gt;&lt;b&gt;Mini-Pilots &amp;amp; Pilots&lt;/b&gt; - These seek to allow understand and refine the solution, its context, and support system as well as possible.  I especially liked the idea of mini-pilots that focused on a subset of the solution and/or allowed participants a deeper understanding by taking them out of their traditional roles.&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;On-going Learning &amp;amp; Iteration&lt;/b&gt; - This is something that I think is so often missed, or haphazardly bolted on at the end of a implementation.  This involves revisiting stories from the Hear phase as well as collecting new ones while continually refining the solution.
      &lt;img src='/images/ideo_hcd_toolkit/learning_loop.png' style=&quot;margin: 10px 0 20px -40px;&quot;/&gt;
      &lt;cite&gt;Page 97 of the IDEO Toolkit&lt;/cite&gt;
      &lt;br/&gt;
    &lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Measuring Impact&lt;/b&gt; - The toolkit does a great job of diving in to indicators like leading and dynamic changes (both &lt;b&gt;positive and negative&lt;/b&gt;), assessing outcomes, and strategies for measuring the impact of a solution in a holistic fashion.&lt;/li&gt;
  &lt;/ul&gt;

  &lt;p&gt;As you can tell, I am a big fan of the upfront work and the continual learning presented.  I think companies all too often equate a customer's final product with their final product.  A great product doesn't end with ending up in the customer's hands.  Putting a product in a customers hands is an opportunity to learn more about the product, evolve the product (see the product lines &lt;a href='http://www.minimallyminimal.com/journal/2011/11/16/coffee-time-market-share-vs-profit.html'&gt;here&lt;/a&gt;), and recognize the new opportunities a strong product creates.&lt;/p&gt;

  &lt;a href=&quot;/notes/2011/11/17/ideo-hcd-deliver&quot; class=&quot;permalink&quot;&gt;November 17 2011&lt;/a&gt;
&lt;/article&gt;
</content>
 </entry>
 
 <entry>
   <title>Scared.</title>
   <link href="http://renprovey.com/notes/2011/11/01/scared"/>
   <updated>2011-11-01T00:00:00-07:00</updated>
   <id>http://renprovey.com/notes/2011/11/01/scared</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;&lt;q cite=&quot;http://www.merlinmann.com&quot;&gt;I'm scared.  You're scared.  We're all scared.&lt;/q&gt;&lt;/h1&gt;

  &lt;iframe src=&quot;http://player.vimeo.com/video/21730173?title=0&amp;amp;byline=0&amp;amp;portrait=0&quot; width=&quot;500&quot; height=&quot;281&quot; frameborder=&quot;0&quot; webkitAllowFullScreen allowFullScreen&gt;&lt;/iframe&gt;

  &lt;p&gt;Listen to the whole thing, but know that (I felt) it was around the 15 minute mark Merlin hit stride. Given at &lt;a href='http://www.webstock.org.nz/talks/speakers/merlin-mann/scared-shitless-how-i-mostly-learned-love-being-af/'&gt;Webstock 11&lt;/a&gt;.&lt;/p&gt;

  &lt;a href=&quot;/notes/2011/11/01/scared&quot; class=&quot;permalink&quot;&gt;November 01 2011&lt;/a&gt;
&lt;/article&gt;
</content>
 </entry>
 
 <entry>
   <title>IDEO HCD Toolkit: Create</title>
   <link href="http://renprovey.com/notes/2011/10/31/ideo-hcd-create"/>
   <updated>2011-10-31T00:00:00-07:00</updated>
   <id>http://renprovey.com/notes/2011/10/31/ideo-hcd-create</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;IDEO HCD Toolkit: Create&lt;/h1&gt;

  &lt;p&gt;While I can't do the &lt;a href=&quot;http://www.ideo.com/work/human-centered-design-toolkit/&quot;&gt;toolkit&lt;/a&gt; justice in my notes, I fount the Create section to be a real gem.  The goal of the Create phase is to synthesize the research of the Hear phase, identify opportunities, brainstorm solutions, and create prototypes with the purpose of eliciting feedback.  Through the create process, don't focus on feasibility and viability, instead &lt;b&gt;focus on desirability&lt;/b&gt;.&lt;/p&gt;

  &lt;ul&gt;
    &lt;li&gt;&lt;b&gt;Story Sharing&lt;/b&gt; - These are stories collected from in the Research phase.  When sharing, remember to be specific and be descriptive (use physical senses, cover who, what, why, when, where, and how). No judgement. Create post-it notes of key pieces of information.&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Pattern Identification&lt;/b&gt; - Select the most surprising and provocative post-it notes, grouping them into related thoughts.  Create a succinct &quot;insight statements&quot; for each post-it group which summarizes the take-away.&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Find Themes&lt;/b&gt; - Sort the insight statement cards in to themes and evaluating each to make sure they are on the same level.  Some themes may need to be generalized, while others may need to broken apart.&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Create a Visual Framework&lt;/b&gt; - A framework is a visual representation of a system, often a framework will take one of the following structures:&lt;br/&gt;
      &lt;img src='/images/ideo_hcd_toolkit/frameworks.png'/&gt;
      &lt;cite&gt;Page 70 of the IDEO Toolkit&lt;/cite&gt;
      &lt;br/&gt;
    &lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Create opportunity areas&lt;/b&gt; - Ask the question &quot;How might we...&quot; (HMW) - Opportunity areas are not solutions, but questions to spur idea generation and the brainstorm of multiple solutions.&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Brainstorm!&lt;/b&gt; - Brainstorming makes us think expansively and without constraints, so there are no bad ideas and wild ideas are encouraged.  Build on ideas using AND rather than BUT.  Go for quantity, 15-30 minutes per HMW.  The practice of generating impractical solutions often sparks ideas that are relevant and reasonable.  The toolkit provides a rough rule of thumb, that out of 100 ideas 3 may be truly useful.&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Prototype&lt;/b&gt; - Make solutions tangible in a rapid and low-investment way. Prototypes are disposable, they should be built as roughly and as rapidly as possible.&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Feedback&lt;/b&gt; - Feedback brings constituents directly back in to the design process.  Presenting multiple prototypes/ideas allows people to easily give honest feedback via comparing and contrasting.  For each prototype identify 3-4 questions you'd like to answer.&lt;/li&gt;
  &lt;/ul&gt;

  &lt;a href=&quot;/notes/2011/10/31/ideo-hcd-create&quot; class=&quot;permalink&quot;&gt;October 31 2011&lt;/a&gt;
&lt;/article&gt;
</content>
 </entry>
 
 <entry>
   <title>IDEO HCD Toolkit: Hear</title>
   <link href="http://renprovey.com/notes/2011/10/17/ideo-hcd-hear"/>
   <updated>2011-10-17T00:00:00-07:00</updated>
   <id>http://renprovey.com/notes/2011/10/17/ideo-hcd-hear</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;IDEO HCD Toolkit: Hear&lt;/h1&gt;

  &lt;p&gt;As the &lt;a href=&quot;http://www.ideo.com/work/human-centered-design-toolkit/&quot;&gt;toolkit&lt;/a&gt; is meant to, the Hear section is very focused on working with folks in under resourced areas of the world, but I found a few principles which are easily extended to a process working with a broader group.  The goal of the Hear phase is to gain a strong understanding of an audience's needs, barriers, and constraints.&lt;/p&gt;

  &lt;ul&gt;
    &lt;li&gt;&lt;b&gt;Engage in context&lt;/b&gt; - While this section is called &lt;i&gt;Hear&lt;/i&gt;, context is the reoccuring theme.  The way a person presents a narrative, can differ from actual observation, especially when a person is learning a new skill or process. So, hear with all five senses, and hear in the actual environment a person will be operating in.&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Be qualitative&lt;/b&gt; - Seek a broad understanding.  Work to understand a person's social, political, economic, and cultural oppertunities as well as barriers.  Analyze the relational dynamics in a system (eg., people, places, objects, and institiutions).&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Testing&lt;/b&gt; - This is the chance to validate assumptions and preconceptions, be very intentional about letting any through without verfiying them.&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Framing&lt;/b&gt; - Challenges and statements should all be framed from constituents point of view.&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Inspiration&lt;/b&gt; - Look for inspiration in new places, search for similar problems in different contexts.  The concept seems so incredibly straight forward, but rarely to I take the time to intentionally think about parallels of a design problem.  The toolkit gives the example of hospital staff visiting a hardware store to gain insight about organizing supplies.&lt;/li&gt;
  &lt;/ul&gt;

  &lt;p&gt;The toolkit goes in to excellent detail on how to identifying a challenge, recognizing existing knowledge, research, interview, immerse, and document.&lt;/p&gt;

  &lt;a href=&quot;/notes/2011/10/17/ideo-hcd-hear&quot; class=&quot;permalink&quot;&gt;October 17 2011&lt;/a&gt;
&lt;/article&gt;



</content>
 </entry>
 
 <entry>
   <title>IDEO HCD Toolkit: Introduction</title>
   <link href="http://renprovey.com/notes/2011/10/12/ideo-hcd-intro"/>
   <updated>2011-10-12T00:00:00-07:00</updated>
   <id>http://renprovey.com/notes/2011/10/12/ideo-hcd-intro</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;IDEO HCD Toolkit: Introduction&lt;/h1&gt;
  &lt;p&gt;The &lt;a href=&quot;http://www.ideo.com/work/human-centered-design-toolkit/&quot;&gt;toolkit&lt;/a&gt; was funded by the &lt;a href=&quot;http://www.gatesfoundation.org/&quot;&gt;Bill &amp;amp; Melinda Gates Foundation&lt;/a&gt;, targeting organizations that work in Africa, Asia, and Latin America.  I am not going to lie, while traveling to Asia would be wonderful, I am reading the toolkit hoping to draw out some more general lessons of the human centered design process.&lt;/p&gt;

  &lt;h2&gt;The Three Lenses of Human Centered Design&lt;/h2&gt;
  &lt;p&gt;The HCD process examines starts with the people being designed for, examining thier needs, dreams, and behaviors.  The process steps through the following 'lenses':&lt;/p&gt;
  &lt;ol&gt;
    &lt;li&gt;&lt;b&gt;Desirability&lt;/b&gt; - What do people desire?&lt;br/&gt;
      eg. Rocket pants, space cars, unicorns, and sporks.  To be desired something dosen't necessarily have to be feasible, which brings us to...&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Feasibility&lt;/b&gt; - What is technically and organizationally feasible?&lt;br/&gt;
      And now we have to cross rocket pants, space cars, and unicorns off the list, leaving us to examinine the viability of sporks.&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Viability&lt;/b&gt; - What can be financially viable?&lt;br/&gt;
      So, I am assuming the spork business is pretty competative and covered by many interenational patents and we're back to the drawing board.&lt;/li&gt;
  &lt;/ol&gt;

  &lt;p&gt;In summation:&lt;/p&gt;

  &lt;img src='/images/ideo_hcd_toolkit/three_lenses.png'/&gt;
  &lt;cite&gt;Page 6 of the IDEO Toolkit&lt;/cite&gt;

  &lt;a href=&quot;/notes/2011/10/12/ideo-hcd-intro&quot; class=&quot;permalink&quot;&gt;October 12 2011&lt;/a&gt;
&lt;/article&gt;



</content>
 </entry>
 
 <entry>
   <title>Murray's Law for Success</title>
   <link href="http://renprovey.com/notes/2011/10/07/murrays-law"/>
   <updated>2011-10-07T00:00:00-07:00</updated>
   <id>http://renprovey.com/notes/2011/10/07/murrays-law</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;HBR: Murray's Law for Success on Your Terms&lt;/h1&gt;

  &lt;p&gt;There are three critical ideas within Murray's two sentences:&lt;/p&gt;
  &lt;blockquote cite=&quot;http://blogs.hbr.org/cs/2011/07/murrays_law_for_success_on_you.html&quot;&gt;
    &lt;ol&gt;
      &lt;li&gt;Are you positioning yourself so that one day, you do not have to work?&lt;/li&gt;
      &lt;li&gt;When you no longer have a financial need to work in the role you occupy, would you still continue to occupy that role?&lt;/li&gt;
      &lt;li&gt;Do you define your own standards of career excellence?&lt;/li&gt;
    &lt;/ol&gt;
  &lt;/blockquote&gt;

  &lt;blockquote cite=&quot;http://blogs.hbr.org/cs/2011/07/murrays_law_for_success_on_you.html&quot;&gt;
    &lt;p&gt;There are three phases in a professional life:&lt;/p&gt;
    &lt;ul&gt;
      &lt;li&gt;Learning the &quot;Game.&quot;&lt;/li&gt;
      &lt;li&gt;Winning the &quot;Game.&quot;&lt;/li&gt;
      &lt;li&gt;Defining the &quot;Game.&quot;&lt;/li&gt;
    &lt;/ul&gt;

    &lt;p&gt;Where are you? Where do you want to be?&lt;/p&gt;
  &lt;/blockquote&gt;

  &lt;p&gt;More at HBR's &lt;a href=&quot;http://blogs.hbr.org/cs/2011/07/murrays_law_for_success_on_you.html&quot;&gt;Murray's Law For Success.&lt;/a&gt;&lt;/p&gt;

  &lt;p&gt;I'll keep the cheap and preachy to a minimum the next few weeks, but wanted to record this.&lt;/p&gt;

  &lt;a href=&quot;/notes/2011/10/07/murrays-law&quot; class=&quot;permalink&quot;&gt;October 07 2011&lt;/a&gt;
&lt;/article&gt;



</content>
 </entry>
 
 <entry>
   <title>Hola 960.gs</title>
   <link href="http://renprovey.com/gs/2011/03/06/hola-960gs"/>
   <updated>2011-03-06T00:00:00-08:00</updated>
   <id>http://renprovey.com/gs/2011/03/06/hola-960gs</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;Hola 960.gs&lt;/h1&gt;

  &lt;p&gt;&quot;The premise of the system is ideally suited to rapid prototyping, but it would work equally well when integrated into a production environment. There are printable sketch sheets, design layouts, and a CSS file that have identical measurements.&quot; - &lt;a href=&quot;http://960.gs/&quot;&gt;http://960.gs/&lt;/a&gt;&lt;/p&gt;

  &lt;p&gt;What the hey? Sounds good enough to me, lets give it a whirl. Since this site is heavily gridded, I decided to convert it.&lt;/p&gt;

  &lt;p&gt;For starters I added the following a wrapping div &lt;code&gt;&amp;lt;div class=&quot;container_12&quot;&amp;gt;&lt;/code&gt;, you could go with 16 column grid: &lt;code&gt;&amp;lt;div class=&quot;container_16&quot;&amp;gt;&lt;/code&gt; and was in business.&lt;/p&gt;
  
  &lt;p&gt;Basically, moving items about the grid, is dead simple, above is my introduction:&lt;br&gt; &lt;code&gt;&amp;lt;h1 class=&quot;grid_5 prefix_7 clearfix&quot;&amp;gt;Hello, my name is ... and technology.&amp;lt;/h1&amp;gt;&lt;/code&gt;.&lt;/p&gt;
  
  &lt;p&gt;The class &lt;code&gt;grid_5&lt;/code&gt; places the element across 5 elements of the grid. I added a class of &lt;code&gt;prefix_7&lt;/code&gt;, which shifts the element to the right by 7 grid columns.&lt;/p&gt;

  &lt;p&gt;By using the &lt;code&gt;grid&lt;/code&gt;, &lt;code&gt;prefix&lt;/code&gt; &lt;code&gt;suffix&lt;/code&gt;, classes you can position elements about the grid. The last bit to remember is that if a continer has a grid within it, attach a class of &lt;code&gt;alpha&lt;/code&gt; and &lt;code&gt;omega&lt;/code&gt; to the last.&lt;/p&gt;

  &lt;a href=&quot;/gs/2011/03/06/hola-960gs&quot; class=&quot;permalink&quot;&gt;March 06 2011&lt;/a&gt;
&lt;/article&gt;
</content>
 </entry>
 
 <entry>
   <title>HTML5 Form Fun</title>
   <link href="http://renprovey.com/html5/2010/11/20/html5-forms"/>
   <updated>2010-11-20T00:00:00-08:00</updated>
   <id>http://renprovey.com/html5/2010/11/20/html5-forms</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;HTML5 Form Fun&lt;/h1&gt;

  &lt;p&gt;There is a lot of fun to be had here, but I am just going to cover the stuff that is relevant now.&lt;/p&gt;

  &lt;h2&gt;Placeholder Attribute&lt;/h2&gt;
  &lt;p&gt;One of the wonderful ways that HTML5 makes life easier is adding the placeholder  attribute to input and textarea fields:&lt;/p&gt;

  &lt;code&gt;&amp;lt;input type=&quot;text&quot; placeholder=&quot;sender@example.com&quot; /&amp;gt;&lt;/code&gt;&lt;br/&gt;
  &lt;code&gt;&amp;lt;textarea placeholder=&quot;Email body&quot; &amp;gt;&amp;lt;/textarea&amp;gt;&lt;/code&gt;

  &lt;h2&gt;Required Attribute&lt;/h2&gt;
  &lt;p&gt;While browsers don't actually respect this, this is a handy semantic way to hook in for your own javascript validation.  Like many attributes if the required exists it is considered to be true, if not false.&lt;/p&gt;

  &lt;code&gt;&amp;lt;input type=&quot;text&quot; placeholder=&quot;sender@example.com&quot; required /&amp;gt;&lt;/code&gt;&lt;br/&gt;
  &lt;code&gt;&amp;lt;textarea placeholder=&quot;Email body&quot; required &amp;gt;&amp;lt;/textarea&amp;gt;&lt;/code&gt;

  &lt;h2&gt;Autofocus Attribute&lt;/h2&gt;
  &lt;p&gt;You could use this, but honestly really? It either doesn't help or confuses regular users, and pisses off your power users.  Trust me, your site search probably sucks.&lt;/p&gt;

  &lt;h2&gt;Type Attribute&lt;/h2&gt;
  &lt;p&gt;Finally the type attribute gets a little loving, and how exciting that is:&lt;/p&gt;

  &lt;code&gt;&amp;lt;input type=&quot;text&quot; placeholder=&quot;text type&quot;&amp;gt;&lt;/code&gt;&lt;br/&gt;
  &lt;input type=&quot;text&quot; placeholder=&quot;text type&quot;/&gt;&lt;br/&gt;
  &lt;code&gt;&amp;lt;input type=&quot;search&quot; placeholder=&quot;search type&quot;&amp;gt;&lt;/code&gt;&lt;br/&gt;
  &lt;input type=&quot;search&quot; placeholder=&quot;search type&quot;/&gt;&lt;br/&gt;
  &lt;code&gt;&amp;lt;input type=&quot;email&quot; placeholder=&quot;email type&quot;&amp;gt;&lt;/code&gt;&lt;br/&gt;
  &lt;input type=&quot;email&quot; placeholder=&quot;email type&quot;/&gt;&lt;br/&gt;
  &lt;code&gt;&amp;lt;input type=&quot;url&quot; placeholder=&quot;url type&quot;&amp;gt;&lt;/code&gt;&lt;br/&gt;
  &lt;input type=&quot;url&quot; placeholder=&quot;url type&quot;/&gt;&lt;br/&gt;
  &lt;code&gt;&amp;lt;input type=&quot;tel&quot; placeholder=&quot;tel type&quot;&amp;gt;&lt;/code&gt;&lt;br/&gt;
  &lt;input type=&quot;tel&quot; placeholder=&quot;tel type&quot;/&gt;&lt;br/&gt;

  &lt;p&gt;These may not look different in a desktop browser, but by specifying the proper types, phones will change their keyboard styles to make input easy for the user.&lt;/p&gt;

  &lt;a href=&quot;/html5/2010/11/20/html5-forms&quot; class=&quot;permalink&quot;&gt;November 20 2010&lt;/a&gt;
&lt;/article&gt;
</content>
 </entry>
 
 <entry>
   <title>AV Club &mdash; HTML5's New Audio and Video Tags</title>
   <link href="http://renprovey.com/html5/2010/10/19/html5-av-club"/>
   <updated>2010-10-19T00:00:00-07:00</updated>
   <id>http://renprovey.com/html5/2010/10/19/html5-av-club</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;AV Club &amp;mdash; HTML5's New Audio and Video Tags&lt;/h1&gt;
  &lt;p&gt;They have been a long time coming, but HTML5 will finally introduce native, standardized playback with all the accompanying JavaScript support.&lt;/p&gt;

  &lt;h2&gt;HTML5 Audio Tag&lt;/h2&gt;
  &lt;p&gt;&lt;code&gt;&amp;lt;audio src=&quot;happyhappyjoyjoy.mp3&quot; controls&amp;gt;&amp;lt;/audio&amp;gt;&lt;/code&gt; &amp;mdash; Like many HTML5 tag attributes, by simply being there, &lt;code&gt;controls&lt;/code&gt; is true. Something like controls=&quot;false&quot; would still display controls (we're looking at if the attribute exists, not what it is set to).  If you don't want them, just leave &lt;code&gt;controls&lt;/code&gt; out.&lt;/p&gt;
  &lt;p&gt;The &lt;code&gt;preload&lt;/code&gt; attribute can be set to one of the following:
    &lt;ul&gt;
      &lt;li&gt;&lt;code&gt;none&lt;/code&gt; &amp;mdash; don't preload until specifically asked,&lt;/li&gt;
      &lt;li&gt;&lt;code&gt;auto&lt;/code&gt; &amp;mdash; preload as much as possible,&lt;/li&gt;
      &lt;li&gt;or &lt;code&gt;metadata&lt;/code&gt; &amp;mdash; (default) load metadata and first frame of video.&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/p&gt;
  &lt;p&gt;Other attributes are &lt;code&gt;autoplay&lt;/code&gt; and &lt;code&gt;loop&lt;/code&gt;.  For obvious reasons, never tell anyone that either of those exist.&lt;/p&gt;
  &lt;p&gt;&lt;code&gt;&amp;lt;audio&amp;gt;&lt;/code&gt; also has a long form for specifying fallbacks when an audio format is not supported:&lt;/p&gt;
  &lt;code&gt;&amp;lt;audio controls preload=&quot;none&quot;&amp;gt;&lt;br/&gt;
  &amp;nbsp;&amp;nbsp;&amp;lt;source src=&quot;happyhappyjoyjoy.mp3&quot;&amp;gt;&lt;br/&gt;
  &amp;nbsp;&amp;nbsp;&amp;lt;source src=&quot;happyhappyjoyjoy.ogg&quot;&amp;gt;&lt;br/&gt;
  &amp;lt;/audio&amp;gt;&lt;/code&gt;
  &lt;p&gt;At this point in the discussion, &lt;a class=&quot;book-title&quot; href=&quot;http://books.alistapart.com/products/html5-for-web-designers&quot;&gt;HTML5 For Web Designers&lt;/a&gt; author, Jeremy Keith, has a cheeky little bit about OGG not being &quot;crippled&quot; by software patents, so I'll add a cheeky little link &lt;a href=&quot;http://daringfireball.net/2007/04/wee_bit_more_on_aac&quot;&gt;here&lt;/a&gt;.  Good luck finding the comments section!&lt;/p&gt;
  
  &lt;h2&gt;HTML5 Video Tag&lt;/h2&gt;
  &lt;p&gt;Video is very similar with a few extra helpful attributes:&lt;br/&gt;&lt;code&gt;&amp;lt;video src=&quot;happyhappyjoyjoy.mp4&quot; controls width=&quot;300&quot; height=&quot;200&quot; poster=&quot;placeholder.png&quot;&amp;gt;&amp;lt;/video&amp;gt;&lt;/code&gt; &amp;mdash; all those should be self explanatory, &lt;code&gt;poster&lt;/code&gt; is what allows you to specify a placeholder image.&lt;/p&gt;
  
  &lt;p&gt;In long form to allow specification of fallbacks:&lt;/p&gt;
  
  &lt;code&gt;&amp;lt;video controls width=&quot;300&quot; height=&quot;200&quot; poster=&quot;placeholder.png&quot;&amp;gt;&lt;br/&gt;
  &amp;nbsp;&amp;nbsp;&amp;lt;source src=&quot;happyhappyjoyjoy.mp3&quot;&amp;gt;&lt;br/&gt;
  &amp;nbsp;&amp;nbsp;&amp;lt;source src=&quot;happyhappyjoyjoy.ogg&quot;&amp;gt;&lt;br/&gt;
  &amp;lt;/video&amp;gt;&lt;/code&gt;

  &lt;a href=&quot;/html5/2010/10/19/html5-av-club&quot; class=&quot;permalink&quot;&gt;October 19 2010&lt;/a&gt;
&lt;/article&gt;</content>
 </entry>
 
 <entry>
   <title>Heroku Pro Tip</title>
   <link href="http://renprovey.com/heroku/2010/10/14/heroku-pro-tip-1"/>
   <updated>2010-10-14T00:00:00-07:00</updated>
   <id>http://renprovey.com/heroku/2010/10/14/heroku-pro-tip-1</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;Heroku Pro Tip #1&lt;/h1&gt;
  &lt;p&gt;We interrupt your regularly scheduled programming to bring you this Heroku Pro Tip. If you're getting errors caused by Heroku installing your dev or test groups from bundler, run: &lt;code&gt;heroku config:add BUNDLE_WITHOUT=&quot;test development&quot; --app app_name&lt;/code&gt;&lt;/p&gt;

  &lt;a href=&quot;/heroku/2010/10/14/heroku-pro-tip-1&quot; class=&quot;permalink&quot;&gt;October 14 2010&lt;/a&gt;
&lt;/article&gt;</content>
 </entry>
 
 <entry>
   <title>HTML5 head</title>
   <link href="http://renprovey.com/html5/2010/10/13/html5-head"/>
   <updated>2010-10-13T00:00:00-07:00</updated>
   <id>http://renprovey.com/html5/2010/10/13/html5-head</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;HTML5 head&lt;/h1&gt;
  &lt;p&gt;Short and sweet:&lt;/p&gt;
  &lt;ul&gt;
    &lt;li&gt;Remember that old doctype? &lt;code&gt;&amp;lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01//EN&quot; &quot;http://www.w3.org/TR/html4/strict.dtd&quot; OMG this/goes //ON//FOREVER//EN&amp;gt;&lt;/code&gt; is now simply: &lt;code&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;/code&gt;&lt;/li&gt;
    &lt;li&gt;HTML5 allows you to drop the &lt;code&gt;type=&quot;text/css&quot;&lt;/code&gt; from your CSS tags: &lt;code&gt;&amp;lt;link rel=&quot;stylesheet&quot; href=&quot;/stylesheets/master.css&quot;&amp;gt;&lt;/code&gt;&lt;/li&gt;
    &lt;li&gt;Same goes for the &lt;code&gt;type=&quot;text/javascript&quot;&lt;/code&gt; in your script tag. The HTML5-ized version would simply be: &lt;code&gt;&amp;lt;script src=&quot;javascripts/modernizr-1.5.min.js&quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/li&gt;
  &lt;/ul&gt;
  
  &lt;p&gt;All of those are good to use now, so with all the time you just saved, I think you can treat yourself to a little WHAM...&lt;/p&gt;
  &lt;object width=&quot;480&quot; height=&quot;385&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/cEi2hKbgo0c?fs=1&amp;amp;hl=en_US&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/cEi2hKbgo0c?fs=1&amp;amp;hl=en_US&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;480&quot; height=&quot;385&quot;&gt;&lt;/embed&gt;&lt;/object&gt;

  &lt;a href=&quot;/html5/2010/10/13/html5-head&quot; class=&quot;permalink&quot;&gt;October 13 2010&lt;/a&gt;
&lt;/article&gt;</content>
 </entry>
 
 <entry>
   <title>Hello HTML5</title>
   <link href="http://renprovey.com/html5/2010/10/12/hello-html5"/>
   <updated>2010-10-12T00:00:00-07:00</updated>
   <id>http://renprovey.com/html5/2010/10/12/hello-html5</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;Hello HTML5&lt;/h1&gt;

  &lt;p&gt;To get ready for writing today's post, I polished up this blog's &lt;a href=&quot;http://github.com/ren/renprovey.com&quot;&gt;source code&lt;/a&gt;.  If you're like me, you're probably looking to jump into code as soon as possible.  To that end, head over to Paul Irish's excellent &lt;a href=&quot;http://html5boilerplate.com/&quot;&gt;HTML5 Boilerplate&lt;/a&gt;, download the commented template and start reading through while building.&lt;/p&gt;
  
  &lt;h2&gt;Resources I'll Be Using&lt;/h2&gt;
  &lt;ul&gt;
    &lt;li&gt;&lt;a href=&quot;http://books.alistapart.com/products/html5-for-web-designers&quot;&gt;HTML5 For Web Designers&lt;/a&gt; - it is small and fast, gets the job done for your markup.&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://html5doctor.com/&quot;&gt;HTML5 Doctor&lt;/a&gt; - a great reference, exampled, and explained.&lt;/li&gt;
  &lt;/ul&gt;
  
  &lt;p&gt;I'll try to keep this list updated as I find other useful resources.  For now have fun with &lt;a href=&quot;http://html5boilerplate.com/&quot;&gt;HTML5 Boilerplate&lt;/a&gt;.&lt;/p&gt;

  &lt;a href=&quot;/html5/2010/10/12/hello-html5&quot; class=&quot;permalink&quot;&gt;October 12 2010&lt;/a&gt;
&lt;/article&gt;
</content>
 </entry>
 
 <entry>
   <title>Git Odds and Ends</title>
   <link href="http://renprovey.com/git/2010/07/13/git-odds-and-ends"/>
   <updated>2010-07-13T00:00:00-07:00</updated>
   <id>http://renprovey.com/git/2010/07/13/git-odds-and-ends</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;Git Odds and Ends&lt;/h1&gt;

  &lt;p&gt;
  	&lt;code&gt;$ git gc&lt;/code&gt; &amp;mdash; Internally optimizes the way Git stores its history, the &lt;code&gt;--aggressive&lt;/code&gt; parameter takes things one step further by recalculating the deltas from scratch.&lt;br/&gt;
		&lt;code&gt;$ git archive --format=&amp;lt;zip or tar&amp;gt; --prefix=&amp;lt;prefix&amp;gt;/ HEAD &gt; filename.zip&lt;/code&gt; &amp;mdash; Valid format types are tar and zip.&lt;br/&gt;
		&lt;code&gt;$ git archive --format=tar --prefix=&amp;lt;prefix&amp;gt;/ &amp;lt;HEAD, commit hash, branch, or tag&amp;gt; | gzip &gt; filename.tar.gz&lt;/code&gt; &amp;mdash; Pipe into gzip&lt;br/&gt;
  &lt;/p&gt;

  &lt;a href=&quot;/git/2010/07/13/git-odds-and-ends&quot; class=&quot;permalink&quot;&gt;July 13 2010&lt;/a&gt;
&lt;/article&gt;
</content>
 </entry>
 
 <entry>
   <title>Git Submodules</title>
   <link href="http://renprovey.com/git/2010/07/12/git-submodule"/>
   <updated>2010-07-12T00:00:00-07:00</updated>
   <id>http://renprovey.com/git/2010/07/12/git-submodule</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;Git Submodule&lt;/h1&gt;

  &lt;p&gt;
  	&lt;code&gt;$ git submodule&lt;/code&gt; &amp;mdash; List your submodules, a - before the hash indicates the submodule is not initialized&lt;br/&gt;
		&lt;code&gt;$ git submodule add &amp;lt;git repository&amp;gt; &amp;lt;target directory&amp;gt;&lt;/code&gt; &amp;mdash; Let your project know about the submodule and where it will go&lt;br/&gt;
		&lt;code&gt;$ git submodule init &amp;lt;target directory&amp;gt;&lt;/code&gt; &amp;mdash; Initialize the submodule (this will add an entry to your .git/config file)&lt;br/&gt;
		&lt;code&gt;$ git submodule update &amp;lt;target directory&amp;gt;&lt;/code&gt; &amp;mdash; Pull in the contents of the submodule.  This command is destructive.&lt;br/&gt;
  &lt;/p&gt;  

  &lt;p&gt;The trick here is that a Git Submodule only tracks the revision from when it was added, not the latest version of whatever that submodule contains. To update a submodule:&lt;br/&gt;&lt;br/&gt;
    &lt;code&gt;$ cd &amp;lt;target directory&amp;gt;&lt;/code&gt;&lt;br/&gt;
    &lt;code&gt;$ git checkout HEAD&lt;/code&gt; &amp;mdash; The can be any revision, not necessarily HEAD.&lt;br/&gt;
    &lt;code&gt;$ git add &amp;lt;target directory&amp;gt;&lt;/code&gt;&lt;br/&gt;
    &lt;code&gt;$ git commit -m &quot;UPDATED: Submodule...&quot;&lt;/code&gt;&lt;br/&gt;
    
    &lt;/p&gt;

  &lt;a href=&quot;/git/2010/07/12/git-submodule&quot; class=&quot;permalink&quot;&gt;July 12 2010&lt;/a&gt;
&lt;/article&gt;
</content>
 </entry>
 
 <entry>
   <title>Git Rebase</title>
   <link href="http://renprovey.com/git/2010/07/08/git-rebase"/>
   <updated>2010-07-08T00:00:00-07:00</updated>
   <id>http://renprovey.com/git/2010/07/08/git-rebase</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;Git Rebase&lt;/h1&gt;

  &lt;p&gt;
    &lt;code&gt;$ git rebase -i HEAD~5&lt;/code&gt; &amp;mdash; Interactive rebase of the last 5 commits.  The sweet thing here is you can clean up a commit history.  You can also pass in a tag or hash range.&lt;br/&gt;
		&lt;code&gt;$ git rebase --continue&lt;/code&gt; &amp;mdash; If you have to drop out of the rebase to resolve a conflict, after you add the merged file(s), this is how to start it up again.&lt;br/&gt;
		&lt;code&gt;$ git rebase --abort&lt;/code&gt; &amp;mdash; Forget this.
  &lt;/p&gt;  

  &lt;a href=&quot;/git/2010/07/08/git-rebase&quot; class=&quot;permalink&quot;&gt;July 08 2010&lt;/a&gt;
&lt;/article&gt;
</content>
 </entry>
 
 <entry>
   <title>Git Blame</title>
   <link href="http://renprovey.com/git/2010/06/24/git-blame"/>
   <updated>2010-06-24T00:00:00-07:00</updated>
   <id>http://renprovey.com/git/2010/06/24/git-blame</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;Git Blame&lt;/h1&gt;
  &lt;p&gt;
    &lt;code&gt;$ git blame -L start_line,end_line file&lt;/code&gt; &amp;mdash; &lt;br/&gt;
    &lt;code&gt;$ git blame -L start_line,+5 file&lt;/code&gt; &amp;mdash; you can specify prev / more lines&lt;br/&gt;
    &lt;code&gt;$ git blame -L &quot;/regex/&quot;,+5 file&lt;/code&gt; &amp;mdash; you can use regex, you can optionally pass in a commit hash id before the file name
  &lt;/p&gt;
  
  &lt;h1&gt;Git Revert&lt;/h1&gt;
  &lt;p&gt;
    &lt;code&gt;$ git revert &lt;/code&gt; &amp;mdash; rolls back the previous commit, committing immediately&lt;br/&gt;
    &lt;code&gt;$ git revert -n HEAD&lt;/code&gt; &amp;mdash; roll back without committing&lt;br/&gt;
    &lt;code&gt;$ git blame -L &quot;/regex/&quot;,+5 file&lt;/code&gt; &amp;mdash; you can use regex, you can optionally pass in a commit hash id before the file name
  &lt;/p&gt;
  
  &lt;a href=&quot;/git/2010/06/24/git-blame&quot; class=&quot;permalink&quot;&gt;June 24 2010&lt;/a&gt;
&lt;/article&gt;
</content>
 </entry>
 
 <entry>
   <title>Getting Started with Jekyll</title>
   <link href="http://renprovey.com/jekyll/2010/06/23/getting-started-with-jekyll"/>
   <updated>2010-06-23T00:00:00-07:00</updated>
   <id>http://renprovey.com/jekyll/2010/06/23/getting-started-with-jekyll</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;Getting Started with Jekyll&lt;/h1&gt;
  &lt;p&gt;In rebuilding this site I made the move to &lt;a href=&quot;http://github.com/mojombo/jekyll&quot;&gt;Jekyll&lt;/a&gt;, an excellent static site generator.  Everything went swimmingly when I found what I was looking for, but the finding seemed a bit more difficult than I expected.  Maybe I missed a key resource, but I'll outline what I did to hopefully save someone a bit of time. You can also &lt;a href=&quot;http://github.com/ren/renprovey.com&quot;&gt;browse this site's repository&lt;/a&gt; and &lt;a href=&quot;http://wiki.github.com/mojombo/jekyll/sites&quot;&gt;others&lt;/a&gt; for more examples.&lt;/p&gt;

  &lt;h2&gt;Getting Started&lt;/h2&gt;
  &lt;p&gt;A few things to note, Jekyll gives the following special consideration:
    &lt;ul&gt;
      &lt;li&gt;&lt;code&gt;_config.yml&lt;/code&gt; &amp;mdash; file, stores site settings, you can see mine &lt;a href=&quot;http://github.com/ren/renprovey.com/blob/master/_config.yml&quot;&gt;here&lt;/a&gt;, and all options in the &lt;a href=&quot;http://wiki.github.com/mojombo/jekyll/configuration&quot;&gt;wiki&lt;/a&gt;.&lt;/li&gt;
      &lt;li&gt;&lt;code&gt;_site&lt;/code&gt; &amp;mdash; by default this is where Jekyll generates the static version of the site, you can override this in the _config.yml&lt;/li&gt;
      &lt;li&gt;&lt;code&gt;_posts&lt;/code&gt; &amp;mdash; directory, where Jekyll looks here for blog posts&lt;/li&gt;
      &lt;li&gt;&lt;code&gt;_layouts&lt;/code&gt; &amp;mdash; directory, contains your layout files. &lt;/li&gt;
      &lt;li&gt;&lt;code&gt;&amp;#123;&amp;#123;content&amp;#125;&amp;#125;&lt;/code&gt; tag in the layout is where the main body of content from your individual pages will be inserted.&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/p&gt;

  &lt;h2&gt;Page Settings&lt;/h2&gt;
  &lt;p&gt;At the top of each page you'll see the bits of information Jekyll uses when constructing the site, here is a sample for one of my blog posts:&lt;/p&gt;

  &lt;code class=&quot;block&quot;&gt;
  ---&lt;br/&gt;
  layout: default&lt;br/&gt;
  title: Git&lt;br/&gt;
  categories: jekyll&lt;br/&gt;
  published: true&lt;br/&gt;
  ---
  &lt;/code&gt;

  &lt;p&gt;These should be self explanatory, but lets run through them real quick:
    &lt;ul&gt;
      &lt;li&gt;&lt;code&gt;layout&lt;/code&gt; should correspond to a file in _layouts and is required for any file that is going to be generated using a template,&lt;/li&gt;
      &lt;li&gt;&lt;code&gt;title&lt;/code&gt; blog post title,&lt;/li&gt;
      &lt;li&gt;&lt;code&gt;categories&lt;/code&gt; blog post categories,&lt;/li&gt;
      &lt;li&gt;&lt;code&gt;published&lt;/code&gt; a boolean, regarding weather to publish the post.&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/p&gt;

  &lt;p&gt;You can also add custom attributes here, which you can call from the template using &amp;#123;&amp;#123;page.attribute_name&amp;#125;&amp;#125;&lt;/p&gt;

  &lt;h2&gt;Iterating Over Posts&lt;/h2&gt;

  &lt;p&gt;In my &lt;a href=&quot;http://github.com/ren/renprovey.com/blob/master/index.html&quot;&gt;index.html&lt;/a&gt; file, I have:&lt;/p&gt;

  &lt;code class=&quot;block&quot;&gt;
    &amp;#123;% for post in site.posts limit:5 %&amp;#125;&lt;br/&gt;
    &amp;#123;&amp;#123; post.content &amp;#125;&amp;#125;&lt;br/&gt;
    &amp;#123;% endfor %&amp;#125;
  &lt;/code&gt;

  &lt;p&gt;You can add more advanced options in the &lt;a href=&quot;http://wiki.github.com/mojombo/jekyll/template-data&quot;&gt;wiki&lt;/a&gt;. See the Pagination along with the Post sections for respective information.&lt;/p&gt;

  &lt;h2&gt;Setting Your Permalink Style&lt;/h2&gt;
  &lt;p&gt;You'll on the bottom of each of &lt;a href=&quot;http://github.com/ren/renprovey.com/tree/master/_posts/&quot;&gt;my post pages&lt;/a&gt;, you'll notice a call to {post.url}.  This is generated form a combination of two factors.  Jekyll can parse the date of the post from its file name, you'll notice anything in my _posts directory is named in the DD-MM-YYYY-post_title.html format. In my &lt;a href=&quot;http://github.com/ren/renprovey.com/blob/master/_config.yml&quot;&gt;_config.yml&lt;/a&gt; file you'll see a line similar to:&lt;br/&gt;
    &lt;code class=&quot;block&quot;&gt;permalink: /blog/:year/:month/:day/:title&lt;/code&gt;
  &lt;/p&gt;

  &lt;p&gt;Jekyll will parse this information out of the filename when creating the permalinks and blog directory.&lt;/p&gt;

  &lt;h2&gt;Other Resources:&lt;/h2&gt;
  &lt;ul&gt;
    &lt;li&gt;&lt;a href=&quot;http://github.com/mojombo/jekyll&quot;&gt;Jekyll on GitHub&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://wiki.github.com/mojombo/jekyll&quot;&gt;Jekyll Wiki&lt;/a&gt;&lt;/li&gt;
  &lt;/ul&gt;
  &lt;a href=&quot;/jekyll/2010/06/23/getting-started-with-jekyll&quot; class=&quot;permalink&quot;&gt;June 23 2010&lt;/a&gt;
&lt;/article&gt;</content>
 </entry>
 
 <entry>
   <title>Git Log</title>
   <link href="http://renprovey.com/git/2010/06/22/git-log"/>
   <updated>2010-06-22T00:00:00-07:00</updated>
   <id>http://renprovey.com/git/2010/06/22/git-log</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;Git Log&lt;/h1&gt;

  &lt;p&gt;
    &lt;code&gt;$ git log --since=&quot;5 hours&quot;&lt;/code&gt; &amp;mdash; commits in the last 5 hours&lt;br/&gt;
    &lt;code&gt;$ git log --before=&quot;5 hours&quot;&lt;/code&gt; &amp;mdash; without commits from the last 5 hours&lt;br/&gt;
    &lt;code&gt;$ git log &amp;lt;commit marker&amp;gt;..&amp;lt;commit marker&amp;gt;&lt;/code&gt; &amp;mdash; log for a commit range&lt;br/&gt;
    &lt;code&gt;$ git log &amp;lt;commit marker&amp;gt;^&lt;/code&gt; &amp;mdash; a caret acts like a minus one, you can use multiple carets.&lt;br/&gt;
    &lt;code&gt;$ git log &amp;lt;commit marker&amp;gt;~2&lt;/code&gt; &amp;mdash; two revisions prior to what the hash or tag specifies.&lt;br/&gt;
    &lt;code&gt;$ git log --pretty=oneline &amp;lt;commit marker&amp;gt;..&amp;lt;commit marker&amp;gt;&lt;/code&gt; &amp;mdash; a nice way to tighten up the log output.
  &lt;/p&gt;  
  
  &lt;a href=&quot;/git/2010/06/22/git-log&quot; class=&quot;permalink&quot;&gt;June 22 2010&lt;/a&gt;
&lt;/article&gt;
</content>
 </entry>
 
 <entry>
   <title>Git Diff</title>
   <link href="http://renprovey.com/git/2010/06/21/git-diff"/>
   <updated>2010-06-21T00:00:00-07:00</updated>
   <id>http://renprovey.com/git/2010/06/21/git-diff</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;Git Diff&lt;/h1&gt;

  &lt;p&gt;
    &lt;code&gt;$ git diff&lt;/code&gt; &amp;mdash; working tree v. staging area&lt;br/&gt;
    &lt;code&gt;$ git diff --cached&lt;/code&gt; &amp;mdash; staging area v. repo&lt;br/&gt;
    &lt;code&gt;$ git diff HEAD&lt;/code&gt; &amp;mdash; tree, staging area v. HEAD
  &lt;/p&gt;
  
  &lt;p&gt;
    &lt;code&gt;$ git diff --stat &amp;lt;commit marker&amp;gt; &amp;lt;commit marker&amp;gt;&lt;/code&gt; &amp;mdash; Amount of code that has been changed since a tag or hash.
  &lt;/p&gt;

  &lt;a href=&quot;/git/2010/06/21/git-diff&quot; class=&quot;permalink&quot;&gt;June 21 2010&lt;/a&gt;
&lt;/article&gt;</content>
 </entry>
 
 <entry>
   <title>Ignore Files in Git</title>
   <link href="http://renprovey.com/git/2010/06/20/ignore-files-in-git"/>
   <updated>2010-06-20T00:00:00-07:00</updated>
   <id>http://renprovey.com/git/2010/06/20/ignore-files-in-git</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;Ignoring Files in Git&lt;/h1&gt;

  &lt;p&gt;
    &lt;code&gt;.gitignore&lt;/code&gt; &amp;mdash; repo level ignore.&lt;br/&gt;
    &lt;code&gt;&amp;lt;repo&amp;gt;/.git/info/exclude&lt;/code&gt; &amp;mdash; local ignore.
  &lt;/p&gt;

  &lt;a href=&quot;/git/2010/06/20/ignore-files-in-git&quot; class=&quot;permalink&quot;&gt;June 20 2010&lt;/a&gt;
&lt;/article&gt;
</content>
 </entry>
 
 <entry>
   <title>Git Branches</title>
   <link href="http://renprovey.com/git/2010/06/19/git-branches"/>
   <updated>2010-06-19T00:00:00-07:00</updated>
   <id>http://renprovey.com/git/2010/06/19/git-branches</id>
   <content type="html">&lt;article&gt;
  &lt;h1&gt;Git Branches&lt;/h1&gt;
  &lt;code&gt;git checkout -b &amp;lt;new branch&amp;gt;&lt;/code&gt; &amp;mdash; create and switch to.&lt;br/&gt;
  &lt;code&gt;git branch -m &amp;lt;current branch&amp;gt; &amp;lt;new branch&amp;gt;&lt;/code&gt; &amp;mdash; move branch.&lt;br/&gt;
  &lt;code&gt;git branch -d &amp;lt;branch&amp;gt;&lt;/code&gt; &amp;mdash; delete branch.&lt;br/&gt;
  
  &lt;a href=&quot;/git/2010/06/19/git-branches&quot; class=&quot;permalink&quot;&gt;June 19 2010&lt;/a&gt;
&lt;/article&gt;</content>
 </entry>
 
 
</feed>
