<?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:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">

<channel>
	<title>Carlos Gabaldon</title>
	
	<link>http://carlosgabaldon.com</link>
	<description />
	<lastBuildDate>Sat, 04 Feb 2012 19:34:22 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain="carlosgabaldon.com" port="80" path="/?rsscloud=notify" registerProcedure="" protocol="http-post" />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Carlos Gabaldon</title>
		<link>http://carlosgabaldon.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://carlosgabaldon.com/osd.xml" title="Carlos Gabaldon" />
	
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/CarlosGabaldon" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="carlosgabaldon" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://carlosgabaldon.com/?pushpress=hub" /><item>
		<title>SCALE 10x 2012</title>
		<link>http://carlosgabaldon.com/2012/01/20/scale-10x-2012/</link>
		<comments>http://carlosgabaldon.com/2012/01/20/scale-10x-2012/#comments</comments>
		<pubDate>Fri, 20 Jan 2012 17:06:23 +0000</pubDate>
		<dc:creator>carlosgabaldon</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://carlosgabaldon.com/?p=463</guid>
		<description><![CDATA[I am at the SCALE 10x conference today in LA. I just finished registration, the line was long, but I made it through. The first talk I will be attending is called Mentoring Moments: Creating Opportunities for Success presented by Amber Graner I will be doing live blogging throughout the day.. UPDATE&#8230;. Mentoring Moments: Creating [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=463&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I am at the <a href="https://www.socallinuxexpo.org/scale10x/schedule">SCALE 10x</a> conference today in LA. I just finished registration, the line was long, but I made it through.</p>
<p>The first talk I will be attending is called <a href="http://www.socallinuxexpo.org/scale10x/presentations/mentoring-moments-creating-opportunities-success">Mentoring Moments: Creating Opportunities for Success</a> presented by <a href="http://www.socallinuxexpo.org/scale10x/speakers/amber/graner">Amber Graner</a></p>
<p>I will be doing live blogging throughout the day..</p>
<p>UPDATE&#8230;.</p>
<p>Mentoring Moments: Creating Opportunities for Success presented by Amber Graner. </p>
<p>What is a mentor?<br />
- Strong interpersonal skills<br />
- Strong Supervisory Skills<br />
- Knowledge of the project<br />
&#8211; Have a broad knowledge of the project to match up people<br />
- Interested in someone else&#8217;s growth<br />
&#8211; What their feedback, you care about their growth..It can not be about you it has to be about their growth.</p>
<p>What Mentors Do?<br />
- Set high expectations of performance, but not unattainable.<br />
- Offer challenging ideas<br />
- Help build self confidence<br />
- Encourage professional behavior<br />
- Offer friendship<br />
- Listen to personal problems<br />
- Control negative behaviors &amp; attitudes<br />
- Teach by example<br />
- Provide growth experiences<br />
- Explain how the project works<br />
- Couches are not the same as mentors<br />
&#8211; Couches successes can be easily measured by performance<br />
&#8211; Mentors teach the whole of the person<br />
&#8212; Interpersonal skills<br />
&#8212; Communication skills<br />
&#8211; Good leaders are usually good mentors<br />
- Mentors are self aware of their actions &amp; behaviors<br />
- Open source work should be put on their resume..</p>
<p>What makes you a mentor?<br />
- Role Model<br />
&#8211; People want to emulate their behavior<br />
- Teacher<br />
- Friend<br />
- Support<br />
- Resource</p>
<p>What are moments?<br />
- teaching someone skills in brief periods of time, should be present.</p>
<p>How to create moments?<br />
- 1:1 Conversions<br />
- Meetings<br />
- Blog posts<br />
- Actions<br />
&#8211; You need to create those moments..every day.. all the time..<br />
&#8211; Make those moments fun</p>
<p>How do you evaluate success?<br />
- If you can create favorable or desired actions in people  from brief moments.</p>
<p>Take ways<br />
- Know the person well enough to know when to push them and when to hold back.<br />
- Always be open to being mentored yourself..<br />
- Traditional mentoring does not work<br />
- Corporate methods do not work, because community based teams do not care about traditional methods.<br />
- Be yourself without apology<br />
- It is not personal<br />
- Don&#8217;t be afraid to fail publicly<br />
- I am good enough<br />
- Collaborate openly<br />
&#8211; Tell people your ideas, do not be afraid to share your thoughts<br />
- Be Transparent<br />
- Take ad-hoc moments to mentor people, when people ask for help<br />
- Teach someone how to do something then get out of their way so they can do it<br />
- Set times, no longer than a day to work on a skill set or share information<br />
- How to find a mentor? Look for them! Ask them!</p>
<p>UPDATE&#8230;.</p>
<p>-<br />
<a href="http://www.socallinuxexpo.org/scale10x/speakers/lee/thompson">Lee Thompson</a><br />
<a href="http://www.socallinuxexpo.org/scale10x/presentations/devops-day-keynote">DevOps Day Keynote</a></p>
<p>SCALE DevOps day<br />
Lee Thompson is CTO at MorphLabs</p>
<p>- DevOps is a community based idea, not a set of specific practices.<br />
- <a href="http://code.google.com/p/devops-toolchain/">DevOps toolchain</a><br />
- Ops wants stability<br />
- Dev wants change<br />
- Each have different traditional goals<br />
- The Visible OPS Handbook<br />
- Agile development fixes the wall between Biz &amp; DEV<br />
- DevOps fixes the wall between DEV &amp; Ops<br />
- Dev view<br />
&#8211; Lack of visibility into production<br />
&#8211; Schedule slippage due to deployment problems<br />
&#8211; Lack of understanding in operations<br />
&#8211; Release process is awkward<br />
- Ops view<br />
&#8211; 80% of prod outages are related to changes<br />
- Businesses spend almost half them time on change management<br />
&#8211; 47% of time is related to change management<br />
- Everyone has monitoring, but almost no one has control, why?<br />
- Need a control toolchain<br />
&#8211; Runbook Automation<br />
&#8211; Control<br />
&#8211; Eventing, Alarm<br />
&#8211; Charting, History<br />
&#8211; Measurement Instrumentation<br />
&#8211; System<br />
- SPC<br />
&#8211; Process control<br />
&#8212; Keep things in standard deviation, goes out start alarming<br />
&#8212; View few companies do SPC<br />
- Lean Development<br />
&#8211; Focus on Value Stream Mapping<br />
&#8212; Understand what creates value in the process<br />
- Read the Lean Startup &#8211; discusses the biz problem<br />
&#8211; Aligns the concepts of DevOps with biz<br />
&#8211; Provides tools<br />
&#8212; Minimum Viable System<br />
&#8212; Reduce Batch Size<br />
&#8212; Continuous Integration<br />
&#8212; Continuous Deployment<br />
&#8212; Innovation Accounting<br />
&#8211; Fail quick and Pivot<br />
&#8211; To do lean Startup, you need DevOps!<br />
Take ways<br />
- Development has over focus on unit test and lack of focus on integration tests<br />
- Integration testing is harder than actual development<br />
- It is about people working together..<br />
- <a href="http://www.flickr.com/photos/carlosgabaldon/6731970115/" title="DevOps by Carlos Gabaldon, on Flickr"><img src="http://farm8.staticflickr.com/7173/6731970115_a374b4b62d.jpg" width="320" height="240" alt="DevOps"></a></p>
<p>UPDATE&#8230;</p>
<p><a href="http://www.socallinuxexpo.org/scale10x/speakers/Christopher/Nolan">Christopher Nolan</a></p>
<p><a href="http://www.socallinuxexpo.org/scale10x/presentations/nventory-your-infrastructures-source-truth">nventory &#8211; Your Infrastructure&#8217;s Source of Truth</a></p>
<p><a href="http://sourceforge.net/apps/trac/nventory/wiki">nVentory</a><br />
- Collects data in automated fashion<br />
- Allows programs and people collect data about your infrastructure<br />
- Common, but painful Sources of Truth<br />
&#8211; Spreadsheet<br />
&#8211; Static file<br />
&#8211; DNS<br />
&#8211; Hostname<br />
&#8211; MySQL/Postgres<br />
&#8211; Custom Solution<br />
- Better approaches<br />
&#8211; Puppet and Chef are better<br />
&#8211; Enterprise solutions are expensive</p>
<p>Why nVentory?<br />
- Centralized<br />
- Detailed<br />
- Metadata<br />
- Multiple access methods<br />
- API<br />
- etc</p>
<p>Why for DevOps?<br />
- It is essential that all individual tools be consider part of a a large toolchain that spans the entire dev to ops lifecycle<br />
- Your tools should all talk to a master<br />
&#8211; Everyone should know where to go for answers</p>
<p>What is nVentory?<br />
- Provides the foundation, you have to build the house<br />
eHarmony uses:<br />
- Chef-solo &#8211; app config mgt<br />
- Etch &#8211; sys config mgt<br />
- Jenkins &#8211; ci<br />
- Self service VMs &#8211; custom private clouds<br />
- Splunk &#8211; Monitoring<br />
- Finance &#8211; audits<br />
- QA, Ops, and Engineering</p>
<p>Objects are the key to nVentory!<br />
- Everything is an object<br />
&#8211; Rack, nodes, load balancer, etc<br />
&#8211; Tree of relationships<br />
&#8211; Node Group is related objects based on purpose</p>
<p>Other Objects that nVentory provides!<br />
&#8211; status<br />
&#8211; hardware_profile<br />
&#8211; operating_system<br />
&#8211; network_interface<br />
&#8211; ip_address<br />
&#8211; vip<br />
&#8211; lb_pool<br />
&#8211; tags &amp; graffiti<br />
&#8212; allow customization of nVentory</p>
<p>How is the nVentory Server built?<br />
- Uses MVC pattern<br />
- Heavy usage of ActiveRecord<br />
- For each object, there are corresponding model, view and controller for it<br />
- RESTful API<br />
&#8211; Makes integration very easy since it uses HTTP and associated VERBS (GET, POST, PUT, DESTROY)</p>
<p><a href="http://www.flickr.com/photos/carlosgabaldon/6732271375/" title="nVentory by Carlos Gabaldon, on Flickr"><img src="http://farm8.staticflickr.com/7172/6732271375_cb3cfb8ab4.jpg" width="240" height="320" alt="nVentory"></a></p>
<p>nVentory Clients<br />
- Written in Ruby &amp; Perl<br />
- Uses various tools to gather host/hardware info<br />
- Clients use the RESTful api to talk with the Server by invoking the nv-register command</p>
<p>How do you setup client?<br />
- Install one each box at build time</p>
<p>nVentory client provides simple commands for getting things such as:<br />
- Get host names<br />
- Get node groups<br />
- Get named hosts<br />
- etc..<br />
- Can also use Ruby api for developing clients</p>
<p>How does eHarmony use nVentory?<br />
- User mgt<br />
- Actions to a group of machines<br />
- Config mgt<br />
- Discovery of node details<br />
- Change mgt<br />
- Use the api to write scripts that pull all the machine in a given node group then act on them</p>
<p>Demo<br />
&#8211; http://nventory.slacklabs.com/</p>
<p>UPDATE&#8230;</p>
<p><a href="http://www.socallinuxexpo.org/scale10x/presentations/devops-lightning-talks">DevOps Lightning Talks</a></p>
<p>Four lighting talks..</p>
<p>Communication topic<br />
- Part of a triangle<br />
&#8211; Infinity<br />
&#8212; natural emotional response<br />
&#8212; degree of liking, people are naturally social<br />
&#8211; Reality<br />
&#8212; the state of things as they are or they appear to be<br />
&#8212; is subjective<br />
&#8211; Communication<br />
&#8212; imparting or interchange of ideas<br />
&#8212; most important part of the triangle</p>
<p>Increase Infinity<br />
- Find something to like about another person<br />
- Find something that the person agrees with to find a common ground<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
HA Proxy topic &#8211; <a href="https://github.com/flores/tooling-haproxy_scale10x">Slides</a><br />
- mature 10 years old<br />
- purpose is a load balancer, that is it<br />
- configuration can get ugly<br />
&#8211; haproxy_join can solve complexity<br />
- has web ui for managing<br />
- has command line, but unfriendly<br />
&#8211; haproxyctl simplifies<br />
- ruby gems<br />
&#8211; rhapr &#8211; can manage multiple HAProxies<br />
&#8211; easy libs<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
Visualizing Http benchmarks topic &#8211; <a href="https://github.com/andrewvc/parbench">parbench</a><br />
- incorporates time into the benchmark<br />
- randomly sleep benchmarks<br />
<a href="http://www.flickr.com/photos/carlosgabaldon/6732901243/" title="Visual http by Carlos Gabaldon, on Flickr"><img src="http://farm8.staticflickr.com/7150/6732901243_c3ec8c6d1f.jpg" width="240" height="320" alt="Visual http"></a><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
Control for the Cloud topic &#8211; John Willis</p>
<p>Three legs of the cloud &#8211; Challenges<br />
- Infrastructure<br />
&#8211; Private, Public, Hybrid?<br />
- Cloud Management<br />
&#8211; ACL, DR, Auth, Auditing, Security, financial controls, compliance<br />
- Configuration Management<br />
&#8211; Puppet, Chef?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/carlosgabaldon.wordpress.com/463/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/carlosgabaldon.wordpress.com/463/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/carlosgabaldon.wordpress.com/463/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/carlosgabaldon.wordpress.com/463/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/carlosgabaldon.wordpress.com/463/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/carlosgabaldon.wordpress.com/463/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/carlosgabaldon.wordpress.com/463/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/carlosgabaldon.wordpress.com/463/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/carlosgabaldon.wordpress.com/463/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/carlosgabaldon.wordpress.com/463/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/carlosgabaldon.wordpress.com/463/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/carlosgabaldon.wordpress.com/463/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/carlosgabaldon.wordpress.com/463/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/carlosgabaldon.wordpress.com/463/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=463&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />
<p><a href="http://feedads.g.doubleclick.net/~a/Dg2_73MAl_qUdzki50lToa9Sd-M/0/da"><img src="http://feedads.g.doubleclick.net/~a/Dg2_73MAl_qUdzki50lToa9Sd-M/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Dg2_73MAl_qUdzki50lToa9Sd-M/1/da"><img src="http://feedads.g.doubleclick.net/~a/Dg2_73MAl_qUdzki50lToa9Sd-M/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://carlosgabaldon.com/2012/01/20/scale-10x-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9f22a8f13769b4ad434bbf5694d9b718?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">carlosgabaldon</media:title>
		</media:content>

		<media:content url="http://farm8.staticflickr.com/7173/6731970115_a374b4b62d.jpg" medium="image">
			<media:title type="html">DevOps</media:title>
		</media:content>

		<media:content url="http://farm8.staticflickr.com/7172/6732271375_cb3cfb8ab4.jpg" medium="image">
			<media:title type="html">nVentory</media:title>
		</media:content>

		<media:content url="http://farm8.staticflickr.com/7150/6732901243_c3ec8c6d1f.jpg" medium="image">
			<media:title type="html">Visual http</media:title>
		</media:content>
	</item>
		<item>
		<title>Finding your inspiration</title>
		<link>http://carlosgabaldon.com/2012/01/17/finding-your-inspiration/</link>
		<comments>http://carlosgabaldon.com/2012/01/17/finding-your-inspiration/#comments</comments>
		<pubDate>Tue, 17 Jan 2012 21:50:15 +0000</pubDate>
		<dc:creator>carlosgabaldon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[inspiration]]></category>
		<category><![CDATA[marathon]]></category>
		<category><![CDATA[running]]></category>

		<guid isPermaLink="false">http://carlosgabaldon.com/?p=442</guid>
		<description><![CDATA[Three months ago I decided I wanted to start running, but like many people I did not really like running. I figured the best approach was to just jump &#8220;feet&#8221; first into the idea of becoming a runner. After a few weeks I was making physical progress but, I was still not mentally into the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=442&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Three months ago I decided I wanted to start running, but like many people I did not really like running. I figured the best approach was to just jump &#8220;feet&#8221; first into the idea of becoming a runner. After a few weeks I was making physical progress but, I was still not mentally into the run.</p>
<blockquote><p>I was doing the run, but not being in the run. </p></blockquote>
<p>Then in my quest for inspiration I happened to be reading a Runner&#8217;s World <a href="http://www.runnersworld.com/article/0,7120,s6-243-544--14034-0,00.html" target="_blank">article</a> about how Flea from the Red Hot Chili Peppers was inspired by the book <a href="http://www.amazon.com/Born-Run-Hidden-Superathletes-Greatest/dp/0307266303" title="Born to Run" target="_blank">Born to Run</a> by Christopher McDougall. So I picked up a copy of the book and started reading. I was amazed how it quickly transformed by view point on running. My next run I decided to ditch the iPod and focus on being <a href="http://en.wikipedia.org/wiki/Mindfulness" title="Mindfullness" target="_blank">mindful </a>during my run. </p>
<blockquote><p>I focused on my breathing, how my legs felt, the temperature outside, how it made me feel, the trees, the wind, essentially the pure feeling of the run.</p></blockquote>
<p>So my journey went from:</p>
<ol>
<li><img src="http://www.chrismcdougall.com/images/cover_pb.jpg" alt="Born to Run" />  </li>
<li><img src="http://www.rei.com/media/hh/32c0226c-c9ae-4625-b6dc-d591f1c870cc.jpg" height="200px" width="200px" /> </li>
<li><img src="http://images.marathonfoto.com/69/717669/1665/0029t.jpg" /> </li>
</ol>
<p>Now with my first <a href="http://runrocknroll.competitor.com/arizona" title="PF Changs Rock ‘n’ Roll Arizona Marathon" target="_blank">1/2 marathon</a> complete with a pretty good <a href="http://running.competitor.com/cgiresults_details?pId=7315349&amp;eId=44&amp;eiId=71&amp;seId=215" title="2:08" target="_blank">time</a>, </p>
<blockquote><p>I know now that I am just starting my journey&#8230;</p></blockquote>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/carlosgabaldon.wordpress.com/442/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/carlosgabaldon.wordpress.com/442/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/carlosgabaldon.wordpress.com/442/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/carlosgabaldon.wordpress.com/442/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/carlosgabaldon.wordpress.com/442/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/carlosgabaldon.wordpress.com/442/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/carlosgabaldon.wordpress.com/442/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/carlosgabaldon.wordpress.com/442/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/carlosgabaldon.wordpress.com/442/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/carlosgabaldon.wordpress.com/442/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/carlosgabaldon.wordpress.com/442/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/carlosgabaldon.wordpress.com/442/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/carlosgabaldon.wordpress.com/442/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/carlosgabaldon.wordpress.com/442/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=442&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />
<p><a href="http://feedads.g.doubleclick.net/~a/vosOhA5I7Z9Ty3BsA__Mm9on3ls/0/da"><img src="http://feedads.g.doubleclick.net/~a/vosOhA5I7Z9Ty3BsA__Mm9on3ls/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/vosOhA5I7Z9Ty3BsA__Mm9on3ls/1/da"><img src="http://feedads.g.doubleclick.net/~a/vosOhA5I7Z9Ty3BsA__Mm9on3ls/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://carlosgabaldon.com/2012/01/17/finding-your-inspiration/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9f22a8f13769b4ad434bbf5694d9b718?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">carlosgabaldon</media:title>
		</media:content>

		<media:content url="http://www.chrismcdougall.com/images/cover_pb.jpg" medium="image">
			<media:title type="html">Born to Run</media:title>
		</media:content>

		<media:content url="http://www.rei.com/media/hh/32c0226c-c9ae-4625-b6dc-d591f1c870cc.jpg" medium="image" />

		<media:content url="http://images.marathonfoto.com/69/717669/1665/0029t.jpg" medium="image" />
	</item>
		<item>
		<title>Rails Common Commands</title>
		<link>http://carlosgabaldon.com/2010/10/03/rails-common-commands/</link>
		<comments>http://carlosgabaldon.com/2010/10/03/rails-common-commands/#comments</comments>
		<pubDate>Sun, 03 Oct 2010 06:19:09 +0000</pubDate>
		<dc:creator>carlosgabaldon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://carlosgabaldon.com/2010/10/03/rails-common-commands/</guid>
		<description><![CDATA[A list of frequent Rails command line commands. rvm use ruby-1.9.2-p0 - ruby version manager; switches to Ruby 1.9.2 rvm use ruby-1.9.2-p0 --default - ruby version manager; sets 1.9.2 as default rvm use system - ruby version manager; switches to Ruby 1.87 rails new - creates a new Rails application rails server [s] - launches [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=403&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A list of frequent Rails command line commands.</p>
<pre style="overflow:auto;margin:.8em 0;padding:5px;">
<ul>
<li><b>rvm use ruby-1.9.2-p0</b> - ruby version manager; switches to Ruby 1.9.2</li>
<li><b>rvm use ruby-1.9.2-p0 --default </b> - ruby version manager; sets 1.9.2 as default</li>
<li><b>rvm use system</b> - ruby version manager; switches to Ruby 1.87</li>
<li><b>rails new</b> - creates a new Rails application</li>
<li><b>rails server [s]</b> - launches WEBrick web server</li>
<li><b>rails generate [g]</b> - lists available generators </li>
<li><b>rails generate controller --help</b> - provides usage documentation</li>
<li><b>rails generate model --help</b> - provides usage documentation</li>
<li><b>rails generate migration --help</b> - provides usage documentation</li>
<li><b>rails destroy controller [Name]</b> - undo generate controller</li>
<li><b>rails destroy model [Name]</b> - undo generate model</li>
<li><b>rails generate scaffold [Name] --skip --no-migration</b> - scaffold skipping existing files</li>
<li><b>rake db:migrate</b> - runs database migrations</li>
<li><b>rake db:test:clone</b> - clones current environment's database schema</li>
<li><b>rake db:test:purge</b> - empties the test database</li>
<li><b>rake routes</b> - list of all of the available routes</li>
<li><b>rake -T</b> - list of rake commands</li>
<li><b>git init</b> - creates git repo</li>
<li><b>git add .</b> - adds all files to working tree</li>
<li><b>git commit -m "Initial commit"</b> - commits files to repo</li>
<li><b>git status</b> - status of the working tree</li>
<li><b>git push origin master</b> - merges local repo with remote</li>
<li><b>git checkout -b new-dev</b> - creates topic branch</li>
<li><b>git checkout master</b> - switches to master branch</li>
<li><b>git merge new-dev</b> - merges new-dev branch into master branch</li>
<li><b>git checkout -f</b> - undo uncommitted changes on working tree</li>
<li><b>git branch</b> - list branches</li>
<li><b>git branch -d modify-README</b> - deletes branch</li>
<li><b>git mv README README.markdown</b> - renames files using move command</li>
<li><b>heroku create</b> - creates app on Heroku servers</li>
<li><b>git push heroku master</b> - pushs app on to Heroku servers</li>
<li><b>heroku rake db:migrate</b> - runs database migrations on Heroku servers</li>
<li><b>heroku pg:reset --db SHARED_DATABASE_URL</b> - deletes database file</li>
<li><b>heroku db:push</b> - transfer an existing database to Heroku.</li>
<li><b>rails console</b> - command line interface to Rails app</li>
<li><b>rails dbconsole</b> - command line database interface</li>
<li><b>bundle install</b> - installs gems from Gemfile</li>
</ul>
</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/carlosgabaldon.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/carlosgabaldon.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/carlosgabaldon.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/carlosgabaldon.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/carlosgabaldon.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/carlosgabaldon.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/carlosgabaldon.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/carlosgabaldon.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/carlosgabaldon.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/carlosgabaldon.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/carlosgabaldon.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/carlosgabaldon.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/carlosgabaldon.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/carlosgabaldon.wordpress.com/403/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=403&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />
<p><a href="http://feedads.g.doubleclick.net/~a/0zJj5RumXpv2577CGy8p3huxT_Q/0/da"><img src="http://feedads.g.doubleclick.net/~a/0zJj5RumXpv2577CGy8p3huxT_Q/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/0zJj5RumXpv2577CGy8p3huxT_Q/1/da"><img src="http://feedads.g.doubleclick.net/~a/0zJj5RumXpv2577CGy8p3huxT_Q/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://carlosgabaldon.com/2010/10/03/rails-common-commands/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9f22a8f13769b4ad434bbf5694d9b718?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">carlosgabaldon</media:title>
		</media:content>
	</item>
		<item>
		<title>Rubyist OS X Dev setup</title>
		<link>http://carlosgabaldon.com/2010/05/30/rubyist-os-x-dev-setup/</link>
		<comments>http://carlosgabaldon.com/2010/05/30/rubyist-os-x-dev-setup/#comments</comments>
		<pubDate>Sun, 30 May 2010 04:08:59 +0000</pubDate>
		<dc:creator>carlosgabaldon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[os_x]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://carlosgabaldon.com/2010/05/30/rubyist-os-x-dev-setup/</guid>
		<description><![CDATA[I just bought a shiny new MacBook Pro with a 2.4 GHz Core i5, 8 GB Memory, on OS X 10.63 and thought I would share my setup. TextMate Head over to http://macromates.com/ and download TextMate. Once we have installed TextMate we are going to configure it. From the TextMate menu go to: TextMate &#62;&#62; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=385&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I just bought a shiny new <a href="http://www.apple.com/macbookpro/">MacBook Pro</a> with a 2.4 GHz Core i5, 8 GB Memory, on OS X 10.63 and thought I would share my setup.</p>
<h1>TextMate</h1>
<p>
Head over to <a href="http://macromates.com/">http://macromates.com/</a> and download TextMate. Once we have installed TextMate we are going to configure it. From the TextMate menu go to:</p>
<p>TextMate &gt;&gt; Preferences &gt;&gt; Fonts &amp; Colors. Then select the &#8220;Twilight&#8221; theme.
</p>
<p>
For smaller projects where we do the markup ourselves we are going to use <a href="http://haml.hamptoncatlin.com/">Haml</a>, which we will install shortly, TextMate does not include this bundle by default, so we need to add it. Open up terminal and enter the following:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
cd /Applications/TextMate.app/Contents/SharedSupport/Bundles
svn co "http://svn.textmate.org/trunk/Bundles/Ruby%20Haml.tmbundle/"
</pre>
<p>Back in TextMate go to Bundles &gt;&gt; Bundle Editor &gt;&gt; Reload Bundles.
</p>
<h1>Terminal</h1>
<p>Next on our list is to configure Terminal.</p>
<p>The first thing we want to do is setup the bash prompt for Git. This cool trick will show our checked out topic branch right at the prompt:</p>
<div style="font-size:.8em;line-height:1.6em;margin:0 0 10px;padding:0;"><a href="http://www.flickr.com/photos/carlosgabaldon/4651260727/" title="Git_topic_branch_at_prompt"><img src="http://farm5.static.flickr.com/4027/4651260727_c782612eac.jpg" alt="Git_topic_branch_at_prompt by Carlos Gabaldon" /></a><br /><span style="margin:0;"><a href="http://www.flickr.com/photos/carlosgabaldon/4651260727/">Git_topic_branch_at_prompt</a>, a photo by <a href="http://www.flickr.com/photos/carlosgabaldon/">Carlos Gabaldon</a> on Flickr.</span></div>
</p>
<p>Open a Terminal session and type the follow:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
sudo mate ~/.bash_login
</pre>
<p>To configure we will copy the following into our .bash_login file:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">

   RED="\[33[0;31m\]"
     YELLOW="\[33[0;33m\]"
 	  GREEN="\[33[0;32m\]"
       BLUE="\[33[0;34m\]"
  LIGHT_RED="\[33[1;31m\]"
LIGHT_GREEN="\[33[1;32m\]"
      WHITE="\[33[1;37m\]"
 LIGHT_GRAY="\[33[0;37m\]"
 COLOR_NONE="\[\e[0m\]"

function parse_git_branch {

  git rev-parse --git-dir &amp;&gt; /dev/null
  git_status="$(git status 2&gt; /dev/null)"
  branch_pattern="^# On branch ([^${IFS}]*)"
  remote_pattern="# Your branch is (.*) of"
  diverge_pattern="# Your branch and (.*) have diverged"
  if [[ ! ${git_status}} =~ "working directory clean" ]]; then
    state="${RED}⚡"
  fi
  # add an else if or two here if you want to get more specific
  if [[ ${git_status} =~ ${remote_pattern} ]]; then
    if [[ ${BASH_REMATCH[1]} == "ahead" ]]; then
      remote="${YELLOW}↑"
    else
      remote="${YELLOW}↓"
    fi
  fi
  if [[ ${git_status} =~ ${diverge_pattern} ]]; then
    remote="${YELLOW}↕"
  fi
  if [[ ${git_status} =~ ${branch_pattern} ]]; then
    branch=${BASH_REMATCH[1]}
    echo " (${branch})${remote}${state}"
  fi
}

function prompt_func() {
    previous_return_value=$?;
    # prompt="${TITLEBAR}$BLUE[$RED\w$GREEN$(__git_ps1)$YELLOW$(git_dirty_flag)$BLUE]$COLOR_NONE "
    prompt="${TITLEBAR}${BLUE}[${RED}\w${GREEN}$(parse_git_branch)${BLUE}]${COLOR_NONE} "
    if test $previous_return_value -eq 0
    then
        PS1="${prompt}➔ "
    else
        PS1="${prompt}${RED}➔${COLOR_NONE} "
    fi
}

PROMPT_COMMAND=prompt_func
</pre>
<p>Next let&#8217;s make terminal a little prettier. From the Terminal menu: </p>
<pre>
Terminal &gt;&gt; Preferences &gt;&gt; Startup; New window settings: "Homebrew".
Terminal &gt;&gt; Preferences &gt;&gt; Settings; Font select "Andale Mono 18pt".
</pre>
<p>Now that we have TextMate and Terminal configured we are going to setup our development tools.</p>
<h1>Development Tools</h1>
<h2>XCode Tools</h2>
<p>Go to <a href="http://developer.apple.com/mac/">http://developer.apple.com/mac/</a> and download the latest version of XCode. Once it is downloaded simply run the installer.</p>
<h2>Git</h2>
<p>Next we will download the <a href="http://code.google.com/p/git-osx-installer/downloads/list?can=3&amp;q=&amp;sort=-uploaded&amp;colspec=Filename+Summary+Uploaded+Size+DownloadCount">git-osx-installer</a>, then run it.</p>
<h2>RubyGems</h2>
<p>From terminal we need to update our RubyGems:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
sudo gem install rubygems-update
sudo update_rubygems
</pre>
<h2>SSH</h2>
<p>Still at terminal we will run:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
ssh-keygen -t rsa -C "cgabaldon@gmail.com"
cat ~/.ssh/id_rsa.pub | pbcopy
</pre>
<h2>GitHub</h2>
<p>Then we will navigate over to GitHub.com &gt;&gt; Account Settings to add our RSA key that we copied to the clipboard.</p>
<div style="font-size:.8em;line-height:1.6em;margin:0 0 10px;padding:0;"><a href="http://www.flickr.com/photos/carlosgabaldon/4651146995/" title="GitHubAccountSettings"><img src="http://farm5.static.flickr.com/4018/4651146995_0e182943d8.jpg" alt="GitHubAccountSettings by Carlos Gabaldon" /></a><br /><span style="margin:0;"><a href="http://www.flickr.com/photos/carlosgabaldon/4651146995/">GitHubAccountSettings</a>, a photo by <a href="http://www.flickr.com/photos/carlosgabaldon/">Carlos Gabaldon</a> on Flickr.</span></div>
</p>
<h2>MySQL</h2>
<p>
We are next heading over to download <a href="http://dev.mysql.com/downloads/mysql/">mysql-5.1.47-osx10.6-x86_64.dmg</a>, and then once downloaded run the installer.
</p>
<p>
After MySQL is installed we will install the MySQL preference pane which gets added to the OS X System Preferences. To install we simply double clicking on the <b>MySQL.prefPane</b> contained within the MySQL install package. This gives us a convenient way to start and stop our MySQL server from the System Preferences.
</p>
<p>Back to terminal to add our newly installed MySQL server to our path:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
cd
sudo mate .bash_login # add: export PATH=/usr/local/mysql/bin:$PATH
</pre>
<p>Then last, but not least we need to install our ruby mysql gem:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
sudo gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
</pre>
<h2>Sinatra</h2>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
sudo gem install sinatra
</pre>
<h2>Rails</h2>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
sudo gem install rails
</pre>
<h2>Other Gems</h2>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
sudo gem install sequel
sudo gem install haml
sudo gem install do_sqlite3
sudo gem install cheat
sudo gem install cucumber
sudo gem install dancroak-twitter-search
sudo gem install faker
sudo gem install geokit
sudo gem install giraffesoft-timeline_fu
sudo gem install github
sudo gem install heroku
sudo gem install json
sudo gem install mislav-hanna
sudo gem install nokogiri
sudo gem install passenger
sudo gem install rack
sudo gem install railsmachine
sudo gem install RedCloth
sudo gem install redgreen
sudo gem install reek
sudo gem install rest-client
sudo gem install right_aws
sudo gem install right_http_connection
sudo gem install rr
sudo gem install rspec
sudo gem install technicalpickles-le-git
sudo gem install thoughtbot-factory_girl
sudo gem install thoughtbot-paperclip
sudo gem install thoughtbot-shoulda
sudo gem install webmat-git_remote_branch
sudo gem install webrat
sudo gem install wirble
</pre>
<h1>Capistrano</h1>
<p>To simplify deployment we need to install Capistrano:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
sudo gem install capistrano
sudo gem install capistrano-ext
</pre>
<h1>FireFox</h1>
<p>We of course need to install <a href="www.getfirefox.com/">FireFox</a>, by downloading and installing.</p>
<h2>FireBug</h2>
<p>Then <a href="http://getfirebug.com/">Firebug</a> and <a href="http://developer.yahoo.com/yslow/">YSlow</a> to help us on our <a href="http://video.yahoo.com/watch/4671445/12486762">front end engineering</a> work.</p>
<h1>Quicksilver</h1>
<p>
To help us keep our hands off the mouse we will install <a href="http://www.blacktree.com/">Quicksliver</a> so we can exercise our keyboard foo. To install simply extract the tarball and drag to Applications.
</p>
<p>
Update the mappings to be <em>Apple+Space</em> for Quicksilver and <em>Option+Space</em> for Spotlight.
</p>
<h1>Fluid</h1>
<p>
Finally, we will install <a href="http://fluidapp.com/">Fluid</a> to help us turn our commonly visited sites into apps. Once downloaded drag to Applications.
</p>
<h1>Virtual Box</h1>
<p>
All production applications get deployed to a LAMP server, so we need a place to test out various configurations locally. Say hello to virtualization! We are going to use <a href="http://www.virtualbox.org/wiki/Downloads">VirtualBox</a>; download and install.
</p>
<h1>Evernote</h1>
<p>
Never forget anything; install <a href="http://www.evernote.com/about/download/mac.php">Evernote</a> and sign up.
</p>
<h1>Concentrate</h1>
<p>
	Multitasking does not work when trying program, distractions will kill you. We are going to install <a href="http://getconcentrating.com/">Concentrate<a /> to apply the <a href="http://jasonseifer.com/2010/02/08/using-concentrate-for-pomodoro">Pomodoro</a> technique to keep focused and productive.</p>
<h1>Things</h1>
<p>
We have a lot of <strong><a href="http://culturedcode.com/things/">Things</a></strong> to get done, so we need a great task management tool.</p>
<h1>Growl</h1>
<p>
	Most of the cooler OSX applications support notifications, <a href="http://growl.info/index.php">Growl</a> is the system for doing that.
</p>
<h1>Pencil</h1>
<p>
  <a href="http://pencil.evolus.vn/en-US/Home.aspx">Pencil</a> is one of the coolest UI prototyping tools I have used since a Sharpie.
</p>
<h1>Hack</h1>
<p>
We are now ready to do some serious hacking..</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/carlosgabaldon.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/carlosgabaldon.wordpress.com/385/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/carlosgabaldon.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/carlosgabaldon.wordpress.com/385/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/carlosgabaldon.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/carlosgabaldon.wordpress.com/385/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/carlosgabaldon.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/carlosgabaldon.wordpress.com/385/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/carlosgabaldon.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/carlosgabaldon.wordpress.com/385/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/carlosgabaldon.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/carlosgabaldon.wordpress.com/385/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/carlosgabaldon.wordpress.com/385/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/carlosgabaldon.wordpress.com/385/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=385&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />
<p><a href="http://feedads.g.doubleclick.net/~a/wpMVSyhb0ztH5WWnfl7jF7VtWVg/0/da"><img src="http://feedads.g.doubleclick.net/~a/wpMVSyhb0ztH5WWnfl7jF7VtWVg/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/wpMVSyhb0ztH5WWnfl7jF7VtWVg/1/da"><img src="http://feedads.g.doubleclick.net/~a/wpMVSyhb0ztH5WWnfl7jF7VtWVg/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://carlosgabaldon.com/2010/05/30/rubyist-os-x-dev-setup/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9f22a8f13769b4ad434bbf5694d9b718?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">carlosgabaldon</media:title>
		</media:content>

		<media:content url="http://farm5.static.flickr.com/4027/4651260727_c782612eac.jpg" medium="image">
			<media:title type="html">Git_topic_branch_at_prompt by Carlos Gabaldon</media:title>
		</media:content>

		<media:content url="http://farm5.static.flickr.com/4018/4651146995_0e182943d8.jpg" medium="image">
			<media:title type="html">GitHubAccountSettings by Carlos Gabaldon</media:title>
		</media:content>
	</item>
		<item>
		<title>Django LAMP</title>
		<link>http://carlosgabaldon.com/2010/05/12/django-lamp/</link>
		<comments>http://carlosgabaldon.com/2010/05/12/django-lamp/#comments</comments>
		<pubDate>Wed, 12 May 2010 00:34:50 +0000</pubDate>
		<dc:creator>carlosgabaldon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://carlosgabaldon.com/?p=328</guid>
		<description><![CDATA[Over the past year and a half I have been using WordPress to publish my web site &#38; blog. Prior to WordPress I was using Calabro which is build with Python on TurboGears. WordPress is great, but does not give me all the control I need. I have recently decided to move back into the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=328&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Over the past year and a half I have been using  <a href="http://wordpress.org/">WordPress</a> to publish my web site &amp; blog. Prior to <a href="http://wordpress.org/">WordPress</a> I was using <a href="http://github.com/CarlosGabaldon/calabro">Calabro</a> which is build with <a href="http://www.python.org/">Python</a> on <a href="http://turbogears.org/">TurboGears</a>. WordPress is great, but does not give me all the control I need. I have recently decided to move back into the world of freelance web development and therefore want to do more with my main web site <a href="http://carlosgabaldon.com">carlosgabaldon.com</a>. I wanted to build something that showcases my specialties which are <a href="http://www.python.org/">Python</a>, <a href="http://www.djangoproject.com/">Django</a>, <a href="http://en.wikipedia.org/wiki/JavaScript">JavaScript</a>, <a href="http://en.wikipedia.org/wiki/Semantic_Web">semantic markup</a>, and <a href="http://jquery.com/">jQuery</a> so this new web site will be built with all of these great tools. I also thought it would be a good opportunity  to document the process that I follow when starting a new project.</p>
<p>I like to get integration and deployment tasks figured out early since these tasks contain the most risk. Here is where I usually start:</p>
<ol>
<li> Setup the the code repository.</li>
<li> Create the initial project structure; so we have something to deploy and iterate over. </li>
<li> Deploy the initial project to the production web server; <a href="http://httpd.apache.org/">Apache</a> on a <a href="http://www.linode.com/">Linode</a> VPS.</li>
<li> Script the the subsequent deployment process for <a href="http://radar.oreilly.com/2009/03/continuous-deployment-5-eas.html">continuous deployment</a>.</li>
</ol>
<p>Today I am going to go over step number 3; deploying a LAMP server.</p>
<h1>Server </h1>
<p>The first thing you are going to need is to get a virtual private server (VPS)  or dedicated server account at a hosting company such as <a href="http://www.linode.com/">Linode</a> or <a href="http://www.slicehost.com/">SliceHost</a>. I am using Linode running <a href="http://www.ubuntu.com/products/whatisubuntu/serveredition/features">Ubuntu 10.04 LTS (Lucid Lynx)</a>.</p>
<h1>SSH</h1>
<p>Once you have your server you will need to open a console and <a href="http://en.wikipedia.org/wiki/Secure_Shell">SSH</a> into your new server:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
$ ssh root@<em>{your.ip.address}</em>
</pre>
<h1>Prerequisites</h1>
<p>Now that we are logged in we need to install the prerequisites:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
$ apt-get update
$ apt-get upgrade
$ apt-get install libapache2-mod-python python-mysqldb
$ apt-get install python-setuptools
$ apt-get install mysql-server
$ apt-get install subversion
</pre>
<h1>Django</h1>
<p>We want to be on the bleeding edge so we are going to install the trunk version of Django. First we checkout django-trunk to /usr/local/lib:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
$ cd /usr/local/lib/
$ svn co http://code.djangoproject.com/svn/django/trunk/ django-trunk
</pre>
<p>Then create our symbolic links to point to our new trunk version of Django:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
$ ln -s `pwd`/django-trunk/django /usr/lib/python2.6/dist-packages/django
$ ln -s `pwd`/django-trunk/django/bin/django-admin.py /usr/local/bin
</pre>
<p>Also, while we are in this directory we will create a symbolic link to the Django admin media:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
$ ln -s `pwd`/django-trunk/django/contrib/admin/media /var/www/media
$ cd
</pre>
<h1>Git</h1>
<p>We need to install Git and then clone the project repository. To keep things simple for this tutorial  we are going to put the web site under the Apache root.</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
$ apt-get install git-core
$ cd /var/www
$ git clone git://github.com/{YourGitHubAccout/your_django_project}.git
</pre>
<h1>Apache</h1>
<p>Next we need to configure Apache. I will be using <a href="http://www.modpython.org/">modpython</a> as the python host for Django. Since Django has support for <a href="http://www.wsgi.org/wsgi/What_is_WSGI">WSGI</a> we could use modwsgi, but I am going to stick with modpython for this tutorial since it has a proven track record in large scale production environments. The only draw back to using modpython over modwsgi is that an Apache restart is required after each deployment. Also, to keep this tutorial simple we are going have Django sever up the static meda files. <strong><a href="http://docs.djangoproject.com/en/dev/howto/static-files/">This is not an optimal setup for a high traffic web site</a></strong>, but for the initial setup it works fine. </p>
<p>To configure Apache will open the default vhost and edit it to look like below:</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
$ nano /etc/apache2/sites-enabled/000-default
&lt;VirtualHost *:80&gt;
        ServerName <em>{your.domain}</em>.com
        DocumentRoot /var/www
        &lt;Location "/"&gt;
                SetHandler python-program
                PythonHandler django.core.handlers.modpython
                SetEnv DJANGO_SETTINGS_MODULE {your_django_project}.settings
                PythonOption django.root /{your_top_level_folder_name
                PythonDebug On
                PythonPath "['/var/www/'] + sys.path"
        &lt;/Location&gt;

        &lt;Directory /var/www/&gt;
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        &lt;/Directory&gt;
        ErrorLog /var/log/apache2/error.log
&lt;/VirtualHost&gt;
</pre>
<p>For the changes to take effect we need to restart Apache</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
$ /etc/init.d/apache2 restart
</pre>
<h1>MySQL</h1>
<p>We need configure the database. Connect to the mysql server using your mysql user name and password.</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
$ mysql -u root -pXXXX
$ create database {your_db_name};
$ nano /var/www/{your_django_project}/settings.py # update database connection info
</pre>
<p>Finally, we have Django create the tables.</p>
<pre style="color:#63ff00;background:#000;overflow:auto;font:normal 12px 'bitstream vera sans mono', monaco 'lucida console', 'courier new', courier, serif;margin:.9em 0;padding:8px;">
$ cd /var/www/{your_django_project}
$ ./manage.py syncdb
</pre>
<p>If everything was done right we can open a  browser and point it to http://<em>{your.ip.address}</em>/home/ and we should be running. The final step would be to open your DSN manager (i.e. godaddy) where your domain is registered and point the @ record to <em>{your.ip.address}</em></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/carlosgabaldon.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/carlosgabaldon.wordpress.com/328/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/carlosgabaldon.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/carlosgabaldon.wordpress.com/328/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/carlosgabaldon.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/carlosgabaldon.wordpress.com/328/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/carlosgabaldon.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/carlosgabaldon.wordpress.com/328/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/carlosgabaldon.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/carlosgabaldon.wordpress.com/328/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/carlosgabaldon.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/carlosgabaldon.wordpress.com/328/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/carlosgabaldon.wordpress.com/328/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/carlosgabaldon.wordpress.com/328/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=328&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />
<p><a href="http://feedads.g.doubleclick.net/~a/56LlqtgfinXEYJm5pBzA-gx9gSs/0/da"><img src="http://feedads.g.doubleclick.net/~a/56LlqtgfinXEYJm5pBzA-gx9gSs/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/56LlqtgfinXEYJm5pBzA-gx9gSs/1/da"><img src="http://feedads.g.doubleclick.net/~a/56LlqtgfinXEYJm5pBzA-gx9gSs/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://carlosgabaldon.com/2010/05/12/django-lamp/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9f22a8f13769b4ad434bbf5694d9b718?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">carlosgabaldon</media:title>
		</media:content>
	</item>
		<item>
		<title>Best practices for running a software development team</title>
		<link>http://carlosgabaldon.com/2010/02/14/best-practices-for-running-a-software-development-team/</link>
		<comments>http://carlosgabaldon.com/2010/02/14/best-practices-for-running-a-software-development-team/#comments</comments>
		<pubDate>Mon, 15 Feb 2010 02:47:19 +0000</pubDate>
		<dc:creator>carlosgabaldon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://carlosgabaldon.com/?p=277</guid>
		<description><![CDATA[Build solid relationships all of  your stakeholders. Customers Product Management Executives Business Partners Business Units Customer Support Operational Support Create a single intake process for all product requests. Partner with stakeholders when prioritizing requests. Make sure they are part of any product steering committee meetings. Always prioritize severity 1 &#38; 2  bugs before accepting any [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=277&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<ol>
<li>Build solid relationships all of  your stakeholders.
<ul>
<li>Customers</li>
<li>Product Management</li>
<li>Executives</li>
<li>Business Partners</li>
<li>Business Units</li>
<li>Customer Support</li>
<li>Operational Support</li>
</ul>
</li>
<li>Create a single intake process for all product requests.</li>
<li>Partner with stakeholders when prioritizing requests. Make sure they are part of any product steering committee meetings.</li>
<li>Always prioritize severity 1 &amp; 2  bugs before accepting any product feature requests from your stakeholders.</li>
<li>Scalability, availability, and peformance enhancements should be prioritized very high in relation to product feature requests. Categorizing them as bugs also is way to make sure that fall high on the priority list.</li>
<li>Do weekly reviews of all production &amp; QA bugs.</li>
<li>Do monthly reviews of production &amp; QA logs to do trending for security issues, performance issues, and capacity planning. Aggregate this data into <a href="http://xprogramming.com/xpmag/BigVisibleCharts">big visible charts</a> where everyone on the team can see it daily.</li>
<li>The development team should have real-time visibility to system level stats from the production environment. Use tools like <a href="http://ganglia.sourceforge.net/">Ganglia</a> and <a href="http://www.cacti.net/what_is_cacti.php">Cacti</a> to give the team a real-time view into production.</li>
<li>Every person on the development team should spend time sitting with the customer support team listening in on support calls to get a deeper view into customer issues. Every 2-3 months for a few hours is a good schedule.</li>
<li>Define a clear escalation plan for production outages/issues. Who is the first line of defense? Who do they escalate to? How do they classify the issue? When should development get involved? How should data be captured for later root cause analysis? Pull data from the HR system for the escalation up the management chain,<strong> do not waste time</strong> maintaining separate team lists of contact information. Update you HR system to contain all contact info then pull the data!</li>
<li>Hire a technical writer to setup a wiki with a well designed information architecture for all product documentation. Run books, architectural artifacts, knowledge base, etc..</li>
<li>Ensure that there is clear requirements traceability back to the originating stakeholder request.</li>
<li>There should be design traceability from the high level design to the detailed design to the completed code.</li>
<li>Every person on the development team should be trained on how to do <a href="http://en.wikipedia.org/wiki/Root_cause_analysis">root cause analysis</a>.</li>
<li>After any and every production incident there should be a root cause analysis performed with clear action items and associated owners to prevent the issue from re-occurring. This is not a witch hunt to find someone who to blame, but rather a way to identify what process or lack of process created the environment for the issue to have occurred.</li>
<li>Focus on eliminating waste in all <a href="http://en.wikipedia.org/wiki/Systems_Development_Life_Cycle">SDLC</a> processes. A good place to start is with any process outside of analysis and writing the code, ask the question is the process adding value?</li>
<li>Balance time to market vs. perfect architecture. What is a reasonable architecture to solve the problem today. If cost, resources, or time constrains the architectural design then have a story of how to undo the trade offs made in the design to meet the time to market demands. <strong>What is the plan for getting rid of the technical debt</strong><strong>?</strong></li>
<li>Make data driven decisions, but do not require that every decision be made with complete data. Identify the experts in the organization and trust them to make the right decisions based on past experiences. For example, picking the right initial architecture should be based expert judgment, past experience, and some amount of prototypes. But scaling that architecture over time should be completely data driven from the metrics collected on the production systems. Always be measuring, analyzing, and optimizing based on the data.</li>
<li>Everyone on the development team should have a professional development plan. This plan is a contract between the employee and management to ensure that the organization will provide all required resources and opportunities for the employee to realize the career goals.</li>
<li>Foster a culture that supports a healthy balance between work and family life for everyone within the organization. Let people go home to their families at reasonable times. Ensure that people are taking vacations on a regular basis. <strong>Value results driven work over duration driven work.</strong></li>
<li>Create a respectful work environment where:
<ul>
<li>employees are valued</li>
<li>communication is polite and courteous</li>
<li>people are treated as they wish to be treated</li>
<li>conflict is addressed in a positive and respectful manner</li>
<li>disrespectful behavior and harassment are addressed</li>
</ul>
</li>
<li>Every 2-3 months get the entire organization together to discuss the product roadmap, discuss successfully delivered work, answer questions, motivate the teams, and above all to publicly praise and reward the star team members within the team.</li>
</ol>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/carlosgabaldon.wordpress.com/277/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/carlosgabaldon.wordpress.com/277/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/carlosgabaldon.wordpress.com/277/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/carlosgabaldon.wordpress.com/277/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/carlosgabaldon.wordpress.com/277/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/carlosgabaldon.wordpress.com/277/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/carlosgabaldon.wordpress.com/277/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/carlosgabaldon.wordpress.com/277/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/carlosgabaldon.wordpress.com/277/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/carlosgabaldon.wordpress.com/277/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/carlosgabaldon.wordpress.com/277/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/carlosgabaldon.wordpress.com/277/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/carlosgabaldon.wordpress.com/277/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/carlosgabaldon.wordpress.com/277/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=277&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />
<p><a href="http://feedads.g.doubleclick.net/~a/57zMiQs0oUjCB3JE-hXTvgQ00P4/0/da"><img src="http://feedads.g.doubleclick.net/~a/57zMiQs0oUjCB3JE-hXTvgQ00P4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/57zMiQs0oUjCB3JE-hXTvgQ00P4/1/da"><img src="http://feedads.g.doubleclick.net/~a/57zMiQs0oUjCB3JE-hXTvgQ00P4/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://carlosgabaldon.com/2010/02/14/best-practices-for-running-a-software-development-team/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9f22a8f13769b4ad434bbf5694d9b718?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">carlosgabaldon</media:title>
		</media:content>
	</item>
		<item>
		<title>Agile development and low tech tools</title>
		<link>http://carlosgabaldon.com/2010/01/31/agile-development-and-low-tech-tools/</link>
		<comments>http://carlosgabaldon.com/2010/01/31/agile-development-and-low-tech-tools/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 04:29:55 +0000</pubDate>
		<dc:creator>carlosgabaldon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://carlosgabaldon.com/?p=254</guid>
		<description><![CDATA[I just recently started working on large software development project that the management team decided to use SCRUM over some of the existing waterfall process used throughout the rest of the organization. When I first heard the news I thought great now the team can focus on building working software rather than following processes that [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=254&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I just recently started working on large software development project that the management team decided to use <a href="http://en.wikipedia.org/wiki/Scrum_%28development%29">SCRUM</a> over some of the existing waterfall process used throughout the rest of the organization. When I first heard the news I thought great now the team can focus on building working software rather than following processes that only make the leadership team feeling like they have control over the project. The problem is that the team is spending large amounts of their time keeping information up to date in <a href="http://www.versionone.com/">VersionOne</a> the tool that was chosen by the management team to manage this project. VersionOne is a very popular tool that many successful companies have standardized on for SCRUM or XP, but from my experience effective agile development teams always choose low tech tools for managing the development.</p>
<p>What do I mean by low tech tools? Low tech tools are tools that do not require the team to sit in front of the computer to use; simple things like<a href="http://xprogramming.com/xpmag/BigVisibleCharts"> big visible charts</a> or <a href="http://alistair.cockburn.us/Information+radiator">information radiator</a> and index cards. Why is this so important? Because the team already spends a large amount of time sitting in front of the computer developing and testing the software, why make them spend all their remaining time updating and managing user stories, <a href="http://en.wikipedia.org/wiki/Burn_down_chart">burn down charts</a>, and tasks chained to the that same machine.</p>
<p>Low tech tools have a way of connecting people with the ideas and concepts in a much more clear, tangible, and meaningful way. For example, a team can sit down and write all the user stories on index cards then with some large wall space tape the index cards to the wall to create a product backlog. From that the team can do sprint planning by simply moving cards from the backlog section of the wall to the next planned sprint; all with no dual core&#8217;s required!</p>
<p>In a large organization or working with some remote team members the low tech way can be difficult and the organization may require that the planning be documented in a more formal project management or tacking tool. To address this have the PM on the team be responsible for keeping the low tech tools in sync with the high tech tools. They are the ones that need to communicate the status of the project to many different types of stakeholders so it makes the most sense for them to manage the communication; and leave the team to focusing on the code&#8230;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/carlosgabaldon.wordpress.com/254/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/carlosgabaldon.wordpress.com/254/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/carlosgabaldon.wordpress.com/254/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/carlosgabaldon.wordpress.com/254/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/carlosgabaldon.wordpress.com/254/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/carlosgabaldon.wordpress.com/254/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/carlosgabaldon.wordpress.com/254/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/carlosgabaldon.wordpress.com/254/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/carlosgabaldon.wordpress.com/254/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/carlosgabaldon.wordpress.com/254/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/carlosgabaldon.wordpress.com/254/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/carlosgabaldon.wordpress.com/254/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/carlosgabaldon.wordpress.com/254/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/carlosgabaldon.wordpress.com/254/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=254&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />
<p><a href="http://feedads.g.doubleclick.net/~a/w1ZLwZMrDjO-seH6OmH8KiS2rZ4/0/da"><img src="http://feedads.g.doubleclick.net/~a/w1ZLwZMrDjO-seH6OmH8KiS2rZ4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/w1ZLwZMrDjO-seH6OmH8KiS2rZ4/1/da"><img src="http://feedads.g.doubleclick.net/~a/w1ZLwZMrDjO-seH6OmH8KiS2rZ4/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://carlosgabaldon.com/2010/01/31/agile-development-and-low-tech-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9f22a8f13769b4ad434bbf5694d9b718?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">carlosgabaldon</media:title>
		</media:content>
	</item>
		<item>
		<title>How to build a product</title>
		<link>http://carlosgabaldon.com/2009/12/10/how-to-build-a-product/</link>
		<comments>http://carlosgabaldon.com/2009/12/10/how-to-build-a-product/#comments</comments>
		<pubDate>Thu, 10 Dec 2009 06:20:56 +0000</pubDate>
		<dc:creator>carlosgabaldon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://carlosgabaldon.com/?p=229</guid>
		<description><![CDATA[Developers, product management, and customers brainstorm ideas. What problem are we trying to solve? What market opportunity are we trying to meet? Developers &#38; product management write the core user stories. Developers build an end-to-end web site skeleton with mocks to any external systems. Developers spec out the core web site API. Developers and product [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=242&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<ol>
<li>Developers, product management, and customers brainstorm ideas.<br />
<blockquote><p>What problem are we trying to solve?<br />
What market opportunity are we trying to meet?</p></blockquote>
</li>
<li>Developers &amp; product management write the core user stories.</li>
<li>Developers build an end-to-end web site skeleton with mocks to any external systems.</li>
<li>Developers spec out the core web site API.</li>
<li>Developers and product management iterate over the web site skeleton adding the core user stories.</li>
<li>Partnering with the customer; developers and product management push the product to market as quickly as possible.</li>
<li>From customer feedback developers and product management enhance, rewrite, or create new user stories and apply those stories back into the web site.</li>
<li>Repeat 1-7</li>
</ol>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/carlosgabaldon.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/carlosgabaldon.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/carlosgabaldon.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/carlosgabaldon.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/carlosgabaldon.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/carlosgabaldon.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/carlosgabaldon.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/carlosgabaldon.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/carlosgabaldon.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/carlosgabaldon.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/carlosgabaldon.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/carlosgabaldon.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/carlosgabaldon.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/carlosgabaldon.wordpress.com/242/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=242&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />
<p><a href="http://feedads.g.doubleclick.net/~a/2ZJfjbh34CxiZ3_am7Wt3iS0VCg/0/da"><img src="http://feedads.g.doubleclick.net/~a/2ZJfjbh34CxiZ3_am7Wt3iS0VCg/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/2ZJfjbh34CxiZ3_am7Wt3iS0VCg/1/da"><img src="http://feedads.g.doubleclick.net/~a/2ZJfjbh34CxiZ3_am7Wt3iS0VCg/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://carlosgabaldon.com/2009/12/10/how-to-build-a-product/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9f22a8f13769b4ad434bbf5694d9b718?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">carlosgabaldon</media:title>
		</media:content>
	</item>
		<item>
		<title>Meetings</title>
		<link>http://carlosgabaldon.com/2009/12/09/meetings/</link>
		<comments>http://carlosgabaldon.com/2009/12/09/meetings/#comments</comments>
		<pubDate>Wed, 09 Dec 2009 05:05:01 +0000</pubDate>
		<dc:creator>carlosgabaldon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://carlosgabaldon.com/?p=218</guid>
		<description><![CDATA[It seems that in all my years of software development every company I work at seems to feel the need to pull people off of real work to have a meeting. Where they want to discuss some useless topic that just makes managers feel like the team is being productive by communicating status or issues. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=218&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>It seems that in all my years of software development every company I work at seems to feel the need to pull people off of real work to have a meeting. Where they want to discuss some useless topic that just makes managers feel like the team is being productive by communicating status or issues. So what are good guidelines for meetings? Should we be having meetings? Here are my 3 golden rules:</p>
<ol>
<li>Meetings should never be scheduled; you should strive to create an environment where meetings just happen. How do you do this? Create open development environments where there are no offices or cubicles just groups of desks with lots of couches and whiteboards. In this environments meetings become organic and happen only when people need to talk.</li>
<li>You should never have meetings to communicate status; that is why you use wiki&#8217;s and bug tracking tools. People who want status should just pull the status from those tools. It does not matter if you are standing up while you are giving status in a meeting or you call it agile. Status or issues should be an asynchronous activity where the people who need to know should be pulling those from the team, not slowing them down with a synchronous meeting.</li>
<li>You should only have meetings for productive things like brainstorming new ideas, doing use cases, group design, discussing code, or getting the team together for drinking beer.</li>
</ol>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/carlosgabaldon.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/carlosgabaldon.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/carlosgabaldon.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/carlosgabaldon.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/carlosgabaldon.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/carlosgabaldon.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/carlosgabaldon.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/carlosgabaldon.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/carlosgabaldon.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/carlosgabaldon.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/carlosgabaldon.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/carlosgabaldon.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/carlosgabaldon.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/carlosgabaldon.wordpress.com/218/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=218&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />
<p><a href="http://feedads.g.doubleclick.net/~a/4WC1WedTjjyzYQNCcamFg8-Pg-o/0/da"><img src="http://feedads.g.doubleclick.net/~a/4WC1WedTjjyzYQNCcamFg8-Pg-o/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/4WC1WedTjjyzYQNCcamFg8-Pg-o/1/da"><img src="http://feedads.g.doubleclick.net/~a/4WC1WedTjjyzYQNCcamFg8-Pg-o/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://carlosgabaldon.com/2009/12/09/meetings/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9f22a8f13769b4ad434bbf5694d9b718?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">carlosgabaldon</media:title>
		</media:content>
	</item>
		<item>
		<title>Erlang</title>
		<link>http://carlosgabaldon.com/2009/09/11/erlang/</link>
		<comments>http://carlosgabaldon.com/2009/09/11/erlang/#comments</comments>
		<pubDate>Fri, 11 Sep 2009 02:27:21 +0000</pubDate>
		<dc:creator>carlosgabaldon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[erlang]]></category>

		<guid isPermaLink="false">http://carlosgabaldon.com/?p=185</guid>
		<description><![CDATA[I added another articles section for my other love language Erlang. The first article is just a quick intro into this cool and powerful language, I will be sharing more soon.. http://carlosgabaldon.com/erlang/hello-erlang/<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=185&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I added another articles section for my other love language <a href="http://carlosgabaldon.com/erlang/">Erlang</a>.</p>
<p>The first article is just a quick intro into this cool and powerful language, I will be sharing more soon..</p>
<p><a href="http://carlosgabaldon.com/erlang/hello-erlang/">http://carlosgabaldon.com/erlang/hello-erlang/</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/carlosgabaldon.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/carlosgabaldon.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/carlosgabaldon.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/carlosgabaldon.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/carlosgabaldon.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/carlosgabaldon.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/carlosgabaldon.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/carlosgabaldon.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/carlosgabaldon.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/carlosgabaldon.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/carlosgabaldon.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/carlosgabaldon.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/carlosgabaldon.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/carlosgabaldon.wordpress.com/185/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=carlosgabaldon.com&amp;blog=4691315&amp;post=185&amp;subd=carlosgabaldon&amp;ref=&amp;feed=1" width="1" height="1" />
<p><a href="http://feedads.g.doubleclick.net/~a/k389l25VSqhSVZVzx0jrO-CkFzU/0/da"><img src="http://feedads.g.doubleclick.net/~a/k389l25VSqhSVZVzx0jrO-CkFzU/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/k389l25VSqhSVZVzx0jrO-CkFzU/1/da"><img src="http://feedads.g.doubleclick.net/~a/k389l25VSqhSVZVzx0jrO-CkFzU/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://carlosgabaldon.com/2009/09/11/erlang/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9f22a8f13769b4ad434bbf5694d9b718?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">carlosgabaldon</media:title>
		</media:content>
	</item>
	</channel>
</rss>

