<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: How I work with code</title>
	<atom:link href="http://www.morkeleb.com/2009/09/08/how-i-work-with-code/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.morkeleb.com/2009/09/08/how-i-work-with-code/</link>
	<description>Simple design for advanced constructions</description>
	<lastBuildDate>Mon, 06 Feb 2012 03:50:10 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Building Blocks &#187; Test-list</title>
		<link>http://www.morkeleb.com/2009/09/08/how-i-work-with-code/comment-page-1/#comment-290</link>
		<dc:creator>Building Blocks &#187; Test-list</dc:creator>
		<pubDate>Mon, 07 Dec 2009 09:16:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.morkeleb.com/?p=594#comment-290</guid>
		<description>[...] thing. Some might remember my how I work with code, where you keep a list of issues you figure out as you work with the [...]</description>
		<content:encoded><![CDATA[<p>[...] thing. Some might remember my how I work with code, where you keep a list of issues you figure out as you work with the [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Building Blocks &#187; Getting things done with teams</title>
		<link>http://www.morkeleb.com/2009/09/08/how-i-work-with-code/comment-page-1/#comment-221</link>
		<dc:creator>Building Blocks &#187; Getting things done with teams</dc:creator>
		<pubDate>Sat, 24 Oct 2009 20:15:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.morkeleb.com/?p=594#comment-221</guid>
		<description>[...] this concept of quickly creating new tasks and with the GTD and How I work with code ideas. An idea for a new tool popped up in my [...]</description>
		<content:encoded><![CDATA[<p>[...] this concept of quickly creating new tasks and with the GTD and How I work with code ideas. An idea for a new tool popped up in my [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Building Blocks &#187; How I work with code the unit test part</title>
		<link>http://www.morkeleb.com/2009/09/08/how-i-work-with-code/comment-page-1/#comment-176</link>
		<dc:creator>Building Blocks &#187; How I work with code the unit test part</dc:creator>
		<pubDate>Thu, 10 Sep 2009 17:17:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.morkeleb.com/?p=594#comment-176</guid>
		<description>[...] wrote a blog post about how I work with code. The basic idea is that I record actions that I need to take as I work with the code in a format [...]</description>
		<content:encoded><![CDATA[<p>[...] wrote a blog post about how I work with code. The basic idea is that I record actions that I need to take as I work with the code in a format [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: admin</title>
		<link>http://www.morkeleb.com/2009/09/08/how-i-work-with-code/comment-page-1/#comment-173</link>
		<dc:creator>admin</dc:creator>
		<pubDate>Wed, 09 Sep 2009 07:24:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.morkeleb.com/?p=594#comment-173</guid>
		<description>The core benefit here is ofcouse focus for the developer.</description>
		<content:encoded><![CDATA[<p>The core benefit here is ofcouse focus for the developer.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: admin</title>
		<link>http://www.morkeleb.com/2009/09/08/how-i-work-with-code/comment-page-1/#comment-172</link>
		<dc:creator>admin</dc:creator>
		<pubDate>Wed, 09 Sep 2009 07:23:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.morkeleb.com/?p=594#comment-172</guid>
		<description>As described in Getting Things Done, you often get new ideas as your current idea is reflected back to you. Tracking these ideas, you can build on them and produce new ones. Now if you have to solve a specific task, you can finish that task, but still have a set of ideas or new knowledge about the design or even in the case of Lean software development need to stop the line.

Now the purpose of &quot;keeping track of issues&quot;, or incidents if that is better word, is to quickly finish the task so it can be tested and accessed by others relying on it. Most of these incidents are thrown out, and not kept track of. Or solved at within two minutes after the original task is solved. These are not issues on the user scale but questions raised during the development.

Once you have a working skeleton at place you can go back and fix &quot;the issues&quot; that are clearly visible to all. And especially those that were missed during automated testing. But also get new ideas, that might be better solutions to the given problem. &quot;Ugly code in need of refactoring&quot; is subjective, and should be handled with care. Not refactored on the fly, in a Lean pespective, &quot;Ugly code in need of refactoring&quot; requires a stop the line, in order to raise the issue. The line stop might infact result in the response that it is not changed, since noone has a better idea at the time.

Automated tests assist in refactoring. They do not prevent you from the need of refactoring, nor do they automatically imply good design. Automated tests are not a silverbullt for building quality software.</description>
		<content:encoded><![CDATA[<p>As described in Getting Things Done, you often get new ideas as your current idea is reflected back to you. Tracking these ideas, you can build on them and produce new ones. Now if you have to solve a specific task, you can finish that task, but still have a set of ideas or new knowledge about the design or even in the case of Lean software development need to stop the line.</p>
<p>Now the purpose of &#8220;keeping track of issues&#8221;, or incidents if that is better word, is to quickly finish the task so it can be tested and accessed by others relying on it. Most of these incidents are thrown out, and not kept track of. Or solved at within two minutes after the original task is solved. These are not issues on the user scale but questions raised during the development.</p>
<p>Once you have a working skeleton at place you can go back and fix &#8220;the issues&#8221; that are clearly visible to all. And especially those that were missed during automated testing. But also get new ideas, that might be better solutions to the given problem. &#8220;Ugly code in need of refactoring&#8221; is subjective, and should be handled with care. Not refactored on the fly, in a Lean pespective, &#8220;Ugly code in need of refactoring&#8221; requires a stop the line, in order to raise the issue. The line stop might infact result in the response that it is not changed, since noone has a better idea at the time.</p>
<p>Automated tests assist in refactoring. They do not prevent you from the need of refactoring, nor do they automatically imply good design. Automated tests are not a silverbullt for building quality software.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: anna forss</title>
		<link>http://www.morkeleb.com/2009/09/08/how-i-work-with-code/comment-page-1/#comment-171</link>
		<dc:creator>anna forss</dc:creator>
		<pubDate>Wed, 09 Sep 2009 06:19:40 +0000</pubDate>
		<guid isPermaLink="false">http://www.morkeleb.com/?p=594#comment-171</guid>
		<description>One of the purposes of automatically tested code should be that this shouldn&#039;t be an issue. But I agree in principle with the statement that a issue should be raised and reported. But this should really be done independent of the task being completed at that time. By raising the issue you can discuss the reason for the problem arising in the first place with the team and you can better keep track of how time is spent. By the latter I don&#039;t mean that you should count minutes, but more get an overview of which tasks has been addressed.

But then we come to the question of fixing or not fixing. Having become even more of a believer in Lean Software Development I cannot help becoming troubled of the idea of keeping track of bugs and problems instead of fixing them. Keeping problems on a queue is not preventing the same type of problem arising again and again. 

Yes, you should differ between bugs and &quot;ugly code in need of refactoring&quot; but unreadable code can also be seen as a risk and an impediment for improvement. Well worth discussing, though, and that is perhaps the most important challenge for a team. Knowing how to handle this question.</description>
		<content:encoded><![CDATA[<p>One of the purposes of automatically tested code should be that this shouldn&#8217;t be an issue. But I agree in principle with the statement that a issue should be raised and reported. But this should really be done independent of the task being completed at that time. By raising the issue you can discuss the reason for the problem arising in the first place with the team and you can better keep track of how time is spent. By the latter I don&#8217;t mean that you should count minutes, but more get an overview of which tasks has been addressed.</p>
<p>But then we come to the question of fixing or not fixing. Having become even more of a believer in Lean Software Development I cannot help becoming troubled of the idea of keeping track of bugs and problems instead of fixing them. Keeping problems on a queue is not preventing the same type of problem arising again and again. </p>
<p>Yes, you should differ between bugs and &#8220;ugly code in need of refactoring&#8221; but unreadable code can also be seen as a risk and an impediment for improvement. Well worth discussing, though, and that is perhaps the most important challenge for a team. Knowing how to handle this question.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

