<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>gagerenzi.com</title>
	<atom:link href="http://www.gagerenzi.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.gagerenzi.com</link>
	<description></description>
	<lastBuildDate>Mon, 04 Apr 2011 14:19:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>SleepMe! Android Application</title>
		<link>http://www.gagerenzi.com/26/sleepme-android-application</link>
		<comments>http://www.gagerenzi.com/26/sleepme-android-application#comments</comments>
		<pubDate>Sun, 03 Apr 2011 18:20:29 +0000</pubDate>
		<dc:creator>gage</dc:creator>
				<category><![CDATA[Bytes]]></category>

		<guid isPermaLink="false">http://www.gagerenzi.com/?p=26</guid>
		<description><![CDATA[You&#8217;ve probably seen those nature sound generating machines somewhere. My daughter wanted to make one to run on the rooted Nook Color we have. She did the artwork with the Wacom tablet and took dictation from me for most of the coding. It&#8217;s fun explaining encapsulation to a twelve year old. The code itself is [...]]]></description>
			<content:encoded><![CDATA[<p>You&#8217;ve probably seen those nature <a href="http://www.amazon.com/HoMedics-SS-2000-Relaxation-Machine-Nature/dp/B000F3QG0U">sound generating machines</a> somewhere. My daughter wanted to make one to run on the rooted Nook Color we have. She did the artwork with the Wacom tablet and took dictation from me for most of the coding. It&#8217;s fun explaining encapsulation to a twelve year old.</p>
<p>The code itself is nothing too complex. To keep track of sounds, image switching, etc, we created a ButtonSoundManager class, which contains an array of button sound value objects (hold the ids of the associated volume control, MediaPlayer, etc). ButtonSoundManager handles the UI events from clicks and slider repositioning. For example, with the slider repositioning, it just finds the ButtonSound object associated with the clicked SeekBar&#8217;s id, then changes the volume:<br />
<code><br />
public void handleSeekBarClick(int id, Float vol) {<br />
&nbsp;&nbsp;&nbsp;for (ButtonSound b : this.sounds) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (b.seekBarId == id &amp;&amp; b.isPlaying == true)  {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;float v = this.scaleVolume(vol);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b.mediaPlayer.setVolume(v, v);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;}<br />
}<br />
</code></p>
<p>So, after a bit of coding and twiddling, here we are. Nature sounds AND volume controls:</p>
<div id="attachment_27" class="wp-caption aligncenter" style="width: 521px"><a href="http://www.gagerenzi.com/wp-content/uploads/2011/04/screenshot.jpg"><img class="size-full wp-image-27" title="screenshot" src="http://www.gagerenzi.com/wp-content/uploads/2011/04/screenshot.jpg" alt="" width="511" height="845" /></a><p class="wp-caption-text">SleepMe. In all of its glory. </p></div>
<p>Installed via ADB wireless with no problems, other than that our snazzy logo doesn&#8217;t yet show on the app.</p>
<p>Source code (eclipse project) is <a href="http://www.gagerenzi.com/files/SleepMe.zip">here</a> if you&#8217;d like to download.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gagerenzi.com/26/sleepme-android-application/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why Agile? Project valuation</title>
		<link>http://www.gagerenzi.com/13/why-agile-part-1-of-project-valuation</link>
		<comments>http://www.gagerenzi.com/13/why-agile-part-1-of-project-valuation#comments</comments>
		<pubDate>Thu, 17 Mar 2011 15:58:12 +0000</pubDate>
		<dc:creator>gage</dc:creator>
				<category><![CDATA[Thoughts]]></category>

		<guid isPermaLink="false">http://www.gagerenzi.com/?p=13</guid>
		<description><![CDATA[(Part 1 of an unknown number of articles exploring why I think agile methodologies offer benefits to all project stakeholders and sponsors) I find myself pitching agile more often than I expect. Agile development isn&#8217;t a panacea, but it&#8217;s a decent approach to the world of challenges that face software development teams and their customers. [...]]]></description>
			<content:encoded><![CDATA[<p>(Part 1 of an unknown number of articles exploring why I think agile methodologies offer benefits to all project stakeholders and sponsors)</p>
<p>I find myself pitching agile more often than I expect. Agile development isn&#8217;t a panacea, but it&#8217;s a decent approach to the world of challenges that face software development teams and their customers. In this brief post, I&#8217;ll cover one of the things I love about agile: the financial benefits of incremental development.</p>
<p>One of the things that development teams often forget is <a href="http://en.wikipedia.org/wiki/Time_value_of_money">the time value of money</a>. Basically, all that means is that money in your pocket today is worth more than money in your pocket tomorrow. Let&#8217;s walk through an example of how iterative development increases project valuation.</p>
<p class="centeredImage"><div id="attachment_16" class="wp-caption aligncenter" style="width: 288px"><a href="http://www.gagerenzi.com/wp-content/uploads/2011/03/aliceandbob.png"><img title="aliceandbob" src="http://www.gagerenzi.com/wp-content/uploads/2011/03/aliceandbob.png" alt="" width="278" height="209" /></a><p class="wp-caption-text">Alice and Bob</p></div></p>
<p>Meet Alice and Bob. Alice is developer for Acme, and she makes a lot of money. For math&#8217;s sake, we&#8217;ll say that she costs the company a total of $100k / year. Let&#8217;s also meet Bob, the customer service rep. While Bob doesn&#8217;t make nearly as much money as Alice, he sure has a lot of peers in the call center. Let&#8217;s say that Bob costs the company $50k per year with benefits, etc.</p>
<p>It&#8217;s been a great year for Acme. They&#8217;ve seeing growth in their business, and they&#8217;re expecting to additional four customer service reps over the next year. Of course, they&#8217;d rather not have to, because that eats into total profit. Alice&#8217;s team, though, has been working with Bob&#8217;s boss, and developed a list of ideas that can improve productivity to the point that they don&#8217;t need to hire additional people to handle the increase in customer volume. They get together, put those ideas into a project cost-benefit analysis, and start crunching numbers. Here&#8217;s where they land initially:</p>
<div id="attachment_17" class="wp-caption aligncenter" style="width: 285px"><a href="http://www.gagerenzi.com/wp-content/uploads/2011/03/charter1.png"><img src="http://www.gagerenzi.com/wp-content/uploads/2011/03/charter1-275x300.png" alt="" title="charter1" width="275" height="300" class="size-medium wp-image-17" /></a><p class="wp-caption-text">Project Charter v1</p></div>
<p>So, what does this look like from a cash flow perspective? Let&#8217;s draw it out (click the image for the a slightly larger version): </p>
<a href="http://www.gagerenzi.com/wp-content/uploads/2011/03/cashflow1.png"><img src="http://www.gagerenzi.com/wp-content/uploads/2011/03/cashflow1.png" alt="" title="cashflow1" width="637" height="240" class="size-full wp-image-19" /></a>
<p>As you can see, Acme&#8217;s paying Alice for the work she&#8217;s doing, but not seeing any benefits from it. If we were to calculate the net present value of the project over a three year basis (at a 12% cost of capital for the financially minded), we&#8217;d see that the project is worth about $201k. This is of course, good, but let&#8217;s see what else we can do with it. </p>
<p>Let&#8217;s assume that Alice works with her partners to break the project down into smaller chunks. The charter would then look something like this:<br />
<div id="attachment_20" class="wp-caption aligncenter" style="width: 299px"><a href="http://www.gagerenzi.com/wp-content/uploads/2011/03/charter2.png"><img src="http://www.gagerenzi.com/wp-content/uploads/2011/03/charter2.png" alt="" title="charter2" width="289" height="331" class="size-full wp-image-20" /></a><p class="wp-caption-text">Project Charter v2</p></div></p>
<p>What&#8217;s different? The costs and benefits are the same, but we see that the waterfall milestones have been replaced with things that have meaning (and benefits) to the business. What does this do to our cash flow projections? (again, click the image for the a slightly larger version)</p>
<p><a href="http://www.gagerenzi.com/wp-content/uploads/2011/03/cashflow2.png"><img src="http://www.gagerenzi.com/wp-content/uploads/2011/03/cashflow2.png" alt="New cash flow" title="cashflow2" width="637" height="313" class="aligncenter size-full wp-image-21" /></a></p>
<p>So, the business is seeing financial benefits earlier. What does this do to project valuation? The three year NPV of the project is now <strong>$251k</strong>, about a 25% bump from the first model, <strong>just by altering the project approach</strong>. Of course, these changes will also affect the way QA does their work, the CSR training team, etc, etc. What does it do to hiring needs? Depending on the timing of the project deliveries, Alice (and her team) may be able to stay ahead of the business&#8217;s capacity needs. Perhaps Acme now has the opportunity to increase hours of it&#8217;s part time CSRs without having to place new permanent hires.  (If you&#8217;d like to play around with the cash flow model, you can download an Excel version <a href='http://www.gagerenzi.com/wp-content/uploads/2011/03/AgileNPVs.xls'>here</a>)</p>
<p>Clearly, I&#8217;ve stacked the cards here with an easily divided project that&#8217;s a clear winner. And dividing projects up like this in real life is <strong>hard</strong> &#8212; really, really hard. That said, in most software development it is possible, provided that the move to production does not require significant costs (e.g., replacing chips in devices you&#8217;ve shipped).  What do you think?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gagerenzi.com/13/why-agile-part-1-of-project-valuation/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cheapo Power Supply</title>
		<link>http://www.gagerenzi.com/6/cheapo-power-supply</link>
		<comments>http://www.gagerenzi.com/6/cheapo-power-supply#comments</comments>
		<pubDate>Sun, 30 Jan 2011 15:19:10 +0000</pubDate>
		<dc:creator>gage</dc:creator>
				<category><![CDATA[Electronics]]></category>

		<guid isPermaLink="false">http://www.gagerenzi.com/?p=6</guid>
		<description><![CDATA[I needed a power supply for my arduino and a few other things I&#8217;ve been tinkering with, but didn&#8217;t want to fork over the cash for a real power supply (plus, I wanted to have AC handy&#8230;). So, I built this one with a 99 cent power adapter from the goodwill shop (it kicks out [...]]]></description>
			<content:encoded><![CDATA[<p>I needed a power supply for my <a class="external" href="http://www.arduino.cc/">arduino</a> and a few other things I&#8217;ve been tinkering with, but didn&#8217;t want to fork over the cash for a real <a class="external" href="http://www.amazon.com/Mastech-HY3005D-Variable-Linear-Supply/dp/B000E14F56/">power supply</a> (plus, I wanted to have AC handy&#8230;). </p>
<p>So, I built this one with a 99 cent power adapter from the goodwill shop (it kicks out 12 VDC), a project box from Radio Shack, and the handy <a href="http://www.national.com/ds/LM/LM117.pdf" class="external">LM317</a>.<br />
<div id="attachment_7" class="wp-caption alignnone" style="width: 310px"><a href="http://www.gagerenzi.com/wp-content/uploads/2011/01/PowerSupply.jpg"><img src="http://www.gagerenzi.com/wp-content/uploads/2011/01/PowerSupply-300x200.jpg" alt="Cheapo Power Supply" title="Power Supply" width="300" height="200" class="size-medium wp-image-7" /></a><p class="wp-caption-text">My Cheapo Power Supply</p></div></p>
<p>The supply goes from mains through the neon light and fuse to the 120V posts and the adapter. The adapter goes from 120VAC to 12VDC, which I then run off to the 12V posts and to the LM317 circuit. </p>
<p>Here&#8217;s a photo of the LM317 on the board. I&#8217;m too embarrassed to show the soldering on the other side&#8230;.<div id="attachment_8" class="wp-caption alignnone" style="width: 160px"><a href="http://www.gagerenzi.com/wp-content/uploads/2011/01/lm317_onpcb.jpg"><img src="http://www.gagerenzi.com/wp-content/uploads/2011/01/lm317_onpcb-150x150.jpg" alt="" title="LM317 on board" width="150" height="150" class="size-thumbnail wp-image-8" /></a><p class="wp-caption-text">LM317 on the board</p></div></p>
<p>It runs quite cool and produces 5.096V. As a newbie to electronics, I had a bit of trouble translating from schematic to breadboard to circuit board, so I made this little drawing to keep myself straight. The Yellow lines on the drawing are connected on the final product. <div id="attachment_9" class="wp-caption aligncenter" style="width: 160px"><a href="http://www.gagerenzi.com/wp-content/uploads/2011/01/lm317_pseudoschematic.jpg"><img src="http://www.gagerenzi.com/wp-content/uploads/2011/01/lm317_pseudoschematic-150x150.jpg" alt="" title="LM317 Pseudoschematic" width="150" height="150" class="size-thumbnail wp-image-9" /></a><p class="wp-caption-text">LM317 Pseudoschematic</p></div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.gagerenzi.com/6/cheapo-power-supply/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

