<?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>SalientBlue</title>
	<atom:link href="http://www.salientblue.com/blog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.salientblue.com/blog</link>
	<description>It's Salient. And it's Blue!</description>
	<lastBuildDate>Mon, 30 Aug 2010 00:41:15 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>ADS</title>
		<link>http://www.salientblue.com/blog/?p=208</link>
		<comments>http://www.salientblue.com/blog/?p=208#comments</comments>
		<pubDate>Mon, 30 Aug 2010 00:41:15 +0000</pubDate>
		<dc:creator>Pablosan</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[BDD]]></category>
		<category><![CDATA[Iterative Development]]></category>
		<category><![CDATA[Pair Programming]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[Teams]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ADS]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[Extreme Programming]]></category>
		<category><![CDATA[Skills]]></category>
		<category><![CDATA[XP]]></category>

		<guid isPermaLink="false">http://www.salientblue.com/blog/?p=208</guid>
		<description><![CDATA[Recently I was honored to have the opportunity to work toward being approved to teach Ron Jeffries&#8217; and Chet Hendrickson&#8217;s Agile Developer Skills course. I had my first opportunity to co-teach the class last week. It was a great class and I very much enjoyed working along side Chet and Cheezy, two software craftsmen I respect [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I was honored to have the opportunity to work toward being approved to teach <a title="XProgramming.com" href="http://xprogramming.com/index.php">Ron Jeffries&#8217;</a> and <a title="HendricksonXP.com" href="http://www.hendricksonxp.com/">Chet Hendrickson&#8217;s</a> <a title="Agile Skills Network" href="http://agileskillsnetwork.com/">Agile Developer Skills</a> course. I had my first opportunity to co-teach the class last week. It was a great class and I very much enjoyed working along side <a title="Chet Hendrickson" href="http://www.hendricksonxp.com">Chet</a> and <a title="Cheezy Rants" href="http://cheezyrants.blogspot.com/">Cheezy</a>, two software craftsmen I respect highly.</p>
<p>If you follow the links above, you&#8217;ll notice a theme and, though it&#8217;s not explicit in the class&#8217; title, <a title="What is XP?" href="http://xprogramming.com/xpmag/whatisxp">Extreme Programming</a> is a significant influencing factor in the course content. Like most software developers, XP has had a major positive impact on my pursuit of the craft, and it&#8217;s great to see the practices hold up so well over time.</p>
<p>The ADS course utilizes some lecture, but it is primarily a hands-on workshop giving participants the opportunity to experience developing high-quality, working software using Agile principles and practices. This is the second time I have experienced the class (the first time was as a participant back in May) and it has remained an intense, thoroughly enjoyable way to either learn the practices for the first time or to delve deeper into Agile. I find it hard to believe that anyone could leave the course without learning a great deal. It is both challenging and insightful.</p>
<p>I think my favorite part of the class are the questions and how they help shape and guide the content. That feedback is crucial to the success of the course (maybe any course) and, as an instructor, I find the questions leave me thinking about these principles long after the class is over.</p>
<p>Next time, I&#8217;ll share a couple of the questions and some of those thoughts. For now, though, I encourage you to take a look at <a title="Agile Skills Network" href="http://agileskillsnetwork.com/">Agile Skills Network</a> and consider taking the course. Regardless of where you are in your software craftsman journey, the ADS course will encourage you to push further down the path!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.salientblue.com/blog/?feed=rss2&amp;p=208</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pickled!</title>
		<link>http://www.salientblue.com/blog/?p=203</link>
		<comments>http://www.salientblue.com/blog/?p=203#comments</comments>
		<pubDate>Fri, 30 Jul 2010 23:44:36 +0000</pubDate>
		<dc:creator>Pablosan</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Journal]]></category>
		<category><![CDATA[Teams]]></category>
		<category><![CDATA[Change Agent]]></category>
		<category><![CDATA[coaching]]></category>
		<category><![CDATA[consulting]]></category>
		<category><![CDATA[Gerald M. Weinberg]]></category>
		<category><![CDATA[Secrets of Consulting]]></category>

		<guid isPermaLink="false">http://www.salientblue.com/blog/?p=203</guid>
		<description><![CDATA[I don&#8217;t think I&#8217;ll end up writing a third &#8220;Agile Blindspots&#8221; post&#8230; there was something that I was feeling very passionate about back in February but, for better or worse, this time I simply waited for the feeling to pass. It has been a busy year. I knew that new ventures are all-consuming, but knowing [...]]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t think I&#8217;ll end up writing a third &#8220;Agile Blindspots&#8221; post&#8230; there was something that I was feeling very passionate about back in February but, for better or worse, this time I simply waited for the feeling to pass.</p>
<p>It has been a busy year. I knew that new ventures are all-consuming, but knowing it and living it are two very different things. I&#8217;m closing in on a full year as an independent consultant, the last six months of which have been with one client. Things have been going great and the client is looking for ways to extend the contract; possibly through the end of the year.</p>
<p>That&#8217;s a long time to spend in the same environment, and this comes with a significant danger. In Weinberg&#8217;s book, <em>The Secrets of Consulting</em> (you can find the book <a title="Secrets of Consulting, Gerald M. Weinberg" href="http://www.amazon.com/Secrets-Consulting-Giving-Getting-Successfully/dp/0932633013/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1280531115&amp;sr=1-1">online</a>, but you&#8217;ll probably have to buy it used), he refers to this as &#8220;Prescott&#8217;s Pickle Principle&#8221;:</p>
<blockquote><p>Cucumbers get more pickled than brine gets cucumbered&#8230; A small system that tries to change a big system through long and continued contact is more likely to be changed itself.</p></blockquote>
<p>I experienced this first-hand in a recent conversation with a <a title="Michael &quot;Doc on Dev&quot; Norton" href="http://docondev.blogspot.com/">friend and colleague</a> who just started working with the same client a little over a month ago. I had just had a closed-door meeting with a member of upper management in which they laid out their plan to address several challenges in their organization. I didn&#8217;t completely agree with the plan, but I have worked with this group long enough to know when the decision is final so, except for a few clarifying questions, I accepted the news with very little feedback. As I explained to my friend how this might impact him, his response was &#8220;this is the wrong solution. It&#8217;s going to cause more problems than it solves!&#8221;</p>
<p>My initial thought was &#8220;technically he&#8217;s right, but he doesn&#8217;t have enough experience with this client to know when to accept the inevitable.&#8221; And that&#8217;s when it hit me: I&#8217;ve been pickled.</p>
<p>My job as a consultant is to be a change agent. &#8220;Long and continued contact&#8221; with a client diminishes my ability to fulfill that role. That is why Weinberg gives the following advice:</p>
<blockquote><p>To avoid getting pickled, a consultant must not spend too much time with one client. If you can&#8217;t avoid this, at least break up the time by working with other clients, even for free&#8230; It&#8217;s hard to be effective, though, if you&#8217;re always switching jobs or clients. Change generally takes both time and continued contact, or at least one of the two. The challenge, then, is how to get the <em>client</em> in long, continued contact with some kind of brine, without the consultant even being present.</p></blockquote>
<p>The challenge indeed! There is a natural tension: time and continued contact erode a consultant&#8217;s ability to affect change, yet affecting change takes time and continued contact. I think there are ways to counteract this and I hope my efforts to do so in my current situation will prove effective. But it is also important to recognize the warning signs and to act in the interest of both your client and yourself.</p>
<p>What are some ways you&#8217;ve found to keep your clients &#8220;in continued contact with some kind of brine without even being present?&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.salientblue.com/blog/?feed=rss2&amp;p=203</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Brushes and Styli</title>
		<link>http://www.salientblue.com/blog/?p=193</link>
		<comments>http://www.salientblue.com/blog/?p=193#comments</comments>
		<pubDate>Wed, 24 Feb 2010 02:29:46 +0000</pubDate>
		<dc:creator>Pablosan</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Journal]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Brushes]]></category>
		<category><![CDATA[Brushes Viewer]]></category>
		<category><![CDATA[Graphic Arts]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Pogo Sketch]]></category>
		<category><![CDATA[Stylus]]></category>
		<category><![CDATA[Ten One Design]]></category>

		<guid isPermaLink="false">http://www.salientblue.com/blog/?p=193</guid>
		<description><![CDATA[I&#8217;ll get back to Agile Blind Spots in my next post, but I have discovered a great app and piece of hardware that has turned my iPhone into an art easel. Brushes is an iPhone app that was highlighted during the introduction of the iPad a few weeks ago. One of my hobbies is Graphic Arts [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ll get back to Agile Blind Spots in my next post, but I have discovered a great app and piece of hardware that has turned my iPhone into an art easel.</p>
<p><a title="Brushes: paint app for the iPhone" href="http://brushesapp.com/">Brushes</a> is an iPhone app that was highlighted during the <a title="Apple's iPad" href="http://www.apple.com/ipad/">introduction of the iPad</a> a few weeks ago. One of my hobbies is Graphic Arts and I have often bemoaned the fact that I can&#8217;t find more time to spend on it. I even carry around a Wacom tablet&#8230; that rarely gets used: partially because there is a (very little) bit of setup required, but mostly because I&#8217;ve never been able to get comfortable with drawing in one place (on the tablet) while watching someplace else (the monitor) to see how it looks.</p>
<p>Once the iPad rumors hit a fevered pitch, my first thought was that it would make a great graphic arts platform. When Apple highlighted Brushes during the iPad unveiling I decided to purchase it for my iPhone. I played with it a little, but found the lack of accuracy due to using a fingertip somewhat off-putting. I&#8217;ve put in many hundreds of hours sketching with a pencil or pen so that approach is completely natural to me. I thought using my fingertip would be close enough to be satisfying, but&#8230; well, it isn&#8217;t. I really need a writing utensil in my hand.</p>
<p>While I&#8217;m really excited about the iPad, it&#8217;s looking like it will not ship with a stylus and this is a bit of a disappointment. Enter <a title="Ten One Design: maker of iPhone Styli" href="http://tenonedesign.com/">Ten One Design</a> and the <a title="Pogo Sketch: iPhone Stylus" href="http://tenonedesign.com/sketch.php">Pogo Sketch</a>, a stylus that works with the iPhone, with newer Macbook trackpads and the iPad (well, once they&#8217;re released anyway&#8230; Hurry up Apple!!!).</p>
<p>But wait, there&#8217;s more! The<em> pièce de résistance</em>: due to a built in Web server that allows you to transfer drawings from Brushes on your iPhone to your Mac and a companion Mac app, <a title="Brushes Viewer" href="http://brushesapp.com/viewer/">Brushes Viewer</a>, you can get a high resolution version of your small-screen artwork. Since the iPhone app actually records your strokes, it can replay those strokes at a higher resolution. Not only that, you can actually watch yourself create your masterpiece and save it off as a Quicktime movie! The max resolution for a static image is 1920 x 2880 and it looks incredible. While I wasn&#8217;t happy with the results I was getting using my fingertip, I&#8217;m <em>very</em> happy with the results using a stylus. Here is a medium quality (960 x 640) version of my first attempt using a stylus (click on the image to see it full size):</p>
<div id="attachment_194" class="wp-caption aligncenter" style="width: 490px"><a href="http://www.salientblue.com/blog/wp-content/uploads/2010/02/Jade.png"><img class="size-full wp-image-194 " src="http://www.salientblue.com/blog/wp-content/uploads/2010/02/Jade.png" alt="Jade graphic image" width="480" height="320" /></a><p class="wp-caption-text">Paul Nelson, 15 February, 2010</p></div>
<p>The combination of the Brushes app, the Pogo Sketch stylus and Brushes Viewer means I can carry an art studio in my pocket&#8230; well, close enough.</p>
<p>I can&#8217;t wait to play with Brushes and the Pogo Sketch on an iPad! Oh&#8230; and look for a nice tie-in with my Agile Blind Spots series of articles soon!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.salientblue.com/blog/?feed=rss2&amp;p=193</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Agile Blind Spots, Part 2</title>
		<link>http://www.salientblue.com/blog/?p=190</link>
		<comments>http://www.salientblue.com/blog/?p=190#comments</comments>
		<pubDate>Thu, 18 Feb 2010 23:57:07 +0000</pubDate>
		<dc:creator>Pablosan</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Iterative Development]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Business Value]]></category>
		<category><![CDATA[Prioritization]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Real Value]]></category>

		<guid isPermaLink="false">http://www.salientblue.com/blog/?p=190</guid>
		<description><![CDATA[In my previous post I went out on a limb and claimed that, while Agile places a high level of importance on &#8220;Business Value&#8221;, too many Agile projects seem to miss the mark when it comes to providing real value in the real world. To be fair, Agile methodologies have primarily focused on delivering working [...]]]></description>
			<content:encoded><![CDATA[<p>In my <a title="Agile Blind Spots, Part 1" href="http://www.salientblue.com/blog/?p=185">previous post</a> I went out on a limb and claimed that, while Agile places a high level of importance on &#8220;Business Value&#8221;, too many Agile projects seem to miss the mark when it comes to providing real value in the real world. To be fair, Agile methodologies have primarily focused on delivering working software in an iterative fashion, which is only a small portion of the overall process of seeing a gleam in one&#8217;s eye become a tangible, usable product.</p>
<p>Fortunately Agile is about executing, learning and adapting and I am beginning to see a push in two directions: both into the activities that lead up to the project&#8217;s visioning exercise and into assessing the value the project is providing in the real world.</p>
<p>One of the things that I really appreciate about Agile is the vetting process that helps a team prioritize the work in the backlog based on Business Value. This insures that those features having the highest potential for the most business value are completed first. This is highly effective in the confines of a given project. However, nothing in this process addresses: 1. how this project fits into the overall vision of the organization, 2. how the value of this project compares to other projects in the organization, and 3. A sense of whether or not the actual user will find the product useful.</p>
<p>In all fairness, it can be argued that these concerns fall outside the responsibilities of the project. But I submit that if an Agile team successfully delivers a feature set that does not fit in the overall vision of the organization, or is of less value than other projects that were passed over in favor of this project, or fail to prove useful to the end user, the project is a failure, ergo Agile has failed.</p>
<p>That may seem harsh, but I believe it is accurate. In order for Agile to continue to thrive, it must push forward into the process (or lack thereof) that precedes kicking off the project. Fortunately this is a fairly simple concept. An organization can apply the same vetting process used within the project to the process of selecting which projects actually get worked on and in which order. It is not hard to envision creating a prioritized queue of products or feature sets at a level <em>above</em> the actual project execution.</p>
<p>It is not enough to successfully deliver a project if the project itself is improperly positioned. Agile needs to push upstream. We need to start asking the tough questions:</p>
<ul>
<li>How does a given project support the overall vision of the organization?</li>
<li>Where does a given project fall in the overall prioritization for all work on deck?</li>
<li>What research have we done to provide a reasonable level of confidence that a given project will provide real value in the real world?</li>
</ul>
<p>If you are OCD&#8230; er, detail-oriented like me, you may have noticed that I have only addressed two of the three concerns I listed earlier. I&#8217;ll save the third one for next time. In the meantime, how do you envision your company pushing the Agile values upstream in an effort to provide the right thing to the right people at the right time?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.salientblue.com/blog/?feed=rss2&amp;p=190</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Agile Blind Spots, Part 1</title>
		<link>http://www.salientblue.com/blog/?p=185</link>
		<comments>http://www.salientblue.com/blog/?p=185#comments</comments>
		<pubDate>Thu, 18 Feb 2010 22:48:40 +0000</pubDate>
		<dc:creator>Pablosan</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Iterative Development]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Business Value]]></category>
		<category><![CDATA[Product Owner]]></category>

		<guid isPermaLink="false">http://www.salientblue.com/blog/?p=185</guid>
		<description><![CDATA[I&#8217;m feeling the need to state up front that: I am not trying to incite a religious war over the merits of Agile or any given Agile methodology I think Agile has been a significant positive force in the IT Industry, driving a focus on continual improvement, quality, incremental delivery and, overall, bringing back a [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m feeling the need to state up front that:</p>
<ul>
<li>I am not trying to incite a religious war over the merits of Agile or any given Agile methodology</li>
<li>I think Agile has been a significant positive force in the IT Industry, driving a focus on continual improvement, quality, incremental delivery and, overall, bringing back a fair amount of science to computer science.</li>
</ul>
<p>Let me state my assumptions: first, Agile is IT process-centric because it was created by software engineers. The reason the term was coined and the movement birthed is because we in IT were tired of a heavy-weight process that had a track record of setting us up for failure. I am extremely grateful that a group self-organized back in late 2001 to stop the insanity and blaze a trail in a new direction. As is often the case, that which gives us our strength is also our downfall.</p>
<p>My second assumption is that the direction of a project and the details of a process should be driven by providing real value in the real world. I&#8217;m sure that some of you are already jumping ahead of me and planning my lynching, because I obviously have missed the point that Agile is all about &#8220;Business Value.&#8221; Hopefully you&#8217;ll give me time to explain. While business value is firmly espoused in principle, I&#8217;m not convinced that the concept is well understood and, therefore, misses the mark in execution (this statement is based on direct observation of dozens of teams who are doing their best to follow Agile principles and continually improve). The reason for this is straightforward: Agile is being driven by IT. Our focus is on &#8220;working software.&#8221; Yes, &#8220;working&#8221; should include the concept of providing real value in the real world, but does it? How do we know? Are we utilizing objective measurements to show how real customers are using the product in the real world? Or are we satisfied validating this through the tacit approval of a Product Owner?</p>
<p>More importantly, is anyone stopping to ask these questions <em>before </em>we get started? I am continually surprised by how many software projects are given the green light or continue to live without anyone asking the hard questions: how will we justify the significant expense incurred to create and maintain this? How many users will actually use it? Will those who we expect to use this find it valuable? What problems will it solve? What problems will it create? How can we know the answers to these questions before we have a product for someone to use? It strikes me that there are very few products who could get away with making it to production without answering these questions. I think the days of software products getting away with it are numbered.</p>
<p>Let me pose a simple question: how many non-IT business professionals can you list who are making a significant contribution to the Agile movement? How many Product Managers? Product Marketers? Corporate Executives? I know my circle is small, but I can&#8217;t think of any. It seems to me that if we were truly engaging &#8220;the Business side of the house&#8221;  that they would eventually have a significant presence as speakers at conferences, authors of books on Agile and the like. Yet the Agile landscape is still dominated by geeks.</p>
<p>This is not to say that Agile has failed, but I do think Agile can only go so far: it can only solve certain problems in its current state. Agile has performed splendidly, moving us away from a draconian focus on process, but I am not convinced it can take us all the way to where we need to be: focused on providing real value in the real world. IT cannot lead us there. We desperately need someone without our blind spots to show us the way.</p>
<p>Fortunately, many in Agile circles are already wrestling with this issue and I intend to delve deeper into some proposed solutions in my next article.</p>
<p>So what do you think? Am I completely off-base? Are we already there and I&#8217;m just late to the game? As always, your comments are welcome!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.salientblue.com/blog/?feed=rss2&amp;p=185</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Weighing in on the iPad</title>
		<link>http://www.salientblue.com/blog/?p=180</link>
		<comments>http://www.salientblue.com/blog/?p=180#comments</comments>
		<pubDate>Fri, 29 Jan 2010 20:14:17 +0000</pubDate>
		<dc:creator>Pablosan</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Journal]]></category>
		<category><![CDATA[human interfaces]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[usability]]></category>
		<category><![CDATA[user experience]]></category>

		<guid isPermaLink="false">http://www.salientblue.com/blog/?p=180</guid>
		<description><![CDATA[I&#8217;ve purposely refrained from reading too much about the release of the iPad. In all likelihood these points have already been made elsewhere, but this is my view of Apple&#8217;s new toy. I&#8217;ll start with the patently obvious (pun intended): exactly like their introduction of the iPod, and exactly like their follow-on introduction of the [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve purposely refrained from reading too much about the release of the iPad. In all likelihood these points have already been made elsewhere, but this is my view of Apple&#8217;s new toy.</p>
<p>I&#8217;ll start with the patently obvious (pun intended): exactly like their introduction of the iPod, and exactly like their follow-on introduction of the iPhone, the iPad&#8217;s primary raison d&#8217;être is to provide yet another portal to content. Steve Jobs brazenly admitted as much in <a title="Apple Special Event 2010" href="http://events.apple.com.edgesuite.net/1001q3f8hhr/event/index.html">Wednesday&#8217;s product announcement</a>, citing a couple of facts:</p>
<ul>
<li>Apple has 175 <strong><em>million</em><span style="font-weight: normal"> consumer credit card numbers attached to iTunes accounts.</span></strong></li>
<li><strong><span style="font-weight: normal">Customers have downloaded 3 </span><em>billion</em><span style="font-weight: normal"> apps for their iPhones and iPod Touches</span></strong></li>
</ul>
<p>That&#8217;s just applications! What about music and videos?</p>
<ul>
<li><strong><span style="font-weight: normal">As of a year ago (Phil Schiller&#8217;s Macworld keynote) iTunes customers had purchased <a href="http://www.techcrunch.com/2009/01/06/itunes-sells-6-billion-songs-and-other-fun-stats-from-the-philnote/">6 </a></span><em><a title="TechCrunch: Apple 2009 Keynote highlights" href="http://www.techcrunch.com/2009/01/06/itunes-sells-6-billion-songs-and-other-fun-stats-from-the-philnote/">billion</a></em><span style="font-weight: normal"><a href="http://www.techcrunch.com/2009/01/06/itunes-sells-6-billion-songs-and-other-fun-stats-from-the-philnote/"> songs</a>.</span></strong></li>
<li>Over a year and a half ago, customers were purchasing <a title="Apple Press Release, June 2008" href="http://www.apple.com/pr/library/2008/06/19itunes.html">50,000 videos </a><strong><em><a title="Apple Press Release, June 2008" href="http://www.apple.com/pr/library/2008/06/19itunes.html">per day</a></em><span style="font-weight: normal"> on iTunes. Assuming that hasn&#8217;t changed (and the daily rate is likely much higher today), that would be over 18 </span><em>million</em><span style="font-weight: normal"> video downloads per year.</span></strong></li>
</ul>
<p>Interestingly, as the iPhone and iPod Touch opened up new content sales for Apple in the form of videos, the iPad also adds ebooks. So Apple wants you, me &#8211; all of us &#8211; to purchase our content from them. The devices are simply the conduit. Granted, the folks at Apple are software and hardware artisans, so using their devices to consume all that content is a joy in itself. But I think Apple figured out a while ago that hardware will continue to be marginalized and that &#8220;content is king.&#8221;</p>
<p>So enough stating the obvious. I&#8217;ve heard a few people (geeks, mostly) ask questions that basically boil down to &#8220;So what? Who cares?&#8221; I have an iPhone. I have a Macbook Pro. The last thing I want to do is lug around a <em>third</em> device that doesn&#8217;t give me anything new!</p>
<p>I&#8217;ve also heard it stated that the iPad is a let-down because it&#8217;s evolutionary, not revolutionary. I disagree with these sentiments. I think the iPad <em>is </em>revolutionary and I think we, as geeks, need to sit up and take notice. It has been a very long time coming, but the way we interact with computers is finally becoming a bit more&#8230; human. Lately, there has been a lot of buzz in the IT world about User Experience, stating that it has been a second-class citizen for far too long. We are striving to simplify interfaces and improve user experience. Yet we still expect every computer user to be proficient with a keyboard and a mouse, to understand hierarchical menu systems, keyboard shortcuts, archaic command line incantations, etc.</p>
<p>Years ago, I had an idea for a computing device. The impetus for my idea was the simple thought that &#8220;a computer should be as easy to use as a piece of paper.&#8221; The iPad is not that device, but it is much closer than a device that uses a keyboard and a pointing device. What is more natural than pointing at something with your finger? The iPad is revolutionary by being a full-scale computing device that we interact with very naturally; directly. It eliminates a layer of abstraction at the most fragile, yet crucial part of any system: user input. This is a Good Thing, and I can&#8217;t wait to see where this latest step in improving user experience leads us!</p>
<p>So I, for one, will be lugging around three devices&#8230; at least for a while.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.salientblue.com/blog/?feed=rss2&amp;p=180</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Go and Software Development</title>
		<link>http://www.salientblue.com/blog/?p=176</link>
		<comments>http://www.salientblue.com/blog/?p=176#comments</comments>
		<pubDate>Mon, 11 Jan 2010 19:04:22 +0000</pubDate>
		<dc:creator>Pablosan</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Go]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.salientblue.com/blog/?p=176</guid>
		<description><![CDATA[I recently ran across Kent Beck&#8217;s blog post, Valuing Ambiquity. In it he uses the game of Go as an excellent analogy for dealing with ambiguity in software development. I have been a casual Go player for about two years now, ever since being introduced to the game by a friend and former teammate. Around [...]]]></description>
			<content:encoded><![CDATA[<p>I recently ran across Kent Beck&#8217;s blog post, <a title="Kent Beck's blog: Valuing Ambiguity" href="http://www.threeriversinstitute.org/blog/?p=374">Valuing Ambiquity</a>. In it he uses the game of Go as an excellent analogy for dealing with ambiguity in software development.</p>
<p>I have been a casual Go player for about two years now, ever since being introduced to the game by a <a title="Greg Graham" href="http://www.grahamtx.net/">friend and former teammate</a>. Around that same timeframe I read somewhere online that all software developers should learn the game of Go (sidenote: if there was ever a case for <a title="Semantic Web" href="http://en.wikipedia.org/wiki/Semantic_Web">Semantic Web</a>, it is Go. Googling &#8220;Go&#8221; is&#8230; pointless).</p>
<p>I&#8217;ve <a title="From Go to Tic-Tac-Toe" href="http://www.salientblue.com/blog/?cat=64">written about Go before</a>, and looking back on my approach to Go so far (I am probably rated around 20 kyu, which is a rank beginner) gives me plenty of object lessons.</p>
<p>One such lesson is looking at the game as an emerging design. I have no idea what the end state of a game of Go will be. The way I currently approach the game is to quickly survey the entire board with a bias for the area in which my opponent just played, in order to narrow my focus to a few strategic moves. This usually leads me to a smaller section of the board, where I will play out a series of moves in my head to determine which of my possible moves seems the most valuable (value being defined as the right balance between potential gains and potential losses).</p>
<p>I have found the same approach useful in improving the design of legacy code. In dealing with very large codebases (over 500K lines of code), I find it impossible to determine what the end-result of design improvements should be. However, I can look at small parts of the system and see small ways in which the design could be improved. Many times I am looking in a certain section of code because a search for the root-cause of a defect has led me there (my opponent&#8217;s last move?). Writing Unit Tests allows me to explore the problem space and find the best course of action. All of this leads to incrementally improving design, which in turn increases value.</p>
<p>The hard part, both in the game of Go and in software development (as Kent Beck clearly articulates), is dealing with ambiguity. I cannot lose sight of the big picture: staying focused on a small subset of the overall problem space almost certainly results in failure. Yet allowing the insurmountable complexity of the big picture to paralyze me is as detrimental as losing sight of it.</p>
<p>Like so many things in life, it&#8217;s all about balance: balancing potential gains and potential losses as well as balancing focus on the big picture and focus on the details.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.salientblue.com/blog/?feed=rss2&amp;p=176</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Abolish Roles</title>
		<link>http://www.salientblue.com/blog/?p=174</link>
		<comments>http://www.salientblue.com/blog/?p=174#comments</comments>
		<pubDate>Sun, 01 Nov 2009 21:23:02 +0000</pubDate>
		<dc:creator>Pablosan</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Teams]]></category>
		<category><![CDATA[Agile teams]]></category>
		<category><![CDATA[failure]]></category>
		<category><![CDATA[roles]]></category>
		<category><![CDATA[success]]></category>
		<category><![CDATA[team member]]></category>

		<guid isPermaLink="false">http://www.salientblue.com/blog/?p=174</guid>
		<description><![CDATA[A few weeks ago, I noticed a theme developing in my Twitter feed. I had some friends tweeting from the Simple Design and Testing conference in Pittsburgh, and another friend tweeting about this blog entry. At the same time, I was working on some XP course material and was reminded of Kent Beck&#8217;s words &#8220;&#8230;[taking] [...]]]></description>
			<content:encoded><![CDATA[<p>A few weeks ago, I noticed a theme developing in my Twitter feed. I had <a title="Lean Dog" href="http://leandog.com/">some friends</a> tweeting from the <a title="SDT Conference" href="http://sdtconf.com/">Simple Design and Testing conference</a> in Pittsburgh, and another <a title="D.H. Emery" href="http://dhemery.com/">friend</a> tweeting about <a title="Rachel Davies' blog" href="http://agilecoach.typepad.com/agile-coaching/2009/10/is-assigning-roles-the-best-way-to-get-agile-teams-started.html">this blog entry</a>. At the same time, I was working on some XP course material and was reminded of Kent Beck&#8217;s words &#8220;&#8230;[taking] commonsense principals and practices to extreme levels.&#8221;</p>
<p>So in the spirit of eXtreme Programming, I propose what I believe to be an interesting thought experiment: if self-organizing teams are good, then we will always treat the team as a unit; never drawing attention to specific roles.</p>
<p>This is interesting because success or failure should be measured as a team. If a developer on the team does a great job, but no working software is delivered, the team failed: therefore, the developer failed. If a tester on the team does a great job of providing test coverage over one, small part of the overall work for an iteration but no Stories are completed, the team fails: therefore, the tester failed. If the Iteration Manager does a great job of removing roadblocks and insuring work is driven from a prioritized backlog, but the requirements are unclear and the Demo fails, the team fails: therefore, the Iteration Manager fails. In short, any individual team member&#8217;s success is completely dependent upon the success of the team.</p>
<p>This should lead to a team where the concept of roles is, at a minimum, blurred. The team does whatever is necessary to attain the stated goals: meaning, individuals on the team do whatever is necessary for the team to succeed. There is only one role: team member.</p>
<p>So why is this a thought experiment? When it comes to getting real work done, we need competency in certain skills. It would be difficult — even silly — for a company to list job postings seeking &#8220;Team Members&#8221; without any specific skill set. We still need experts. We still need people with the specific ability to turn ideas into code; to effectively facilitate a team; to expertly test a system. Those roles, and more, are crucial to making real progress on software development projects.</p>
<p>Being an individual is easy. Working effectively on a team is a worthy challenge. What are some ways you are encouraging your coworkers to become teammates: to put the interests of the team ahead of their own interests/concerns/agendas?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.salientblue.com/blog/?feed=rss2&amp;p=174</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Institutionalized Flexibility</title>
		<link>http://www.salientblue.com/blog/?p=171</link>
		<comments>http://www.salientblue.com/blog/?p=171#comments</comments>
		<pubDate>Sun, 04 Oct 2009 23:00:55 +0000</pubDate>
		<dc:creator>Pablosan</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Journal]]></category>
		<category><![CDATA[Teams]]></category>
		<category><![CDATA[Corporate America]]></category>
		<category><![CDATA[heavy-weight process]]></category>
		<category><![CDATA[roadblocks]]></category>

		<guid isPermaLink="false">http://www.salientblue.com/blog/?p=171</guid>
		<description><![CDATA[One of the great things about my current gig is the opportunity to work with several, high-caliber consultants. The client has put together a top-notch team that has the ability to easily exceed expectations. The client is also a Fortune 500 company with a very long history of heavyweight process. Our job is to codify [...]]]></description>
			<content:encoded><![CDATA[<p>One of the great things about my current gig is the opportunity to work with several, high-caliber consultants. The client has put together a top-notch team that has the ability to easily exceed expectations. The client is also a Fortune 500 company with a very long history of heavyweight process. Our job is to codify their particular approach to Agile, while identifying areas for improvement. The importance of a well-documented, repeatable process has been the focus of many, long meetings.</p>
<p>The irony of the situation has not been lost on us. Our job is to create a franchise model of Agile, so that the company can start stamping out Agile teams like a manufacturer churning out Happy Meal toys. This has been the topic of discussion among the consultants over many lunches and dinners, and even during trips to the airport.</p>
<p>Somewhere along the line, one of us observed that &#8220;maybe we should look at this as an opportunity to institutionalize flexibility.&#8221; This is, of course, somewhat tongue-in-cheek, but I also believe it is indeed our challenge. In fact, I think it is the greatest challenge facing Agile adoption today: how do we make Agile work in a large organization, where conformance, governance, systems integration and the like are valid constraints? It is not enough for a team to know where they are: the organization needs to know where they are, how what they are doing will impact other efforts, how much time and effort is involved, etc.</p>
<p>Several large companies are seeking to provide tools to solve this problem, including one that likes three-letter acronyms that begin with &#8220;R&#8221;. As far as I can tell, the only thing that has been accomplished so far is to add complexity to an already daunting task. Honestly, I don&#8217;t think I&#8217;ve ever seen a process problem solved by throwing tools at it, but that seems to be the first and most frequent solution landed on in Corporate America. Yet the problem is real, pervasive, and needs addressing.</p>
<p>So how do we institutionalize Agile without violating <a id="quzr" title="The Agile Manifesto" href="http://www.agilemanifesto.org/">Agile&#8217;s core values</a>? I&#8217;m not sure, but whoever figures it out stands to make a fortune!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.salientblue.com/blog/?feed=rss2&amp;p=171</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hanging out my kanban</title>
		<link>http://www.salientblue.com/blog/?p=167</link>
		<comments>http://www.salientblue.com/blog/?p=167#comments</comments>
		<pubDate>Wed, 16 Sep 2009 02:04:32 +0000</pubDate>
		<dc:creator>Pablosan</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Journal]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[consulting]]></category>
		<category><![CDATA[kanban]]></category>
		<category><![CDATA[Lean]]></category>
		<category><![CDATA[Toyota Production System]]></category>
		<category><![CDATA[TPS]]></category>

		<guid isPermaLink="false">http://www.salientblue.com/blog/?p=167</guid>
		<description><![CDATA[Well, there you have it. I made my choice! I&#8217;m hanging out my shingle, striking out on my own, etc. People keep asking me if I&#8217;m excited. Terrified is, I think, more appropriate. But I am not completely alone. I&#8217;ll be working very closely with these guys. Just to give you an idea of how [...]]]></description>
			<content:encoded><![CDATA[<p>Well, there you have it. I made my choice! I&#8217;m hanging out my shingle, striking out on my own, etc. People keep asking me if I&#8217;m excited. Terrified is, I think, more appropriate.</p>
<p>But I am not completely alone. I&#8217;ll be working very closely with <a title="Lean Dog" href="http://leandog.com/">these guys</a>. Just to give you an idea of how hip this group is, take a look at <a title="The Lean Dog Boat" href="http://www.flickr.com/photos/35530923@N06/sets/72157622001297228/">their office</a>! Yep, it&#8217;s a boat and, yes, they have a nice view of Lake Erie and the Cleveland skyline.</p>
<p>This new opportunity will give me the privilege of continuing to pursue my passion: helping software development teams have a lot of fun making real progress on real projects.</p>
<p>It seems that the current Agile Hype is around <a title="Wikipedia: Kanban" href="http://en.wikipedia.org/wiki/Kanban">Kanban</a>, so I thought I&#8217;d tie that in as well. I am both impressed with and concerned about <a title="Limited WIP Society" href="http://www.limitedwipsociety.org/">kanban for software development</a>, a new-ish methodology taking ideas from <a title="Wikipedia: Lean Software Development" href="http://en.wikipedia.org/wiki/Lean_software_development">Lean</a> and from the <a title="Wikipedia: TPS" href="http://en.wikipedia.org/wiki/Toyota_Production_System">Toyota Production System (TPS)</a>. There are many great ideas in this newest evolutionary step in Agile: a focus on quality, limiting work-in-process, balancing demand against throughput, effective prioritization, pull don&#8217;t push, continual improvement, eliminating waste, and many more. All of these are powerful concepts (David Anderson gave an excellent talk on kanban, which you can find <a title="InfoQ: A Kanban System for Software Engineering" href="http://www.infoq.com/presentations/kanban-for-software">here</a>).</p>
<p>Why the concern? Well, it seems that certain other Agile methodologies have ended up being more about creating marketable intellectual property than solving real-world problems. And I think that&#8217;s an easy trap to fall into. Marketing an idea is important to it&#8217;s survival, and that is going to create tension. As long as those behind the Kanban approach stay focused on solving real-world problems, we&#8217;ll be fine, but they will have to fight against the urge to over-market their ideas.</p>
<p>I hope they succeed, because I think this latest incarnation of Agile is a very good thing! And I&#8217;m looking forward to proving that out over the next several months while watching kanban for software development continually improve!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.salientblue.com/blog/?feed=rss2&amp;p=167</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.349 seconds -->
