<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>ingvald</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/" />
    <link rel="self" type="application/atom+xml" href="http://skaug.no/ingvald/atom.xml" />
    <id>tag:skaug.no,2008-01-30:/ingvald//2</id>
    <updated>2011-05-09T19:17:58Z</updated>
    <subtitle>what i think</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type Publishing Platform 4.01</generator>

<entry>
    <title>Kanban - Core Concepts and Practices</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2011/05/kanban-core-concepts-practices.html" />
    <id>tag:skaug.no,2011:/ingvald//2.102</id>

    <published>2011-05-09T19:10:29Z</published>
    <updated>2011-05-09T19:17:58Z</updated>

    <summary>Kanban Core ConceptsVisualize work; items, process/ flow, policiesLimit work-in-progress (WIP), but don&apos;t be too ambitious at firstBasic Kanban is a lightweight framework for change management.Starting with the core concepts on top of your present process should meet little resistance, at...</summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Kanban" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="SW dev" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="flow" label="flow" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="slack" label="slack" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[<span class="Apple-style-span" style="color: rgb(0, 0, 0); "><p style="font-family: Arial, Helvetica, sans-serif; "><em>Kanban Core Concepts</em></p><ul style="font-family: Arial, Helvetica, sans-serif; "><li>Visualize work; items, process/ flow, policies</li><li>Limit work-in-progress (WIP), but don't be too ambitious at first</li></ul><p style="font-family: Arial, Helvetica, sans-serif; ">Basic Kanban is a lightweight framework for change management.<br />Starting with the core concepts on top of your present process should meet little resistance, at least when coupled with focus on improving quality.&nbsp;</p><p style="font-family: Arial, Helvetica, sans-serif; ">Btw, I talked at a lokal meetup earlier this year (<a href="http://skaug.no/ingvald/2011/02/how-to-get-started-with-kanban.html" _mce_href="http://skaug.no/ingvald/2011/02/how-to-get-started-with-kanban.html">slides here</a>), mostly on the core concepts - why they work and how to start.</p><p style="font-family: Arial, Helvetica, sans-serif; "><em>A few Kanban Practices</em></p><ul style="font-family: Arial, Helvetica, sans-serif; "><li>Flow; encourage, cultivate, transform towards</li><li>Classes of Service (CoS); visualize and track different types of work, with different demands on them</li><li>Gradually limit WIP to improve flow and to uncover your next improvement opportunity</li><li>Cadence; regular rythm of things like backlog replenishment and deployment, separate from development</li><li>Metrics; to manage flow over time&nbsp;</li><li>Pull; instead of mostly work with deadlines</li><li>Slack, swarming - doing it consciously</li></ul><p style="font-family: Arial, Helvetica, sans-serif; ">There's more, but this illustrates the relation between the core concepts and a set of recommended practices.</p><p style="font-family: Arial, Helvetica, sans-serif; ">You're likely to start with a simple version of some practices, f.ex. the work types (CoS) critical items, work with deadlines, bugs. More practices can be utilized as your organization matures, and more sofisticated use of practices, like setting different target lead times for different CoS, f.ex. 50% of bugs should be fixed within a week.</p><p><font class="Apple-style-span" style="font-size: 0.8em; ">(Re-posted from <a href="http://ingvald.posterous.com/kanban-core-concepts-and-practices-0">notes to self</a>.)</font></p></span> ]]>
        
    </content>
</entry>

<entry>
    <title>Extracting a Personal Kanban from an Overgrown ToDo List</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2011/05/extracting-a-personal-kanban-f.html" />
    <id>tag:skaug.no,2011:/ingvald//2.101</id>

    <published>2011-05-05T09:46:21Z</published>
    <updated>2011-05-09T18:56:10Z</updated>

    <summary>Last week I looked at my overgrown todo list, and preparation for a demo at work was coming up, and I have a long trip to prepare for...So I simply had to create a personal kanban on the cupboard behind...</summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Kanban" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="agile" label="agile" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="flow" label="flow" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="focus" label="focus" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="gtd" label="gtd" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="productivity" label="productivity" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[<span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif; color: rgb(0, 0, 0); "><p>Last week I looked at my overgrown todo list, and preparation for a demo at work was coming up, and I have a long trip to prepare for...</p><p>So I simply had to create a personal kanban on the cupboard behind me:</p><p></p><span class="mt-enclosure mt-enclosure-image"><a href="http://skaug.no/ingvald/personalkanban2011mai.jpg"><img alt="personalkanban2011mai.jpg" src="http://skaug.no/ingvald/personalkanban2011mai-thumb-400x536.jpg" width="400" height="536" class="mt-image-center" style="text-align: center; display: block; margin: 0 auto 20px;" /></a></span><p></p><p>I used a form of <a href="http://www.personalkanban.com/pk/featured/urgent-and-important-incorporating-your-existing-tools-into-personal-kanban/">priority filter</a>, with a generic todo column to the left, then a "soon"/today column, then the usual doing and done columns.</p><p>Collaboration on the demo preparation led to tasks on the board, and I took the most important and urgent tasks from my todo list onto the board.&nbsp;</p><p>It worked really well to let tasks float up and to the right in the todo columns, kind of like bubbles. I got an immediate impression of relative urgency (more to the right) and relative importance (upwards), making it very easy to decide what the next task should be when I finished a task.</p><p>These spatial relationships were not by design, btw - at one point it just suddenly dawned on me what I had been doing subconsciously...</p><p>Also, there was no sharp column separators, and&nbsp;the status of tasks in the area between columns was a bit fuzzy, f.ex. "almost done" or "barely started". This made the WIP for the "doing" column a bit fuzzy, too, but my brain seemed to like this analog setup, and breaking the WIP limit was never a problem.</p></span><div style="display: none; " id="hiddenlpsubmitdiv"></div><script>try{for(var lastpass_iter=0; lastpass_iter < document.forms.length; lastpass_iter++){ var lastpass_f = document.forms[lastpass_iter]; if(typeof(lastpass_f.lpsubmitorig2)=="undefined"){ lastpass_f.lpsubmitorig2 = lastpass_f.submit; lastpass_f.submit = function(){ var form=this; var customEvent = document.createEvent("Event"); customEvent.initEvent("lpCustomEvent", true, true); var d = document.getElementById("hiddenlpsubmitdiv"); for(var i = 0; i < document.forms.length; i++){ if(document.forms[i]==form){ d.innerText=i; } } d.dispatchEvent(customEvent); form.lpsubmitorig2(); } } }}catch(e){}</script>]]>
        
    </content>
</entry>

<entry>
    <title>How to Get Started with Kanban, and Why</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2011/02/how-to-get-started-with-kanban.html" />
    <id>tag:skaug.no,2011:/ingvald//2.98</id>

    <published>2011-02-08T18:09:05Z</published>
    <updated>2011-05-05T14:17:22Z</updated>

    <summary><![CDATA[Monday February 7 I talked about Kanban at Trondheim XP &amp; Agile Meetup. I think it went well, even if I made a few presenter mistakes, based on feedback and the great questions and discussions.Here's the presentation with a few...]]></summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Kanban" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="SW dev" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="agile" label="agile" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="flow" label="flow" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[Monday February 7 I talked about Kanban at Trondheim XP &amp; Agile Meetup. <br /><br />I think it went well, even if I made a few presenter mistakes, based on feedback and the great questions and discussions.<br /><br />Here's the presentation with a few adjustments, like a few additional links for further reading.<br /><br /><br /> 


<div style="width: 425px;" id="__ss_6853427"><strong style="margin: 12px 0pt 4px; display: block;"><a href="http://www.slideshare.net/ingvaldskaug/how-to-get-started-with-kanban-and-why" title="How to Get Started with Kanban, and Why">How to Get Started with Kanban, and Why</a></strong><object id="__sse6853427" height="355" width="425"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=201102xpmeetupkanbanafter-110208125329-phpapp01&amp;rel=0&amp;stripped_title=how-to-get-started-with-kanban-and-why&amp;userName=ingvaldskaug" /><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><embed name="__sse6853427" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=201102xpmeetupkanbanafter-110208125329-phpapp01&amp;rel=0&amp;stripped_title=how-to-get-started-with-kanban-and-why&amp;userName=ingvaldskaug" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="355" width="425"></object></div><script src="http://b.scorecardresearch.com/beacon.js?c1=7&amp;c2=7400849&amp;c3=1&amp;c4=&amp;c5=&amp;c6="></script><script src="http://b.scorecardresearch.com/beacon.js?c1=7&amp;c2=7400849&amp;c3=1&amp;c4=&amp;c5=&amp;c6="></script>]]>
        
    </content>
</entry>

<entry>
    <title>Kanban at Trondheim XP &amp; Agile Meetup, Feb. 7</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2011/02/xp-meetup-kanban.html" />
    <id>tag:skaug.no,2011:/ingvald//2.97</id>

    <published>2011-02-06T20:24:25Z</published>
    <updated>2011-02-06T23:54:14Z</updated>

    <summary><![CDATA[On Monday, February 7, I'm talking about Kanban at Trondheim XP &amp; Agile Meetup.It's something I'm passionate about, so I'm excited.Topics include:"Kanban 101", or how to get started with simple KanbanAgile Basics, or why Kanban works&nbsp;"Kanban 201", or what's nextAfter...]]></summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Kanban" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="SW dev" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="agile" label="agile" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[On Monday, February 7, I'm talking about Kanban at Trondheim XP &amp; Agile Meetup.<div><br /></div><div>It's something I'm passionate about, so I'm excited.</div><div><br /></div><div>Topics include:</div><div><ul><li>"Kanban 101", or how to get started with simple Kanban</li><li>Agile Basics, or why Kanban works&nbsp;</li><li>"Kanban 201", or what's next</li></ul></div><div><br /></div><div>After the meetup I'll make slides available here.</div><div><br /></div><div>More information about the meetup (in Norwegian):</div><div><a href="http://www.meetup.com/trondheim-smidig/events/15739689/">http://www.meetup.com/trondheim-smidig/events/15739689/</a></div><div><br /></div><div><br /></div><div></div>]]>
        
    </content>
</entry>

<entry>
    <title>Lightning Talk at Smidig 2010 on Agile Basics</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2011/01/lightning-talk-at-smidig-2010.html" />
    <id>tag:skaug.no,2011:/ingvald//2.96</id>

    <published>2011-01-30T17:57:57Z</published>
    <updated>2011-02-08T17:14:16Z</updated>

    <summary><![CDATA[Last fall I had a lightning talk at the Norwegian conference Smidig 2010.&nbsp;I talked about an important topic: what really works and why, in other words, Agile Basics.It went ok, I guess, at least considering it was my first time...]]></summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="NO" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="SW dev" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="agile" label="agile" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[<div align="left">Last fall I had a lightning talk at the Norwegian conference <a href="http://smidig2010.no/">Smidig 2010</a>.&nbsp;</div><div><br />I talked about an important topic: what really works and why, in other words, Agile Basics.<br /><br />It went ok, I guess, at least considering it was my first time speaking at a conference.&nbsp; Next time I'll try to improve a couple of things:<br /><br />1. I'll be less nervous... I managed to present what I had prepared calmly and clearly, but my nervousness prevented my passion for the topic from coming through.<br /></div><br />2. I'll follow through on subtopics.&nbsp; F.ex. on visualization, I ended up mentioning the banal fact that a task board is an example of visualization, when I really wanted to say something <a href="http://skaug.no/ingvald/2010/12/agile-basics-visualize-more.html">about a team and it's context. F.ex. how a task board that's visible for everyone promotes a shared mental model</a> between people both in the team and among the stakeholders, and therefore enables much more effective thinking and communication when developing software.<br /><br />Anyway, if you're curious, you can take a look at the video of the talk (in Norwegian), or just the slides.<br /><br /><br />


<iframe src="http://player.vimeo.com/video/17184131" frameborder="0" height="300" width="400"></iframe>

<p>
&nbsp;
</p>

<div style="width: 425px;" id="__ss_6797749"><strong style="margin: 12px 0pt 4px; display: block;"><a href="http://www.slideshare.net/ingvaldskaug/smidig-2010-agilebasicspresentasjon" title="Smidig 2010: Agile Basics">Smidig 2010: Agile Basics</a></strong><object id="__sse6797749" height="355" width="425"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=smidig2010agilebasicspresentasjon-110203052715-phpapp02&amp;rel=0&amp;stripped_title=smidig-2010-agilebasicspresentasjon&amp;userName=ingvaldskaug" /><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><embed name="__sse6797749" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=smidig2010agilebasicspresentasjon-110203052715-phpapp02&amp;rel=0&amp;stripped_title=smidig-2010-agilebasicspresentasjon&amp;userName=ingvaldskaug" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="355" width="425"></object></div>
<script src="http://b.scorecardresearch.com/beacon.js?c1=7&amp;c2=7400849&amp;c3=1&amp;c4=&amp;c5=&amp;c6="></script>]]>
        
    </content>
</entry>

<entry>
    <title>Agile Basics: Visualize More</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2010/12/agile-basics-visualize-more.html" />
    <id>tag:skaug.no,2010:/ingvald//2.83</id>

    <published>2010-12-14T16:18:25Z</published>
    <updated>2011-01-07T01:40:33Z</updated>

    <summary>If you visualize more you get more agile.Tom Wujec had an excellent TED talk on 3 ways the brain creates meaning.Use images to clarify ideasVisual shapes, physical space, colors, motion help us create mental model, more understandingThe act of engaging,...</summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="SW dev" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="agile" label="agile" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[If you visualize more you get <a href="http://www.skaug.no/ingvald/2010/11/what-is-agile.html">more agile</a>.<br /><br />Tom Wujec had an excellent TED talk on <a href="http://www.ted.com/talks/tom_wujec_on_3_ways_the_brain_creates_meaning.html">3 ways the brain creates meaning</a>.<br /><br /><ul><li>Use images to clarify ideas<br />Visual shapes, physical space, colors, motion help us create mental model, more understanding<br /></li><li>The act of engaging, being interactive enriches mental model</li><li>Augment memory by creating persistent, evolving views<br /></li></ul><br /><span class="mt-enclosure mt-enclosure-image"><a href="http://skaug.no/ingvald/2010/12/23/sonic-boom.jpg"><img alt="sonic boom http://www.flickr.com/photos/telstar/1203783516/" title="sonic boom http://www.flickr.com/photos/telstar/1203783516/" src="http://skaug.no/ingvald/2010/12/23/sonic-boom-thumb-300x214.jpg" class="mt-image-right" style="margin: 0pt 0pt 20px 20px; float: right;" width="300" height="214" /></a></span>Let's say you have a&nbsp;<b>task board </b>for a software development team, either a physical one or a digital one shown on a screen as a dashboard. Let's say it's visible in an office so that everyone on and outside the team sees it several times a day.<br /><br /><ul><li>People in and around the team gain a <b>shared mental model</b>, a shared understanding.<br /></li><li>People interact with the board as things change, including upstream and downstream stakeholders. A visible task board creates <b>more engaged stakeholders</b>.<br /></li><li>A task board is persistent and evolving, and becomes a new visual, domain-specific language of sorts, where the domain is the reality of the development team. <br />This language is a more abstract, high-level language, and enables much more <b>effective thinking</b>, communication, and collaboration.<br /></li></ul>A software development team communicate and collaborate much more effectively with a visible task board.<br /><div><br /></div><div>Do you use a virtual task board? Let a screen display the task board permanently.</div><div><br /></div><div>Are you working in a traditional waterfall project? Regularly print the latest version of the project plan (and progress) and put it on the wall.</div><div><div><br /></div><div>Are you using a CI server? Create alerts or alarms of some kind for failures.</div></div><div><br /></div><div>Do you share status on sales, bugs, product upgrades, project progress, project backlog etc in monthly or weekly meetings? Make status visible for everyone at anytime via screen or paper.</div><div><br /></div><div style="display: none; " id="hiddenlpsubmitdiv"></div><script>try{for(var lastpass_iter=0; lastpass_iter < document.forms.length; lastpass_iter++){ var lastpass_f = document.forms[lastpass_iter]; if(typeof(lastpass_f.lpsubmitorig2)=="undefined"){ lastpass_f.lpsubmitorig2 = lastpass_f.submit; lastpass_f.submit = function(){ var form=this; var customEvent = document.createEvent("Event"); customEvent.initEvent("lpCustomEvent", true, true); var d = document.getElementById("hiddenlpsubmitdiv"); for(var i = 0; i < document.forms.length; i++){ if(document.forms[i]==form){ d.innerText=i; } } d.dispatchEvent(customEvent); form.lpsubmitorig2(); } } }}catch(e){}</script>]]>
        
    </content>
</entry>

<entry>
    <title>Being Agile</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2010/11/what-is-agile.html" />
    <id>tag:skaug.no,2010:/ingvald//2.81</id>

    <published>2010-11-10T20:15:46Z</published>
    <updated>2011-04-07T22:02:53Z</updated>

    <summary><![CDATA[Agility is about balance and speed, and being able to change and adapt to change.&nbsp;It's not a binary state, something you are or not, but a question of degree. &nbsp;You, or your team or company, are more or less agile.From...]]></summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="SW dev" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="agile" label="agile" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[<div><b>Agility is about balance and speed, and being able to change and adapt to change.&nbsp;</b></div><div><br /></div><div>It's not a binary state, something you are or not, but a question of degree. &nbsp;You, or your team or company, are more or less agile.</div><div><br /></div><div><span class="mt-enclosure mt-enclosure-image"><img alt="agile leopard http://www.flickr.com/photos/42429527@N03/5063150948/" title="agile leopard http://www.flickr.com/photos/42429527@N03/5063150948/" src="http://skaug.no/ingvald/2010/11/21/agile-thumb-200x216.png" class="mt-image-right" style="margin: 0pt 0pt 20px 20px; float: right;" height="216" width="200" /></span></div><div>From <a href="http://www.merriam-webster.com/dictionary/agile">the dictionary</a>:</div><div>- ability to move with quick easy grace</div><div>- having an adaptable character</div><div><br /></div><div>- synonyms: light-footed, nimble</div><div>- related words: flexible, limber, dexterous</div><div>- near antonyms: inflexible, stiff</div><div><br /></div><div>In my opinion, being agile is not the same as using a specific method, tool, or process, or following a specific philosophy. <br /><br />Agile does not equal <a href="http://en.wikipedia.org/wiki/Scrum_%28development%29">Scrum</a>, even if Scrum is an agile process.<br /><br />Agile software development is not defined by <a href="http://agilemanifesto.org/">the agile manifesto</a>, even if I agree with most of it.<br /><br />Getting more agile "simply" means to inspect more and be more able to adapt - or getting real feedback more often, and improving your ability to change and adjust.</div><div><br /></div><div>Enterprise agility is the ability to respond quickly to unfolding events or opportunities, according to David Anderson in the&nbsp;<a href="http://www.digite.com/about/events/webinar/david-anderson-webinar.html">webinar</a>&nbsp;Scaling Agile in the Enterprise with Kanban. &nbsp;Getting more agile in the enterprise involves, among other things, increasing trust and minimizing resistance to change (i.e., improvements).&nbsp;<br /><br /><font style="font-size: 0.8em;">(This blogpost is subject to updates...)</font><br /></div><div><br /></div> ]]>
        
    </content>
</entry>

<entry>
    <title>JavaScript Unit Testing with Hudson and JasmineBDD</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2010/10/javascript-unit-testing.html" />
    <id>tag:skaug.no,2010:/ingvald//2.91</id>

    <published>2010-10-18T18:29:14Z</published>
    <updated>2011-02-08T18:36:53Z</updated>

    <summary>Ingredients:JasmineBDD, a JavaScript BDD/ TDD framework The JUnitXmlReporter from Jasmine Reporters Envjs (embedded with the Jasmine Reporters download) Hudson Jenkins (continuous integration server) on a Linux slaveRecipe: let Hudson execute a (Java) shell command let Java run Envjslet Envjs run...</summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="SW dev" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="agile" label="agile" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="javascript" label="javascript" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="jenkins" label="jenkins" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="tdd" label="tdd" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[Ingredients:<br /><br /><ul><li><a href="http://pivotal.github.com/jasmine/">JasmineBDD</a>, a JavaScript BDD/ TDD framework <br /></li><li>The JUnitXmlReporter from <a href="http://github.com/larrymyers/jasmine-reporters">Jasmine Reporters</a> <br /></li><li><a href="http://www.envjs.com/">Envjs</a> (embedded with the Jasmine Reporters download) <br /></li><li><strike>Hudson</strike> <a href="http://jenkins-ci.org/">Jenkins </a>(continuous integration server) on a Linux slave<br /></li></ul><br />Recipe: <br /><br /><ul><li>let Hudson execute a (Java) shell command <br /></li><li>let Java run Envjs</li><li>let Envjs run a simple JavaScript which loads an HTML file (your JasmineBDD test runner)</li></ul>Voila!<br /><br />The Java command: <br /><code>java -cp lib/envjs/js.jar:lib/envjs/jline.jar org.mozilla.javascript.tools.shell.Main -opt -1 -f lib/envjs/envjs.bootstrap.js -f test.js</code><br />(The libs and the bootstrap file came with Envjs in the Jasmine Reporters download.)<br /><br />The test.js content:<br /><code>window.location = 'SpecRunner.html';</code><br />(I.e., opening the JasmineBDD spec runner.)<br /><br /><b>Simple Unit Testing Only</b><br /><br />So far, this only works for simple unit testing for me.&nbsp; F.ex., it won't play nice with prototype (which is really integration testing, but still).<code></code> <br /><br />It's probably got something to do with Envjs' limitations compared to a full web browser.<br /><br />But hey, headless automatic JavaScript unit testing ain't bad :)<br /><br /><b>Update:</b><br /><a href="http://twitter.com/ingesol/status/28061067414">@ingesol</a> got Hudson to run Jasmine using <a href="http://code.google.com/p/js-test-driver/">JsTestDriver</a> and <a href="http://github.com/ibolmo/jasmine-jstd-adapter">Jasmine JsTestDriver Adapter</a>.&nbsp; (See <a href="http://cjohansen.no/en/javascript/javascript_continuous_integration_with_hudson_and_jstestdriver">guide to Hudson and JSTD</a>.)<br /><br />It's not headless - requires running JSTD server and browsers, but it will handle prototype et al.<br /><b><br />Update 2:</b><br />Headless testing as described above is not only for simple unit testing - jQuery works fine, too.&nbsp; There's advantages to running a JsTestDriver server, especially catching browser quirks, but for much of the BDD/ TDD effect (testable code, design, executable requirements, etc) you can run headless testing continuously in Hudson without any "external help"...<br />&nbsp;<br />]]>
        
    </content>
</entry>

<entry>
    <title>Want to Try the Pomodoro Technique with Online Tools?</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2010/09/pomodoro.html" />
    <id>tag:skaug.no,2010:/ingvald//2.88</id>

    <published>2010-09-10T16:37:40Z</published>
    <updated>2010-10-17T01:52:45Z</updated>

    <summary><![CDATA[The Pomodoro Technique is a timeboxing method where you can use a timer to help you focus on only one thing for a short period of time, typically 25 minutes.You can also do this onscreen and online. &nbsp;A simple, interesting...]]></summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Tech" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="focus" label="focus" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="productivity" label="productivity" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="time" label="time" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[<a href="http://en.wikipedia.org/wiki/Pomodoro_Technique">The Pomodoro Technique</a> is a timeboxing method where you can use a timer to help you focus on only one thing for a short period of time, typically 25 minutes.<br /><br /><span class="mt-enclosure mt-enclosure-image"><img alt="http://commons.wikimedia.org/wiki/File:Il_pomodoro.jpg" title="http://commons.wikimedia.org/wiki/File:Il_pomodoro.jpg" src="http://skaug.no/ingvald/2010/09/20/pomodoro-thumb-200x200.jpg" class="mt-image-right" style="margin: 0pt 0pt 20px 20px; float: right;" width="200" height="200" /></span>You can also do this onscreen and online. &nbsp;A simple, interesting experiment is the&nbsp;<a href="http://www.tomato-timer.com/" style="text-decoration: underline; ">Tomato Timer</a>. &nbsp;<div><br /></div><div>For me, pomodoro works better if I keep my goal visible, too. &nbsp;You could do this by using the following web-based <a href="http://www.delicious.com/ingvald/pomodoro">tools</a>:<div><br /><ul><li><a href="http://www.google.com/chrome/">Google Chrome</a> - timer "platform"<br /></li><li>Chrome extension: <a href="https://chrome.google.com/extensions/detail/eldgpcphflnopbjadiaonofideekgdgm?hl=en">Frame two pages</a> - to keep both goal and timer visible<br /></li><li><a href="http://nowdothis.com/">NowDoThis.com</a> - very simple todo-list, letting you see one goal at a time<br /></li><li><a href="http://www.online-stopwatch.com/full-screen-stopwatch/">Online Stopwatch</a> or Tomato Timer&nbsp;as "the tomato"<br /></li></ul><div><br />Simple recipe:<br /><br /><ol><li>Open <i>NowDoThis </i>in a tab in Chrome</li><li>Open O<i>nline Stopwatch</i> or <i>Tomato Timer</i> in a new tab</li><li>click the <i>Frame two pages</i> extension button<br /></li><li>set the next to-do item to focus on</li><li>set the timer</li><li>go!</li></ol><br /></div></div></div><div style="display: none; " id="hiddenlpsubmitdiv"></div><script>try{for(var lastpass_iter=0; lastpass_iter < document.forms.length; lastpass_iter++){ var lastpass_f = document.forms[lastpass_iter]; if(typeof(lastpass_f.lpsubmitorig2)=="undefined"){ lastpass_f.lpsubmitorig2 = lastpass_f.submit; lastpass_f.submit = function(){ var form=this; var customEvent = document.createEvent("Event"); customEvent.initEvent("lpCustomEvent", true, true); var d = document.getElementById("hiddenlpsubmitdiv"); for(var i = 0; i < document.forms.length; i++){ if(document.forms[i]==form){ d.innerText=i; } } d.dispatchEvent(customEvent); form.lpsubmitorig2(); } } }}catch(e){}</script>]]>
        
    </content>
</entry>

<entry>
    <title>Kanban is Agile Jazz</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2010/06/kanban-agile-jazz.html" />
    <id>tag:skaug.no,2010:/ingvald//2.78</id>

    <published>2010-06-09T04:14:30Z</published>
    <updated>2011-02-07T00:00:05Z</updated>

    <summary>XP2010 had a banquet including a jazz keynote by a couple of seasoned, Norwegian jazz musicians, Jon Pål Inderberg (sax, vocals, body percussion) and Bjørn Alterhaug (double bass). They performed for us, and talked about improvisation and things like structure, freedom, trust, etc.  It was food for thought and a great experience.

I&apos;ve seen other metaphors for software development, such as gardening, cleaning a kitchen, making a film, technical debt, construction, and martial arts.  Last week I was inspired by the jazz keynote and by @agilemanager to think about musical performance as a metaphor. </summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Kanban" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="SW dev" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="agile" label="agile" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="slack" label="slack" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[<a href="http://www.xp2010.org/">XP2010</a> had a banquet including a jazz keynote by a couple of seasoned, Norwegian jazz musicians, Jon Pål Inderberg (sax, vocals, body percussion) and Bjørn Alterhaug (double bass). They performed for us, and <a href="http://hhgttg.de/blog/?p=85">talked about improvisation</a> and things like structure, freedom, trust, etc.&nbsp; It was food for thought and a great experience.<br /><br />I've seen other <a href="http://www.codinghorror.com/blog/2008/11/tending-your-software-garden.html">metaphors</a> for software development, such as <a href="http://www.artima.com/intv/gardenP.html">gardening</a>, <a href="http://www.hanoulle.be/2010/04/cleaning-a-kitchen-a-good-metaphor-for-refactoring/">cleaning a kitchen</a>, making a film, <a href="http://martinfowler.com/bliki/TechnicalDebt.html">technical debt</a>, <a href="http://www.lostechies.com/blogs/rodpaddock/archive/2010/04/15/film-making-a-better-software-development-metaphor.aspx"></a><a href="http://www.poppendieck.com/construction.htm">construction</a>, and <a href="http://c2.com/cgi/wiki?MartialArtsAsSoftwareDevelopmentMetaphor">martial arts</a>.&nbsp; Last week I was inspired by the jazz keynote and by <a href="http://twitter.com/agilemanager">@agilemanager</a> to think about musical performance as a metaphor. <br /><font style="font-size: 1.25em;"><br /></font><span class="mt-enclosure mt-enclosure-image"><a href="http://skaug.no/ingvald/2010/06/09/twitter-challenge.png"><img alt="twitter-challenge.png" src="http://skaug.no/ingvald/assets_c/2010/06/twitter-challenge-thumb-300x151.png" class="mt-image-right" style="margin: 0pt 0pt 20px 20px; float: right;" width="300" height="151" /></a></span><font style="font-size: 1.25em;">Plan, Flexibility</font><br /><br />What to play in a concert is decided in advance - for a classical concert well in advance, and in detail.&nbsp; A jazz band, however, often finalizes the playlist just before the concert, even modifying the playlist as the concert goes on.<br /><br />The plan for the performance of a single jazz tune is often subject to variation and "planned uncertainty". For example, the band knows where an improvisation part starts, and knows on what cue to move to the next part, but they don't know in advance what happens in between or how long the part is going to be.<br /><br /><span class="mt-enclosure mt-enclosure-image"><a href="http://skaug.no/ingvald/2010/06/09/twitter-agile-audience-s.png"><img alt="twitter-agile-audience-s.png" src="http://skaug.no/ingvald/2010/06/09/twitter-agile-audience-s-thumb-260x133.png" class="mt-image-left" style="margin: 0pt 20px 20px; float: left;" width="260" height="133" /></a></span>The adaptive nature of a jazz concert or a song enables an agile response to change. There is focus on flow towards delivering value to the customer (and each other), instead of doing a certain amount of ordered work. Circumstances can be taken into account, like the mood of the audience, interruptions, etc. <br /><br style="clear: both;" /><font style="font-size: 1.25em;">Errors, Learning</font><br /><br />Mistakes will be made.&nbsp; <br /><a href="http://skaug.no/ingvald/2010/06/09/twitter-google-fail-fast-s.png"><img alt="twitter-google-fail-fast-s.png" src="http://skaug.no/ingvald/2010/06/09/twitter-google-fail-fast-s-thumb-260x132.png" class="mt-image-right" style="margin: 0pt 20px 20px 0pt; float: right;" width="260" height="132" /></a><br />If you trust your fellow musicians and the structure permits it, you might even take greater risks, either gaining greater value or learning valuable lessons from failures.&nbsp; <br /><br />From the jazz keynote: Embracing Errors as a Source of Learning<font style="font-size: 1.25em;"><br /><br /><font style="font-size: 0.8em;">A successful jazz concert produces an amount of music that's never been played before, while a successfull classical concert should vary only in subtle interpretation details. F.ex., it was unusual for Miles Davis to practice with his band; he wanted to hear something new in each concert, and said to them that they were being paid to rehearse on stage.<br /><br />Whatever type of music, a good musician spends time learning her craft, both practicing by themself and doing music with others.</font><br /><br /><font style="font-size: 1em;">Collaboration, WIP Limits</font></font><br /><br />Have you noticed that during a drum improvisation the rest of the band dials back, sometimes all the way back?&nbsp; Some instruments playing less makes more room for others, there's imitation and learning from each other, and there's collaboration and conversation going on. <br /><br />Sometimes a composer (of any kind of music) or a jazz performer impose restrictions in order to foster creativity.&nbsp;&nbsp; Those limits can be rhythmical, tonal, or on any degree of freedom. (Cue "<a href="http://en.wikipedia.org/wiki/One_Note_Samba">One</a> <a href="http://www.last.fm/music/Al+Jarreau/_/One+Note+Samba">No</a><a href="http://www.youtube.com/watch?v=ErTmUsedA7M">te</a> <a href="http://www.youtube.com/watch?v=PbL9vr4Q2LU">Samba</a>"...)&nbsp; Such limits increase throughput of ideas, and give more room for important information that the composer or musician might want to accentuate.<br /><span class="mt-enclosure mt-enclosure-image"><a href="http://skaug.no/ingvald/2010/06/09/twitter-kanban-jazz-time.png"><img alt="twitter-kanban-jazz-time.png" src="http://skaug.no/ingvald/2010/06/09/twitter-kanban-jazz-time-thumb-300x142.png" class="mt-image-right" style="margin: 0pt 0pt 20px 20px; float: right;" width="300" height="142" /></a></span><br />Instead of everybody doing "their own thing", a jazz musician can be quiet, listen, and then contribute to what the others are doing.&nbsp; Slack, i.e., <a href="http://zenhabits.net/creative-habit/">doing nothing</a> and listening, makes room for others and opens you up for creativity.&nbsp; You can be ready and agile, and then contribute where the song is going.<br /><br /><font style="font-size: 1.25em;">Kanban is Agile Jazz</font><br /><br />Don't get me wrong: I love lots of classical music, and I think there's room for various agile tools in a software development toolbox. <br /><br />Kanban is one of the <a href="http://justaddwater.dk/2009/08/19/rup-vs-scrum-vs-kanban/">most adaptive tools</a>, however, with focus on flow, WIP limits, starting with the existing process and continuously improving step by step.<br /><br /><br /><span class="mt-enclosure mt-enclosure-image"><a href="http://skaug.no/ingvald/2010/06/09/twitter-scott-unique-thumb-300x161.png"><img alt="Thumbnail image for twitter-scott-unique.png" src="http://skaug.no/ingvald/assets_c/2010/06/twitter-scott-unique-thumb-300x161-thumb-300x161.png" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" width="300" height="161" /></a></span><br /><span class="mt-enclosure mt-enclosure-image"><a href="http://skaug.no/ingvald/2010/06/09/twitter-aslak-improvise.png"><img alt="twitter-aslak-improvise.png" src="http://skaug.no/ingvald/2010/06/09/twitter-aslak-improvise-thumb-300x142.png" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" width="300" height="142" /></a></span><br /><br /><span class="mt-enclosure mt-enclosure-image"><a href="http://skaug.no/ingvald/2010/06/09/twitter-answer.png"><img alt="twitter-answer.png" src="http://skaug.no/ingvald/2010/06/09/twitter-answer-thumb-300x109.png" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" width="300" height="109" /></a></span><br /><div><br /></div><div><br /></div>]]>
        
    </content>
</entry>

<entry>
    <title>Quality First Drives Behavior</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2010/03/toyotas-flawed-focus-on-quanti.html" />
    <id>tag:skaug.no,2010:/ingvald//2.76</id>

    <published>2010-03-11T20:42:18Z</published>
    <updated>2010-04-09T10:41:14Z</updated>

    <summary><![CDATA[If quality is first, it drives a certain set of behaviors.&nbsp; If market share is the goal, it drives a different set of behaviours... Even as Toyota was catching up to No.1, their reputation was slipping... (Emphasis mine)The parable of...]]></summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="Biz" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="quality" label="quality" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[If quality is first, it drives a certain set of behaviors.&nbsp; If market
share is the goal, it drives a different set of behaviours...<br />
<br />
Even as Toyota was catching up to No.1, their reputation was slipping...<br /><br />
(Emphasis mine)<br /><br /><blockquote cite="http://www.time.com/time/business/article/0,8599,1958991,00.html?xid=rss-business&amp;utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+time%2Fbusiness+%28TIME%3A+Top+Business+Stories%29">The parable of Toyota may be that the tortoise became the hare.&nbsp; Over decades, Toyota built its reputation and market share in <span style="font-weight: bold;">tiny increments</span> through its renowned "<span style="font-weight: bold;">continuous improvement</span>" method. In the Toyota mantra, <span style="font-weight: bold;">quality was always first</span>, because it led to lower costs, which would eventually lead to higher market share. Eventually. <br />
  <br />
But in the '90s, Toyota set out to become the world's top auto company. <span style="font-weight: bold;">Being the best and being the biggest created a tension</span>
that Toyota couldn't resolve, says MIT operations expert Steven Spear:
"If quality is first, it drives a certain set of behaviors. If market
share is the goal, it drives a different set of behaviors."&nbsp; <br />
.... <br />
the "Toyota way" ... was diluted by the demands of production. "Even in
the late '90s, people in Toyota would say, 'This is going to bite us in
the ass,' " says Spear. "They just didn't know when."<br />
  <br />
Now they do. .... Toyota will fix its manufacturing problem. <span style="font-weight: bold;">Restoring its reputation is going to take a lot longer.</span></blockquote><cite cite="http://www.time.com/time/business/article/0,8599,1958991,00.html?xid=rss-business&amp;utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+time%2Fbusiness+%28TIME%3A+Top+Business+Stories%29"><a href="http://www.time.com/time/business/article/0,8599,1958991,00.html">Toyota's Flawed Focus on Quantity Over Quality - TIME</a></cite> ]]>
        
    </content>
</entry>

<entry>
    <title>Lean: Development is not Manufacturing</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2010/02/lean-development-is-not-manufa.html" />
    <id>tag:skaug.no,2010:/ingvald//2.69</id>

    <published>2010-02-21T19:01:38Z</published>
    <updated>2010-04-09T10:52:59Z</updated>

    <summary>The Conclusions of lean manufacturing theories are not necessarily valid in the domain of (software) product development.There&apos;s good reasons why it&apos;s so difficult to fix time, budget, and feature scope all at once in a software development project.I&apos;ve been listening...</summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="SW dev" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="agile" label="agile" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="project" label="project" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="slack" label="slack" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[The Conclusions of <a href="http://en.wikipedia.org/wiki/Lean_manufacturing">lean manufacturing</a> theories are not necessarily valid in the domain of (<a href="http://en.wikipedia.org/wiki/Software_development">software</a>) <a href="http://en.wikipedia.org/wiki/Product_development">product development</a>.<br /><br />There's good reasons why it's so <a href="http://skaug.no/ingvald/2008/06/project-management-cake.html">difficult to fix time, budget, and feature scope all at once</a> in a software development project.<br /><br />I've been listening to <a href="http://www.infoq.com/presentations/2nd-gen-lean">a talk</a> by Don Reinertsen, and one of his points, although not the main point, is about variability:&nbsp; if you could reduce variability in the
workflow by 10%, or you could reduce capacity utilization by 10%, by
far you would prefer to reduce capacity utilization.&nbsp; That's where the
economic payoff is.<br />
<br />The reason is that increased capacity utilization
increases queue size and lead time exponentially.&nbsp; In other words, if you try to
keep all your resources busy all the time, everything takes forever to
finish.&nbsp; This goes for both manufacturing and development.&nbsp; Variability in workflow, however, is bad in manufacturing, but can't be avoided in product development, and might even be exploited.&nbsp; <br /><br />So what else is different about development compared to manufacturing?<br /><br /><table cellpadding="5" cellspacing="5">
<tbody><tr>
<td></td>
<th>Manufacturing</th>
<th>Development</th>
</tr>

<tr><td>&nbsp;</td></tr>

<tr>
<td>Tasks are....</td>
<td>repetitive</td>
<td>non-repetitive</td>
</tr>

<tr>
<td>Tasks are... 
</td><td>
predictable
</td><td>
unpredictable</td>
</tr>

<tr>
<td>Requirements are...
</td><td>
a constraint
</td><td>
a degree of freedom</td>
</tr>

<tr><td>&nbsp;</td></tr>

<tr>
<td>Requirements are...
</td><td>
fixed
</td><td>
evolving</td>
</tr>

<tr>
<td>Cost of delay is...
</td><td>
homogeneous
</td><td>
non-homogeneous</td>
</tr>

<tr>
<td>Task durations are...&nbsp;
</td><td>
homogeneous
</td><td>
non-homogeneous</td>
</tr>

<tr><td>&nbsp;</td></tr>

<tr>
<td>Variability is...
</td><td>
always waste
</td><td>
not always waste</td>
</tr>

<tr>
<td>Inventory is...
</td><td>
physical objects&nbsp;
</td><td>
information</td>
</tr>

<tr>
<td>Inventory is...
</td><td>
visible
</td><td>
invisible</td>
</tr>

</tbody></table>

<br />Source: <br />A talk by Don Reinertsen, <br /><a href="http://www.infoq.com/presentations/2nd-gen-lean">Second Generation Lean Product Development: From Cargo Cult to Science</a><br /><br />]]>
        
    </content>
</entry>

<entry>
    <title>the purpose of education should be to make us more effective at life</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2010/01/the-purpose-of-education-shoul.html" />
    <id>tag:skaug.no,2010:/ingvald//2.67</id>

    <published>2010-01-03T17:15:39Z</published>
    <updated>2010-01-03T17:30:45Z</updated>

    <summary> The time has come to stop quietly accepting the mistaken - yet popular - notion that education is primarly about getting jobs. The purpose of education is to make us better at using the collective knowledge of the human...</summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="children" label="children" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="computer" label="computer" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="learning" label="learning" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="skills" label="skills" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[ <blockquote cite="http://www.williamcaputo.com/archives/000300.html">The time has come to stop quietly accepting the mistaken - yet popular - notion that education is primarly about getting jobs. The purpose of education is to make us better at using the collective knowledge of the human race in all areas of life. Yes, this includes our jobs, but it also includes raising our children, being informed citizens, managing our households, enjoying our leisure time, and just being good neighbors. Education should be to make us more effective at life. And as a powerful, new and poorly understood technology, computer education should be central to our learning experience
<br />....
<br />*Everyone* needs to learn the fundamentals [of how to use computer technology], right in the core curriculum along with math, science, reading and history.
</blockquote><cite cite="http://www.williamcaputo.com/archives/000300.html"><a href="http://www.williamcaputo.com/archives/000300.html">Thoughts On ...: Teaching Magic</a>
</cite>
<br /><br />Jakob Nielsen, too, advocates teaching <a href="http://skaug.no/ingvald/2007/02/lifelong-computer-skills.html">life-long computer skills</a>, like search strategies and basic debugging.<br />]]>
        
    </content>
</entry>

<entry>
    <title>agile adoption fails in a &quot;fixed project situation&quot;</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2009/11/why-agile-adoption-fails.html" />
    <id>tag:skaug.no,2009:/ingvald//2.60</id>

    <published>2009-11-13T21:42:30Z</published>
    <updated>2010-06-14T20:24:10Z</updated>

    <summary>i saw an interesting article on infoq.com.the term &quot;fixed bid&quot; is used in the article, but this article applies to another &quot;fixed project situation&quot;, too, i.e., where the resources are fixed, and there&apos;s a specified, promised feature scope and a...</summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="SW dev" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="agile" label="agile" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="project" label="project" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[<a href="http://www.infoq.com/articles/failed-agile-adoption-reasons">i saw an interesting article on infoq.com.</a><br /><br />the term "fixed bid" is used in the article, but this article applies to another "<b>fixed project situation</b>", too, i.e., where the resources are fixed, and there's a specified, promised feature scope and a specified, promised delivery date.&nbsp; <br /><br /><a href="http://skaug.no/ingvald/2008/06/project-management-cake.html">(btw, it isn't really possible to control all of resources, delivery date, and scope and quality of features at the same time...)</a><br /><br /><blockquote><p>In an agile software team you don't estimate your work till right
before you begin. And you only estimate, in the case of Scrum, the next
iterations work. <b>So how do you know how long it will take? You don't.
Furthermore, you really don't care.</b> You'll continue to deliver
functionality every iteration. As soon as product management and QA say
you have a good enough product; it'll be released as a production
version. You might have a guess, but until the team estimates it....you
really don't know long it will take.</p>
In a fixed bid situation....your estimation needs to take place up front.<br />....<br />In the 2<sup>nd</sup> scenario, if I told the team, ... “we're using Scrum”: they'd estimate the work
the next iteration. They would assume their estimates would be taken
seriously and you'd give them time to complete the work as it unfolds
regardless of whether their estimates fit your original project funding
or not. That's only fair.<br /></blockquote>alternatively: they would assume they'd get the "time to complete the work with high quality regardless of whether their updated estimates fit your original project plan and delivery date or not".<br /><br /><blockquote>[this leads to failure]....at managing the project and therefore.......”this agile thing doesn't work”.<br /><br />The mistake was to assume the company's leadership ... was
organizationally committed to ... agile principles. The mere fact
that they are asking you to estimate the funding you'll need to
complete the project tells us otherwise.<br /></blockquote>alternatively: the fact that they are asking you to commit to a fixed feature set and a fixed delivery date tells us otherwise.&nbsp; <br /><br />this isn't bad, per se, it just isn't agile.<br /><br /><blockquote>[the real problem]<br /><ul><li><b>Agile is </b><b>often assumed ... to be a development process with no impact on budgeting</b>. This is not the case.</li><li>Development teams assume leadership understands the implications of adopting agile at the budgetary level.</li></ul>Developers and development teams often have zero visibility into
budgeting so they are unaware of how their agile efforts are being
accounted for in monetary terms. .... Likewise, management is often ignorant of
development and specifically agile development practices. Agile
adoption requires education to ease the clash and misunderstanding of
these two worlds.<br /><br />So what are some of the consequences of attempting to adopt <b>agile
practices on a fixed bid project</b>...essentially laying an <b>agile façade
over the waterfall project</b>?<br /><br />....<br />Agile does away with the need for a project manager. .... organizing and managing the development effort are more centered on
technical leadership, task and risk management. Timelines and budgets
go out the door.<br />....<br />if you're in a non-agile situation ... then traditional PM practices are ... essential<br /><br />....<br /><b>Doing iteration planning in a fixed bid situation will almost certainly
result in confusion, budget variances, and/or loss of functionality.</b><br />....<br /><p>In fixed bid scenarios the question is not ... <b>how much
functionality the team is doing per time period</b>. It <b>really doesn't
matter. They need to get all the functionality done </b>...<b><br />
</b></p>

<p>So using ... iterations in a fixed bid project sends the wrong signal to the team and your customers.</p>
</blockquote><b>using iterations in a fixed project situation sends the wrong signal to the team.</b><br /><br />you can still visualize workflow, f.ex. with kanban, reduce work in process, do stand up meetings (very short, impediments only), etc.<br /><br />but in general you should try to get out of a fixed project situation before trying to go agile.<br /><br />Edit: About that last part... I think there's a few basic, agile tools you can utilize whatever you're doing: visualize how you work; get faster feedback; limit the amount of work in progress.<br />]]>
        
    </content>
</entry>

<entry>
    <title>multitasking</title>
    <link rel="alternate" type="text/html" href="http://skaug.no/ingvald/2009/10/multitasking.html" />
    <id>tag:skaug.no,2009:/ingvald//2.56</id>

    <published>2009-10-14T16:00:17Z</published>
    <updated>2009-11-14T00:26:55Z</updated>

    <summary>try the multitasking game..&quot;Use this game to study the effects of multitasking on productivity and cycle times.&quot;The Multitasking Maze, ProChain Solutions (the point: multitasking is bad for you...)...</summary>
    <author>
        <name>Ingvald</name>
        <uri>http://skaug.no/ingvald/</uri>
    </author>
    
        <category term="Biz" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="EN" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="SW dev" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="agile" label="agile" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="flow" label="flow" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="focus" label="focus" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="productivity" label="productivity" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://skaug.no/ingvald/">
        <![CDATA[try <a href="http://billiondollarsolution.com/multitasking.html">the multitasking game</a>..<br /><blockquote>"Use this game to study the effects of multitasking on productivity and cycle times."<br />The Multitasking Maze, ProChain Solutions<br /><br /></blockquote>
(the point: multitasking is bad for you...)]]>
        
    </content>
</entry>

</feed>

