<?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>Endlessly Curious &#187; Tasks</title>
	<atom:link href="http://www.endlesslycurious.com/tag/tasks/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.endlesslycurious.com</link>
	<description>Programming, Productivity &#38; Software Development.</description>
	<lastBuildDate>Mon, 09 Jan 2012 09:00:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Journaling @ Work</title>
		<link>http://www.endlesslycurious.com/2010/05/25/journaling-at-work/</link>
		<comments>http://www.endlesslycurious.com/2010/05/25/journaling-at-work/#comments</comments>
		<pubDate>Tue, 25 May 2010 09:00:21 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Productivity]]></category>
		<category><![CDATA[Organisation]]></category>
		<category><![CDATA[Tasks]]></category>

		<guid isPermaLink="false">http://www.endlesslycurious.com/?p=1395</guid>
		<description><![CDATA[Over the years at work I have tried various solutions to task management: the mental to-do list, the simple paper notebook, the electronic PDA or Smartphone, to-do software or combinations of the above.  I have until recently not found a solution that lets me list my tasks and record what I actually do each day. [...]]]></description>
			<content:encoded><![CDATA[<p>Over the years at work I have tried various solutions to task management: the mental to-do list, the simple paper notebook, the electronic PDA or Smartphone, to-do software or combinations of the above.  I have until recently not found a solution that lets me list my tasks and record what I actually do each day.</p>
<p>My solution is the humble <a title="MoleSkine" href="http://www.moleskine.com/catalogue/diariesplanners/12_month_weekly_notebook/">Moleskine Weekly Notebook</a> (below).  As the name suggests the weekly notebook is a cunning combination of weekly diary (on the left page) and notebook (on the right page).  This allows me to write my to-do list for the week on the notebook page and record what I do each day on the appropriate section of the diary page.</p>
<p style="text-align: left;"><a href="http://www.endlesslycurious.com/wp-content/uploads/2010/05/MoleskineWeeklyNotebook.jpg"><img class="size-medium wp-image-1447 aligncenter" title="Moleskine Weekly Notebook" src="http://www.endlesslycurious.com/wp-content/uploads/2010/05/MoleskineWeeklyNotebook-300x275.jpg" alt="" width="300" height="275" /></a>Having my work log and to-do list in the same physical entity has been a real break-through for me as it means I can track my progress towards my objectives and be able to account for where my time is spent each day.  This has allowed me to analyse my working patterns and evaluate what is taking up time that could be better spent working on the tasks in my to-do list.  Being able to record unexpected events that have taken up time e.g. build breaks or sickness has also proven very useful.</p>
<p style="text-align: left;">What I don&#8217;t use this notebook for is an actual appointment diary or strategic to-do list as I have found through experimentation that there is seldom sufficient space for such things.  I have <a title="Microsoft" href="http://office.microsoft.com/en-us/outlook/">Microsoft Outlook</a> which does appointment and calendar management and <a title="EverNote" href="http://www.evernote.com/">Evernote</a> which does high level strategic tasks lists and note gathering.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.endlesslycurious.com/2010/05/25/journaling-at-work/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Challenged to grow</title>
		<link>http://www.endlesslycurious.com/2009/03/18/challenged-to-grow/</link>
		<comments>http://www.endlesslycurious.com/2009/03/18/challenged-to-grow/#comments</comments>
		<pubDate>Wed, 18 Mar 2009 09:00:34 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Tasks]]></category>

		<guid isPermaLink="false">http://www.endlesslycurious.com/?p=1165</guid>
		<description><![CDATA[I have come to the realisation that the most experienced person in a group is not usually the person getting the most benefit in terms of skills or experience gained when working on a collaborative project.  In fact the more experienced the individual the less benefit they stand to gain, the inverse is true of [...]]]></description>
			<content:encoded><![CDATA[<p>I have come to the realisation that the most experienced person in a group is not usually the person getting the most benefit in terms of skills or experience gained when working on a collaborative project.  In fact the more experienced the individual the less benefit they stand to gain, the inverse is true of the less experienced individuals who due to their low levels of experience have the most to gain.</p>
<p>This balance can be seen in most projects involving more than a couple of participants.  A team&#8217;s experience distribution can typically be visualised as a pyramid with the most experienced individuals at the top of the pyramid and the most numerous and least experienced group of individuals at the bottom.  There is the occasional team where the experience pyramid is inverted but I have yet to have the opportunity to work with such a group.</p>
<p>The experience composition of a typical team usually works quite well, with the more experienced members directing those that are less experienced than them.  This helps to explain why the more experienced you become the more time you seem to spend in meetings planning, discussing and thinking about the design of the product.</p>
<p>The breakdown of the project tasks based on individual experience levels also means that each individual should be supplied with tasks that are mostly within their capabilities.  Some stretch tasks should also be set (with sufficient support from more experienced team members) to ensure each individual continues to develop their skills.  This should mean that the tasks you work on should be within your capabilities and as your capabilities increase so should the complexity of the tasks you are set, to prevent stagnation.</p>
<p>It should be noted that if an individual fails at a task then their next task should be something that is well within their capabilities. To do otherwise is to risk a loss of confidence, as multiple failures in a row can seriously undermine an individual&#8217;s confidence and ability (see <a title="Wikipedia" href="http://en.wikipedia.org/wiki/Reinforcement">negative reinforcement</a>).  This is why most modern coaches will not allow their athletes to finish a training session with a failure.</p>
<p>Tasks that stretch or challenge you as an individual are a good thing but they should not be forced upon you and they should not be chained together, some respite is required between challenges.  More experienced team members are an essential resource to those undertaking stretch tasks due to the advice and moral support they can offer.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.endlesslycurious.com/2009/03/18/challenged-to-grow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What done looks like for tasks.</title>
		<link>http://www.endlesslycurious.com/2008/10/27/what-done-looks-like-for-tasks/</link>
		<comments>http://www.endlesslycurious.com/2008/10/27/what-done-looks-like-for-tasks/#comments</comments>
		<pubDate>Mon, 27 Oct 2008 09:00:14 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Productivity]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tasks]]></category>

		<guid isPermaLink="false">http://www.endlesslycurious.com/?p=538</guid>
		<description><![CDATA[Knowing what is required to complete a programming task can be a black art, unless some thought is used.  This can be observed by how frequently engineers complete 90% of a task to only then spend a further significant period of time finishing the last elusive 10% of the task.  In the worst cases that [...]]]></description>
			<content:encoded><![CDATA[<p>Knowing what is required to complete a programming task can be a black art, unless some thought is used.  This can be observed by how frequently engineers complete 90% of a task to only then spend a further significant period of time finishing the last elusive 10% of the task.  In the worst cases that final 10% can account for 90% of the duration of the task, which takes the task duration way over the initial estimate.</p>
<p>I think a lot of this underestimation of task length comes down to engineers not having an idea of what being done looks like for the task they are attempting.  Here is some guidelines I use, note that implementation does not take up a lot of space: the list is mostly focused on what is required before and after implementation.  These guidelines are not perfect and I sometimes forget or skip some points depending on the scale of the task:</p>
<ul>
<li><strong>Design </strong>
<ul>
<li>Is the <a href="http://en.wikipedia.org/wiki/User_story">User Story</a> (or requirements) accurate?</li>
<li>Has a brief design been created in some form e.g. notebook, whiteboard or electronically with at least:
<ul>
<li>The User story (or requirements), a sentence or two.</li>
<li>Solution summary, a paragraph or two.</li>
<li>A sketch of the solution.</li>
<li>Technical notes, if required.</li>
</ul>
</li>
<li>Has the design been peer reviewed, <a href="http://www.endlesslycurious.com/2008/09/04/the-cost-of-bug-fixing/">remember</a> its cheapest to fix bugs at the requirements and design phase.</li>
</ul>
</li>
<li><strong>Planning </strong>
<ul>
<li>Initial task estimation.</li>
<li>Break the task down into sub-tasks (if required).</li>
<li>Estimate duration for each sub-task.</li>
<li>Scheduling.</li>
</ul>
</li>
<li><strong>Implementation </strong>
<ul>
<li>Have all the sub tasks or features been completed.</li>
<li>Has any duplication that has been generated been refactored?</li>
</ul>
</li>
<li><strong>Testing </strong>
<ul>
<li>Have unit tests been added or updated for the new feature.</li>
<li>Has the executing program code been walked through in a debugger?</li>
<li>Has the end user reviewed the finished feature?</li>
</ul>
</li>
<li><strong>Review </strong>
<ul>
<li>Has every file that is about to be checked in been compared to its previous version with a difference tool to confirm the changes to the file are the changes that are required.</li>
<li>Has the code been <a href="http://en.wikipedia.org/wiki/Code_review">code reviewed</a> by a peer.</li>
<li>Has the code been analysed with:
<ul>
<li>Static analysis tools e.g, <a href="http://www.gimpel.com/html/lintinfo.htm">PC Lint</a> for C++.</li>
<li>Dynamic program analysis tools e.g, <a href="http://en.wikipedia.org/wiki/Performance_analysis">Code Profiling</a>.</li>
</ul>
</li>
</ul>
</li>
<li><strong>Check in </strong>
<ul>
<li>Remove any unchanged files from the change list.</li>
<li>Remove any temporary hacks from the change list e.g, for configuration or testing purposes.</li>
<li>Check that all files that need to be added/removed from source control are included.</li>
<li>If possible confirm the code builds on a separate test computer before checking in, to make sure no files are missing.</li>
</ul>
</li>
</ul>
<p>I&#8217;m still pondering &#8216;What done looks like&#8217; so I&#8217;ll probably revisit and revise this list at some point in the future, as I&#8217;d really like to develop a simple check list I can use to educate more junior engineers.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.endlesslycurious.com/2008/10/27/what-done-looks-like-for-tasks/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

