<?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>Photoquarium Blog &#187; Lucus Crawford</title>
	<atom:link href="http://blog.photoquarium.com/author/admin/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.photoquarium.com</link>
	<description>A bit of everything and anything that I find interesting</description>
	<lastBuildDate>Fri, 06 Feb 2009 18:37:52 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Agilility where order and chaos meet.</title>
		<link>http://blog.photoquarium.com/2009/02/06/agilility-where-order-and-chaos-meet/</link>
		<comments>http://blog.photoquarium.com/2009/02/06/agilility-where-order-and-chaos-meet/#comments</comments>
		<pubDate>Fri, 06 Feb 2009 18:37:52 +0000</pubDate>
		<dc:creator>Lucus Crawford</dc:creator>
				<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[adaptation]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[complexity science]]></category>
		<category><![CDATA[game theory]]></category>

		<guid isPermaLink="false">http://blog.photoquarium.com/2009/02/06/agilility-where-order-and-chaos-meet/</guid>
		<description><![CDATA[Awesome, Aw &#8230; wait for it &#8230; wait for it &#8230;. SOME
I don&#8217;t think I could do justice to this post by summarizing it so I won&#8217;t.
If you have a few minutes to read this post I really encourage you to do so. Also post your comments here about the article, I would love to [...]]]></description>
			<content:encoded><![CDATA[<p>Awesome, Aw &#8230; wait for it &#8230; wait for it &#8230;. SOME</p>
<p>I don&#8217;t think I could do justice to this post by summarizing it so I won&#8217;t.</p>
<p>If you have a few minutes to read this post I really encourage you to do so. Also post your comments here about the article, I would love to hear everyones take on this.</p>
<p>I&#8217;m off to read a bit on &#8220;complex adaptive systems theory&#8221; and &#8220;Evolutionary Stable Strategies&#8221;.</p>
<p><a href="http://www.noop.nl/2009/02/the-decline-and-fall-of-agilists.html">http://www.noop.nl/2009/02/the-decline-and-fall-of-agilists.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.photoquarium.com/2009/02/06/agilility-where-order-and-chaos-meet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Good Developers and Technical Debt</title>
		<link>http://blog.photoquarium.com/2009/01/12/good-developers-and-technical-debt/</link>
		<comments>http://blog.photoquarium.com/2009/01/12/good-developers-and-technical-debt/#comments</comments>
		<pubDate>Mon, 12 Jan 2009 22:51:39 +0000</pubDate>
		<dc:creator>Lucus Crawford</dc:creator>
				<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[craptastic]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[legacy code]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[Technical Debt]]></category>

		<guid isPermaLink="false">http://blog.photoquarium.com/2009/01/12/good-developers-and-technical-debt/</guid>
		<description><![CDATA[
During one of my many discussions with James, he brought up the question &#8220;What makes a good developer?&#8221; I didn&#8217;t have any really good answers but, as most things, someone else had encountered a similar question that has given me a bit of insight. Davey Brion wrote a post on his blog ElegantCode on Ethics [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/84296325@N00/262096844/" target="_blank" title="Good Developers?"><img src="http://farm4.static.flickr.com/3241/3023355393_a7e5b6322b.jpg?v=0" style="BORDER-RIGHT: 10px; BORDER-TOP: 10px; DISPLAY: inline; FLOAT: right; MARGIN-LEFT: auto; BORDER-LEFT: 10px; WIDTH: 254px; MARGIN-RIGHT: auto; BORDER-BOTTOM: 10px; HEIGHT: 173px" height="240" width="180" alt="What could I read tonight?" border="0" class="alignleft"/></a></p>
<p>During one of my many discussions with James, he brought up the question &#8220;What makes a good developer?&#8221; I didn&#8217;t have any really good answers but, as most things, someone else had encountered a similar question that has given me a bit of insight. Davey Brion wrote a post on his blog <a href="http://elegantcode.com/">ElegantCode</a> on <a href="http://elegantcode.com/2009/01/11/ethics-in-software-development-pragmatism-over-dogmatism">Ethics In Software Development:Pragmatism Over Dogmatism</a> where he describes what he thinks is the primary goal of a developer and how writing crappy code (or maintainingcrappy code over fixing it) is counterintuitive to the goals of a developer.</p>
<blockquote><h4><em><em>A software developer&#8217;s primary goal should be to create value for the users of a system. Value can mean a lot of things here. First and foremost, it should be about things that users actually experience. Features, ease of use, performance, etc. You can get all of those with crappy code, but that leads to a situation where you won&#8217;t be able to sustain that value in the long term. A system can be very useful to its users, but if the code is in such bad shape that it can&#8217;t easily be maintained and extended with new features over time, the value of the system will slowly reduce. New features will introduce new bugs. Bug fixes will introduce new bugs. Eventually, the system starts to collapse under its own rot and the dreaded rewrite commences. Nobody really wants this, do they? If you write good, clean code from the beginning, you can usually avoid these problems.</em></em></h4>
</blockquote>
<p> <span id="more-22"></span>
<p>This is a great standard to develop by and a great answer to Jame&#8217;s question. If we create good code that is clean and easily maintainable the system will not only satisfy our users but also our bosses. The users will have that system that is fast, user friendly and issues can be dealt with quickly and confidently, while the bosses will like the fact that it is not a land mine of issues that always have to be circumvented whenever something needs to be fixed and you won&#8217;t cringe every time you have to step into the code base to fix something. Good clean code is a great measurement of a good developer but how is it ultimately measured? I will leave that question for you guys to help answer in the comments.</p>
<p>But how do we keep the code base clean and maintainable, every issues potential fix has risk to be weighted and sometimes &#8220;fixing it the right way&#8221; has to much potential of breaking other stuff so you opt for the simpler &#8220;hacky&#8221; solution. This hacky solution is not wrong it is just what needed to be done at the moment to alleviate the risk. But you have to be discipline enough to fix it when the time permits, maybe during your next iteration or release cycle. You should be adding a case to your bug tracking software right away on the correct fix so it can be put into your backlog and at least it is visible and can be prioritized accordingly. If you don&#8217;t have this visibility I will guarantee you that the right fix will be lost and never implemented and you will eventually end up with crappy code.</p>
<p>As you can see having crappy code and leaving it will just keep the technical debt rising and eventually the system will become of no value to the customer/user since any change or bug that needs to be implemented has more potential of harm then good. So how do we fix this application that is already in such a craptastic state? I would suggest that we take a parallel road that we did to get it here in the first place. Slow and steady.</p>
<p>As in my other article <a href="http://blog.int.pason.com/?p=162">Fix it or rewrite it</a>, I would not go suggest rewriting the whole application. Instead we should take a slow road that will chip away at all the technical debt we have incurred by being undisciplined. There might have to be some big leaps in the code, and also some that may not be visible to the customer but eventually everything will be visible since they will get a better product and better support.</p>
<p>I hope you have caught on that I believe a good developer is a discipline developer, I don&#8217;t think that you can say a good developer always fixes or codes something &#8220;the right way&#8221;, since each situation is unique and &#8220;the right way&#8221; changes all the time. I would say a good developer does the job that needs to be done but has the discipline to know when a solution is just a stop gap and makes it visible enough that the correct solution can be implemented when time and resources permit. Also a good developer should never allow the application they are working on get to that craptastic state they should always bring the technical debt to the surface and making it visible and helping improve the application are working on. Even if it isn&#8217;t something that they haven&#8217;t done themselves. Ok enough of my preaching.</p>
<p>ps. That cute kid is <a href="http://www.flickr.com/photos/jbirchall/">James Birchall&#8217;s</a> son from his flickr account.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.photoquarium.com/2009/01/12/good-developers-and-technical-debt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fix it or rewrite it &#8230; That is the question!</title>
		<link>http://blog.photoquarium.com/2009/01/09/fix-it-or-rewrite-it-that-is-the-question/</link>
		<comments>http://blog.photoquarium.com/2009/01/09/fix-it-or-rewrite-it-that-is-the-question/#comments</comments>
		<pubDate>Fri, 09 Jan 2009 20:40:59 +0000</pubDate>
		<dc:creator>Lucus Crawford</dc:creator>
				<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[green field]]></category>
		<category><![CDATA[legacy code]]></category>
		<category><![CDATA[maintenance]]></category>

		<guid isPermaLink="false">http://blog.photoquarium.com/2009/01/09/fix-it-or-rewrite-it-that-is-the-question/</guid>
		<description><![CDATA[Sometimes you encounter things at just the right time. This article is one of those things at the right time. Please read this article if you have ever had to deal with legacy code and muttered under you breath, &#8220;Can&#8217;t we just scrap this crap and start over&#8221;, when trying to fix an issue. Below [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes you encounter things at just the right time. This <a title="The Big Redesign In The Sky" href="http://blog.objectmentor.com/articles/2009/01/09/the-big-redesign-in-the-sky">article</a> is one of those things at the right time. Please read this <a title="The Big Redesign In The Sky" href="http://blog.objectmentor.com/articles/2009/01/09/the-big-redesign-in-the-sky">article</a> if you have ever had to deal with legacy code and muttered under you breath, &#8220;Can&#8217;t we just scrap this crap and start over&#8221;, when trying to fix an issue. Below is my spin on it for the situation I am in.</p>
<p><span id="more-21"></span></p>
<p><strong>Fix it or rewrite it</strong></p>
<p>We have all had to face this dilemma at one point in out development careers, do we take that old crappy broken piece of software that we have been patching and re-patching and scrap it for a brand spanking new rewrite that will solve all of out issues, or do we take the time to properly fix what we have and evolve it into the application that we wished it was.</p>
<p>I have been struggling with this with one of the applications that I have maintained for years, is it worthy of scrapping for a full rewrite or should we just take the time and effort to fix it once and for all. There is no need to say its name we all know what it is (plus I wouldn&#8217;t want it to find out I am bad mouthing it, more things might go wrong).</p>
<p>I see both sides of the coin here:</p>
<p><strong>On the Heads Side</strong>:</p>
<p>The developer in me wants to scrap it and be able to work on that pretty, clean, all mine application that will not have all the headaches and stigma that the original application has. I will be able to design it from the ground up and it will be prefect. The perfection of green field projects:</p>
<blockquote><p>In a green field you don&#8217;t have to deal with the mess that&#8217;s accumulated over the years. In a green field you can be clean. In a green field you can build the perfect system. All would be well if only we could start over with a green field.</p></blockquote>
<p>We will be able to use that new technology, remove some of the constraints that are ingrained in the old venison learn from all our pains and make this new fancy 2.0 version that we all dream of.</p>
<p><strong>On the Tails Side:</strong></p>
<p>But wait, what about all the years of evolving that the original application had gone through, how do I get that in this green field application? Can I extract all the correct requirements and business logic that is all ready included? What about new requirements, do I stop maintaining the old application and only add these new requirements to version 2.0.</p>
<blockquote><p>Remember Xeno&#8217;s Paradox? Achilles and a tortoise are in a race. The tortoise has a head start. Every time Achilles gets to where the tortoise <em>was</em>, the tortoise has moved to a new point <em>ahead</em> of Achilles. Therefore Achilles can never catch the tortoise.</p>
<p>Fortunately the law of limits allows us to escape this paradox in a mathematical sense. But in software the paradox sill holds. The <em>Tiger Team</em> can never catch up to the old system. Every time they get to where the old system was, the old system has added new features</p></blockquote>
<p>I don&#8217;t know what part of me this is coming from but I do think that the best solution would be to take this ailing, almost dying application and revive it, give it the million dollar man makeover. We can make it better. I know we can. This might be a little bit of my ego saying I can fix anything but more realistically there is to much inherent knowledge inside the existing application that take years to duplicate, heck it took us years to get it in there in the first place.</p>
<p>Taking the existing structure of the application and improving upon piece by piece will help keep this knowledge in the system but as we slowly evolve the existing application. We can address the most painful points first and take it one step at a time. This doesn&#8217;t have to mean that we are going to stop maintaining and fixing issues as they arise, we just have to make some due diligence and fix them properly with an eye to the future. This may mean no more 1-2 day turn around time, instead more like 1-2 week turn around time (or longer depending on the underlying issue). But over time we will see a new and improved application break free from the cocoon of crappy code.</p>
<p>It may be easier in the short term to scrap the old application but unless we face the reasons why the old application became that way we are destine to repeat them. If we step up and face the fact that we contributed to this crap, promise to fix it, and deal with the decisions we have made we can learn and evolve just as our application has to and not repeat history be it on new projects or on the same one.</p>
<p>Now I could just keep going on and on about this but instead here is a few more articles from people that you might respect a bit more (or might not) that echo my opinion:</p>
<p><a href="http://www.joelonsoftware.com/articles/fog0000000069.html">Things You Should Never Do, Part I</a> &#8211; Joel Spolsky</p>
<p><a href="http://chadfowler.com/the-big-rewrite">The Big Rewrite Series</a> &#8211; Chad Folwer</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.photoquarium.com/2009/01/09/fix-it-or-rewrite-it-that-is-the-question/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Craftsmanship vs Businessman</title>
		<link>http://blog.photoquarium.com/2008/12/24/craftsmanship-vs-businessman/</link>
		<comments>http://blog.photoquarium.com/2008/12/24/craftsmanship-vs-businessman/#comments</comments>
		<pubDate>Wed, 24 Dec 2008 18:22:43 +0000</pubDate>
		<dc:creator>Lucus Crawford</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[craftsmanship]]></category>
		<category><![CDATA[standards]]></category>

		<guid isPermaLink="false">http://blog.photoquarium.com/2008/12/24/craftsmanship-vs-businessman/</guid>
		<description><![CDATA[This article is a great little read on the &#8220;clash of craftsman and businessman&#8221; as it pertains to the software field.
I think we are all (or at least I hope we are all) battling between doing what we know is going to give us the best product possible and just getting the product out. So [...]]]></description>
			<content:encoded><![CDATA[<p>This <a href="http://elegantcode.com/2008/12/24/on-craftsmanship-part-1/">article</a> is a great little read on the &#8220;clash of craftsman and businessman&#8221; as it pertains to the software field.</p>
<p>I think we are all (or at least I hope we are all) battling between doing what we know is going to give us the best product possible and just getting the product out. So basically battling between being a craftsmen and a just a producer.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.photoquarium.com/2008/12/24/craftsmanship-vs-businessman/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Author Teleseminars</title>
		<link>http://blog.photoquarium.com/2008/11/21/author-teleseminars/</link>
		<comments>http://blog.photoquarium.com/2008/11/21/author-teleseminars/#comments</comments>
		<pubDate>Fri, 21 Nov 2008 19:11:52 +0000</pubDate>
		<dc:creator>Lucus Crawford</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[seminars]]></category>

		<guid isPermaLink="false">http://blog.photoquarium.com/?p=18</guid>
		<description><![CDATA[I was on twitter the other day and some twitted (is that a word) about an author teleseminar that they had phoned into to listen to. It was with Seth Godin the author of The Dip and Tribes and hosted by Elizabeth Marshall. I just bought his book Tribes and so I thought I would [...]]]></description>
			<content:encoded><![CDATA[<p>I was on twitter the other day and some twitted (is that a word) about an author teleseminar that they had phoned into to listen to. It was with <a href="http://sethgodin.typepad.com/">Seth Godin</a> the author of <a href="http://www.amazon.com/Dip-Little-Book-Teaches-Stick/dp/1591841666/ref=pd_sim_b_4">The Dip </a>and <a href="http://www.amazon.com/Tribes-We-Need-You-Lead/dp/1591842336/ref=sr_11_1?ie=UTF8&amp;qid=1227294661&amp;sr=11-1">Tribes</a> and hosted by <a href="http://authorteleseminars.com/home/">Elizabeth Marshall</a>. I just bought his book Tribes and so I thought I would like to hear this but I really didn&#8217;t want to phone in.  So I went and registed for the teleseminar and after it was done they emailed me a link to download the mp3. </p>
<p>Anyway I listened to one of the teleseminars and it was great, a bunch of authors getting together to discuss their works and expanding on their ideas. Basically a coffe shop discusion on their ideals. So judge for yourselves and check it out. If you want full access to the mp3&#8217;s then just sign up to <a href="http://authorteleseminars.com/home/">Elizabeth Marshall&#8217;s</a> website and it will send you a password to access the library. </p>
<p> </p>
<p>Enjoy</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.photoquarium.com/2008/11/21/author-teleseminars/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open Closed principle more than just plugins</title>
		<link>http://blog.photoquarium.com/2008/11/11/open-closed-principle-more-than-just-plugins/</link>
		<comments>http://blog.photoquarium.com/2008/11/11/open-closed-principle-more-than-just-plugins/#comments</comments>
		<pubDate>Tue, 11 Nov 2008 16:58:57 +0000</pubDate>
		<dc:creator>Lucus Crawford</dc:creator>
				<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Open Closed Principle]]></category>

		<guid isPermaLink="false">http://blog.photoquarium.com/?p=17</guid>
		<description><![CDATA[At my day job we are in the midst of a pretty big change in the way we are interacting internally within out systems. To date we have been interacting with a really ad-hock method which has caused a lot of dependencey issues and headache, especially when trying to upgrade anything.
So on our path toward [...]]]></description>
			<content:encoded><![CDATA[<p>At my day job we are in the midst of a pretty big change in the way we are interacting internally within out systems. To date we have been interacting with a really ad-hock method which has caused a lot of dependencey issues and headache, especially when trying to upgrade anything.</p>
<p>So on our path toward SMWDA or Stable Modular Well Documented API&#8217;s, I have some across this article on the MSDN site. Now don&#8217;t let the fact that it is in MSDN Magazine and written by someone that develops on Microsoft&#8217;s platform deter you from reading it, it is a good read. It will also give you a little bit of an insight on the direction our code bases should be going.</p>
<p><a href="http://msdn.microsoft.com/en-us/magazine/cc546578.aspx" target="_blank">Open Closed Principle</a></p>
<p>I was going to give a quick summary but the article isn&#8217;t that long and it does a better job than I can.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.photoquarium.com/2008/11/11/open-closed-principle-more-than-just-plugins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Weakst Link</title>
		<link>http://blog.photoquarium.com/2008/11/05/weakst-link/</link>
		<comments>http://blog.photoquarium.com/2008/11/05/weakst-link/#comments</comments>
		<pubDate>Wed, 05 Nov 2008 15:02:30 +0000</pubDate>
		<dc:creator>Lucus Crawford</dc:creator>
				<category><![CDATA[Challenge]]></category>
		<category><![CDATA[Photography]]></category>
		<category><![CDATA[improvement]]></category>
		<category><![CDATA[organization]]></category>
		<category><![CDATA[weakest link]]></category>
		<category><![CDATA[workflow]]></category>

		<guid isPermaLink="false">http://blog.photoquarium.com/?p=13</guid>
		<description><![CDATA[Here it is my weakest link, my deepest confesion, the truth behind my madness. I have a problem completing things.
Where, you ask, does this confessional come from? Well I read this blog post by Brian Auer on Epic Edits, My Weakest Area of Photography. This post was exactly what the title says, his weakest points [...]]]></description>
			<content:encoded><![CDATA[<p>Here it is my weakest link, my deepest confesion, the truth behind my madness. I have a problem completing things.</p>
<p>Where, you ask, does this confessional come from? Well I read this blog post by <a href="http://blog.epicedits.com" target="_blank">Brian Auer</a> on Epic Edits, <a href="http://blog.epicedits.com/2008/06/16/my-weakest-area-of-photography/" target="_blank">My Weakest Area of Photography</a>. This post was exactly what the title says, his weakest points in his photography and how he is going about to improve on them. This got me thinking about my weakest point in photography and life but that is to deep for this blog and we will stick with photography.</p>
<p><strong>Post Processing</strong></p>
<p>I would say this is one of my most inconsistent parts of my photo process. I go out and take hundreds of photo&#8217;s and instead of taking them off the camera right away and starting the sorting, processing and ratign of my photo&#8217;s I let them sit there and forget about them for a while. This is bringing me to a mountain of images that I either forget I have or get overwelmed with when I try to start the actual process.</p>
<p><strong>How I am going to fix it</strong></p>
<p><a href="http://blog.epicedits.com/2008/01/04/organize-getting-to-grips-with-image-management/">Organize &#8211; Getting To grips with image management</a></p>
<p><a href="http://blog.epicedits.com/2008/01/16/organize-getting-to-grips-with-image-management-2/">Organize &#8211; Getting to grips with image management 2</a></p>
<p><a href="http://blog.epicedits.com/2008/02/04/organize-part-3-seeing-it-through/">Organize &#8211; See it through</a></p>
<p><strong>Printing Photo&#8217;s</strong></p>
<p>This on is along the same lines as the previous in that it is a procrastination issue as well. I am alway saying that I need to print my photo&#8217;s be it as a framed photo for my wall or as a photobook that I can put on my coffe table for myseld and others to enjoy.</p>
<p><strong>How I am going to fix this</strong></p>
<p><strong>Posting online</strong></p>
<p>I have my photoblog on photoquarium that I post to in spurts but not consistent enough. Also I need to post to my <a href="http://www.flickr.com/photoquarium/" target="_blank">flickr account</a> as well as othere sites like <a href="http://www.vazaar.com/" target="_blank">vazaar</a>. I need to get my photo&#8217;s more exposure and critisism, I am not sure how I can progress and get better if I don&#8217;t get opinions on my work. Maybe I should spend more time in places like <a href="http://www.photophlow.com" target="_blank">photophlow</a> where I can chat with people and get my photo&#8217;s critiqued there.</p>
<p> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.photoquarium.com/2008/11/05/weakst-link/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A few software engineering books.</title>
		<link>http://blog.photoquarium.com/2008/10/30/a-few-software-engineering-books/</link>
		<comments>http://blog.photoquarium.com/2008/10/30/a-few-software-engineering-books/#comments</comments>
		<pubDate>Thu, 30 Oct 2008 14:48:45 +0000</pubDate>
		<dc:creator>Lucus Crawford</dc:creator>
				<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[Books]]></category>
		<category><![CDATA[Reading]]></category>
		<category><![CDATA[Sofware Engineering]]></category>

		<guid isPermaLink="false">http://blog.photoquarium.com/?p=15</guid>
		<description><![CDATA[
For all of you out there that need or want to read up on software engineering or just want to pad their geek library with books that will get noticed, check out this list of The Top 100 best Software Engineering Books, Ever. 
This is a huge list and maybe you don&#8217;t agree with all these [...]]]></description>
			<content:encoded><![CDATA[<p><span style="text-decoration: underline;"><a title="What could I read tonight?" href="http://www.flickr.com/photos/84296325@N00/262096844/" target="_blank"><img class="alignleft" style="border: 0; float: left;" src="http://farm1.static.flickr.com/89/262096844_6a626dc51b_m.jpg" border="0" alt="What could I read tonight?" /></a></span><br />
For all of you out there that need or want to read up on software engineering or just want to pad their geek library with books that will get noticed, check out this list of <a href="http://www.noop.nl/2008/06/top-100-best-software-engineering-books-ever.html" target="_blank">The Top 100 best Software Engineering Books, Ever</a>. </p>
<p>This is a huge list and maybe you don&#8217;t agree with all these books as a &#8220;<em>best ever</em>&#8221; but it will give you some books to keep in mind as a start to increase you knowledge.  Also he posted a follow up to this post <a href="http://www.noop.nl/2008/06/top-100-best-software-engineering-books-ever-comments.html" target="_blank">here</a>.  Enjoy.</p>
<p> </p>
<p> </p>
<p> </p>
<p><a title="Attribution-NonCommercial-ShareAlike License" href="http://creativecommons.org/licenses/by-nc-sa/2.0/" target="_blank"><img src="http://blog.photoquarium.com/wp-content/plugins/photo-dropper/images/cc.png" border="0" alt="Creative Commons License" width="16" height="16" align="absmiddle" /></a> <a href="http://www.photodropper.com/photos/" target="_blank">photo</a> credit: <a title="blu_blue" href="http://www.flickr.com/photos/84296325@N00/262096844/" target="_blank">blu_blue</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.photoquarium.com/2008/10/30/a-few-software-engineering-books/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Neglecting this blog.</title>
		<link>http://blog.photoquarium.com/2008/10/29/neglecting-this-blog/</link>
		<comments>http://blog.photoquarium.com/2008/10/29/neglecting-this-blog/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 14:57:07 +0000</pubDate>
		<dc:creator>Lucus Crawford</dc:creator>
				<category><![CDATA[Site Info]]></category>
		<category><![CDATA[goals]]></category>
		<category><![CDATA[Site News]]></category>

		<guid isPermaLink="false">http://blog.photoquarium.com/?p=16</guid>
		<description><![CDATA[I am sure that anyone that has even remotely tried to follow my blogging will have noticed that I haven&#8217;t been that consistant. Posts have been spuratic to say the least. 
I am hopefully going to rectify that and start disceplening myself more to publish post on a more regular basis. To my defense though, I have [...]]]></description>
			<content:encoded><![CDATA[<p>I am sure that anyone that has even remotely tried to follow my blogging will have noticed that I haven&#8217;t been that consistant. Posts have been spuratic to say the least. </p>
<p>I am hopefully going to rectify that and start disceplening myself more to publish post on a more regular basis. To my defense though, I have been posting on my companies internal blog and I just realized why try and post to two blogs when I can just take these internal articles and post them here. I will however sanitize them so that if there happens to be any sensitive data  (names, numbers, project specifics, etc) will be generalized orr take out. </p>
<p>So starting tomorrow I am going to be publishing the these posts ( I don&#8217;t think I can them articles) and hopefully this will get me in the habbit of posting one article a week. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.photoquarium.com/2008/10/29/neglecting-this-blog/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Problems and Benefits &#8230; who decides?</title>
		<link>http://blog.photoquarium.com/2008/07/07/problems-and-benefits-who-decides/</link>
		<comments>http://blog.photoquarium.com/2008/07/07/problems-and-benefits-who-decides/#comments</comments>
		<pubDate>Mon, 07 Jul 2008 17:15:37 +0000</pubDate>
		<dc:creator>Lucus Crawford</dc:creator>
				<category><![CDATA[Software Design]]></category>
		<category><![CDATA[benifits]]></category>
		<category><![CDATA[features]]></category>
		<category><![CDATA[Software Management]]></category>

		<guid isPermaLink="false">http://blog.photoquarium.com/?p=14</guid>
		<description><![CDATA[Lately there have been a few blog posts that I have read about whether to relay the benefits or features of a product to the user in an attempt to give them the best tools to choose your product. Some circles believe that you should list the benefits that a product produces instead of features [...]]]></description>
			<content:encoded><![CDATA[<p>Lately there have been a few blog posts that I have read about whether to relay the benefits or features of a product to the user in an attempt to give them the best tools to choose your product. Some circles believe that you should list the benefits that a product produces instead of features since benefits can be understood easier by clients instead of a list of features (which can and most times are a technical list and confusing to the end user).</p>
<p><span id="more-14"></span></p>
<p>One article (actually it&#8217;s a video) called <a href="http://www.codesqueeze.com/features-do-not-exist-only-benefits/" target="_blank">Features Don&#8217;t Exits (Only Benefits)</a>, Max Pool goes on a little rant about a styrofoam drink container that has a feature labeled on it. He basically goes on saying that the feature is irrelevant and the company would have been better served to list one on the benefits of using a styrofoam container and then starts to relate this stance onto software.</p>
<p>Whether we list the features or benefits of the product, I feel that this is like most things in software development, we should look at each case and decide whether a feature will convey the most and best information to the user or will listing it in a benefit manner be more effective.</p>
<p>There was a follow up post by <a href="http://www.noop.nl/2008/07/oh-my-god-they-fixed-the-bug-you-bastards.html" target="_blank">Jurgen Appello</a> where he disagrees with this notion of benefits and expands more on the questions, who is deciding that this is actually a  benefit, the end users or the company, or what is a benefit. Here is a good quote from the article.</p>
<blockquote><p>When you create a product, it is often necessary to anticipate what your customers want. You have to imagine needs and benefits, and design your product accordingly. <em>But once your product is out in the open, being used by your customer, you must stop acting on imagined needs and benefits</em>. You must accept whatever it is the customer is doing with your product. Don&#8217;t tell your customer how many suitcases the trunk in a car can hold. Just tell the customer what its dimensions and volume are. Whether your customers want to translate that to &#8220;number of suitcases&#8221;, &#8220;number of sheep&#8221; or &#8220;number of dead bodies&#8221;, is up to them</p></blockquote>
<p>I have seen this situation on a few projects I have worked on where we are thinking that we are adding a benefit to the system by changing the way it works. In out minds this makes no sense the way it is working now and logically we are probably right.<br />
But after the change is deployed to the field we find out that the users are using the product in a way that we can&#8217;t understand why. It could be because they have gotten use to it working this way or that they see the system in a totally different way then we do. Either way the benefit is actually a hindrance to the end user and complaints come rolling in. A few times we have even rolled back the changes.</p>
<p>So do we try and predict what the users want or let them fully drive the future enhancements and benefits. I believe its a fine balancing act that takes a bit from each side but pushing features and benefits onto a client can really hurt you. I have a firm belief that the user should be involved (or at least consulted) in all the steps of development. This can save from some long and expensive failures since it should be caught early on that this isn&#8217;t wanted or needed by the clients.</p>
<p>What is your opinion, features or benifits, who knows best?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.photoquarium.com/2008/07/07/problems-and-benefits-who-decides/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
