<?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>MATTSTOCKTON.com &#187; software</title>
	<atom:link href="http://www.mattstockton.com/tag/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mattstockton.com</link>
	<description>Rants and raves on software, technology, and whatever else I feel like!</description>
	<lastBuildDate>Mon, 28 Jun 2010 01:57:23 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>This Or That &#8211; Now available on the iPhone App Store!</title>
		<link>http://www.mattstockton.com/2010/04/27/this-or-that-now-available-on-the-iphone-app-store/</link>
		<comments>http://www.mattstockton.com/2010/04/27/this-or-that-now-available-on-the-iphone-app-store/#comments</comments>
		<pubDate>Tue, 27 Apr 2010 23:22:36 +0000</pubDate>
		<dc:creator>matt</dc:creator>
				<category><![CDATA[iPhone Applications]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[tech gadgets]]></category>
		<category><![CDATA[the web]]></category>
		<category><![CDATA[App Store]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[iPhone Application]]></category>
		<category><![CDATA[ITunes Store]]></category>

		<guid isPermaLink="false">http://www.mattstockton.com/?p=219</guid>
		<description><![CDATA[The newest iPhone Application has been launched to the App Store. This or That is a deceptively simple categorization game, which is surprisingly addictive. Check it out and let me know what you think!
________________________________________________________________
To play, choose your game pack from a variety of themes.  Let’s say you choose “Hot or Cold” .  The game [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-126" title="ThisOrThat" src="http://www.mattstockton.com/wp-content/uploads/2010/04/thisorthat-splash.png" alt="wordspy" width="160" height="240" />The newest <a class="zem_slink" title="iPhone" rel="homepage" href="http://www.apple.com/iphone">iPhone</a> Application has been launched to the <a class="zem_slink" title="App Store" rel="homepage" href="http://www.apple.com/iphone/appstore/">App Store</a>. This or That is a deceptively simple categorization game, which is surprisingly addictive. Check it out and let me know what you think!<br />
________________________________________________________________</p>
<p>To play, choose your game pack from a variety of themes.  Let’s say you choose “Hot or Cold” .  The game presents you an item, like “Ice Cream” and you need to decide, as fast as you can, if that item is Hot or Cold (In this case, it’s cold).  Simply swipe the item “Ice Cream” towards the correct answer “Cold” as fast as you can to receive the most points.  But be careful, wrong answers count against you.</p>
<p>There are several game modes all with their own high-score boards powered by our friends at <a href="http://openfeint.com">OpenFeint</a>.</p>
<p>We’re always adding new game packs, which you can find using on the “Choose a pack” page using the “Get More” button.  We get that content from experts and comedians in our Content Network and from user’s like you!</p>
<p>For more information on the app, you can visit <a href="http://thisorthatforiphone.com">thisorthatforiphone.com</a></p>
<h2><a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=366879375&amp;mt=8">This Or That in the App Store</a></h2>
<p><img class="alignleft size-full wp-image-126" title="ThisOrThat" src="http://www.mattstockton.com/wp-content/uploads/2010/04/thisorthat1.jpg" alt="thisorthat" width="160" height="240" /><img class="alignleft size-full wp-image-126" title="ThisOrThat" src="http://www.mattstockton.com/wp-content/uploads/2010/04/thisorthat2.jpg" alt="thisorthat" width="160" height="240" /> <img class="alignleft size-full wp-image-126" title="ThisOrThat" src="http://www.mattstockton.com/wp-content/uploads/2010/04/thisorthat3.jpg" alt="thisorthat" width="160" height="240" /> <img class="alignleft size-full wp-image-126" title="ThisOrThat" src="http://www.mattstockton.com/wp-content/uploads/2010/04/thisorthat4.jpg" alt="thisorthat" width="160" height="240" /> <img class="alignleft size-full wp-image-126" title="ThisOrThat" src="http://www.mattstockton.com/wp-content/uploads/2010/04/thisorthat5.jpg" alt="thisorthat" width="160" height="240" /></p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"></div>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Reblog this post [with Zemanta]" href="http://reblog.zemanta.com/zemified/7cde5d4c-1fb6-457f-a550-26ec08561d9f9/"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/reblog_e.png?x-id=7cde5d4c-1fb6-457f-a550-26ec08561d9f" alt="Reblog this post [with Zemanta]" /></a><span class="zem-script more-related pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>
]]></content:encoded>
			<wfw:commentRss>http://www.mattstockton.com/2010/04/27/this-or-that-now-available-on-the-iphone-app-store/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ridiculously Profitable Business Model</title>
		<link>http://www.mattstockton.com/2009/01/27/ridiculously-profitable-business-model/</link>
		<comments>http://www.mattstockton.com/2009/01/27/ridiculously-profitable-business-model/#comments</comments>
		<pubDate>Wed, 28 Jan 2009 02:55:36 +0000</pubDate>
		<dc:creator>matt</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[the web]]></category>
		<category><![CDATA[Bidding]]></category>
		<category><![CDATA[business model]]></category>
		<category><![CDATA[Dollar auction]]></category>
		<category><![CDATA[irrational]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://www.mattstockton.com/?p=79</guid>
		<description><![CDATA[I was searching around yesterday for a Mac Book Pro, and made the ever-so tempting mistake of clicking on the following  Google Ads Result, &#8220;86% off a Mac Book Pro?&#8221; &#8212; I am not stupid &#8212; I know that when things are too good to be true, they are not true &#8212; but somehow [...]]]></description>
			<content:encoded><![CDATA[<p>I was searching around yesterday for a Mac Book Pro, and made the ever-so tempting mistake of clicking on the following  Google Ads Result, &#8220;86% off a Mac Book Pro?&#8221; &#8212; I am not stupid &#8212; I know that when things are too good to be true, they are not true &#8212; but somehow my curiosity overpowered my rationality, and I clicked the link. What I found was a site so devious, so tricky, so evil, yet so potentially profitable (and &#8216;I think&#8217; legal), that I could only wish that I had thought of the business model first.  The site is <a href="http://swoopo.com" target="_blank">Swoopo.com</a> &#8212; an auction site with an evil, evil twist that preys on human irrationality to make a ridiculous amount of money. Here is how it works:</p>
<ul>
<li>Users can bid on items, but they don&#8217;t bid by specifying a price&#8230;they use a &#8216;bid&#8217; that they have purchased</li>
<li>&#8216;Bids&#8217; can be purchased for 75 cents each</li>
<li>Each time a user &#8216;bids&#8217;, two things happen:  1. The final cost of the item to the winning bidder is increased by a fixed amount (e.g. 15 cents)  2. The auction end time gets extended by a fixed amount of time (e.g. 20 seconds)</li>
<li>The last person to &#8216;bid&#8217; on an item before the auction expires is the winner, and must pay the total price of the item (e.g. the total number of bids multiplied by the fixed price amount increase noted above).</li>
</ul>
<p>This is a little complicated, but here&#8217;s an example. Lets say that I purchased 100 &#8216;bids&#8217; for a total cost of $75 dollars. The Mac Book Pro auction that I am checking out has a current price of $100 and a current time left of 10 seconds. I decide to use one of my bids on the item, and now I am the &#8216;current winner&#8217;. Because of my bid, the price of the MBP has increased to $100 + $0.15 = $100.15,  and the auction now is over in 10+20 = 30 seconds&#8230;of course, other people are going to &#8216;bid&#8217; against me, but lets say I spend a few hours checking the auction, and use all my bids&#8230;.and I am somehow, beyond my wildest imagination, the last bidder. I have won the auction!  Now, if the final price of the computer is $300, and I have spent $75 on the 100 bids, then I have bought a MBP for $375.  Sweet!   So Swoopo must not be making too much money right??? Wrong. They have made money&#8230;a lot of money &#8212; In fact, on <a href="http://www.swoopo.com/auction/apple-macbook-mb466ll-a-13-3-inch-laptop/139701.html" target="_blank">this auction</a> for a Mac Book Pro, I  calculate that <strong>they have made almost 20 thousand dollars</strong>&#8230;</p>
<p>If you do the math on the above MBP auction&#8230;.</p>
<ul>
<li>There have been 25,529 bids. This auction is a &#8216;penny auction&#8217; meaning that each bid only increases the final cost of the item by a penny, so $255.29 indicates 25,529 bids. At 75 cents a pop, this is $19,146.75</li>
<li>The final cost for the winner is $255.29</li>
<li>Adding the two costs above, we are very close to a total profit of 20 thousand dollars!!!</li>
</ul>
<p>But what&#8217;s that you say? The cost is spread across so many users that it doesn&#8217;t matter to any individual? One would hope so, but look at the poor winner of the auction. He has bid a total of <strong>2872 times</strong>!! At 75 cents a pop, this is already over 2 grand for something that costs $1299 retail. To add insult to injury, he still has to shell out the $255.29 to purchase the computer.</p>
<p>So how does this business model work? How are people this stupid? And why didn&#8217;t I come up with this? Well, I can&#8217;t answer the last question, but I will try to answer the first two:</p>
<p>Although the business model may be new, the concept behind it is not. In fact, it is a published economic game / theory known as <a href="http://en.wikipedia.org/wiki/Dollar_auction" target="_blank">Dollar Auction</a>.  It exploits flaws in the calculations of expected value for a given game. At a high level, this model seems to work because</p>
<ul>
<li>It exploits a human irrationality where individuals think they will be the one who bids last &#8211; Everyone thinks they&#8217;re lucky once in a while&#8230;but really&#8230;do you think there aren&#8217;t 100s of other people out there thinking that they&#8217;ll bid last too? Thinking it to be true will not make it true&#8230;but it will make <a href="http://www.techcrunch.com/2008/09/24/swoopo-entertainment-shopping-with-a-hint-of-scam/" target="_blank">Swoopo</a> a lot of money</li>
<li>It exploits the <strong>sunk cost fallacy </strong>- If I keep bidding on an item, I will become tied to that item, thinking that since I have spent money by bidding so many times on the item, I must win it at all costs&#8230;even if economically it isn&#8217;t the right think to do (e.g. guy who won the Mac Book Pro Auction)</li>
<li>It isn&#8217;t transparent &#8211; To an average Joe,  it isn&#8217;t obvious what is going on. On EBay it is easy to see how much you will pay for the item, and understand how much the seller is making.  On Swoopo, it isn&#8217;t transparent&#8230;and people will keep the bidding coming.</li>
<li>It is like gambling &#8211; Why do people go to the casino? Obviously, not to make money &#8212; unless they&#8217;re kidding themselves or are playing Poker. People probably get the same rush from this site as they may get from putting it all on Red. There&#8217;s a chance to win at a small cost, many times over.</li>
</ul>
<p>Anyway, that&#8217;s all I got on this site&#8230;what do you guys think? Should this be legal? Is it gambling? Are there any other sites out there that have wacky business models? I want to know about them!&#8230;I can&#8217;t say that I&#8217;m not jealous &#8211; the idea is simple and profitable &#8211; what else can you ask for?</p>
<p>I know what I am going to do next &#8211; search google for &#8216;economics irrational behavior&#8217;, and try to develop a business model around the results.  Or maybe I&#8217;ll go back and re-read <a href="http://www.amazon.com/Nudge-Improving-Decisions-Health-Happiness/dp/0300122233/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1233110765&amp;sr=1-1" target="_blank">Nudge</a> or <a href="http://www.amazon.com/Predictably-Irrational-Hidden-Forces-Decisions/dp/006135323X/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1233110679&amp;sr=1-1" target="_blank">Predictably Irrational</a> , and see how to profit from human economical irrational decisions&#8230; is this an awful thought? Or is this just business as usual?</p>
<h6 class="zemanta-related-title" style="font-size: 1em;">Related articles by Zemanta</h6>
<ul class="zemanta-article-ul">
<li class="zemanta-article-ul-li"><a href="http://techdirt.com/articles/20081214/1922133113.shtml">Evil Business Models: Turning The Dollar Auction Into A Profit Center</a></li>
<li class="zemanta-article-ul-li"><a href="http://www.theregister.co.uk/2009/01/02/swoopo_startrup/">Swoopo &#8211; eBay&#8217;s (more) evil twin</a></li>
<li class="zemanta-article-ul-li"><a href="http://techdirt.com/articles/20081229/1850233240.shtml">Are Online Penny Auctions Actually Gambling?</a></li>
</ul>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Zemified by Zemanta" href="http://reblog.zemanta.com/zemified/034d67ac-0f14-4e54-b809-1a4e58d19ebf/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/reblog_e.png?x-id=034d67ac-0f14-4e54-b809-1a4e58d19ebf" alt="Reblog this post [with Zemanta]" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://www.mattstockton.com/2009/01/27/ridiculously-profitable-business-model/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>The Forced Opportunity in Entrepreneurship</title>
		<link>http://www.mattstockton.com/2009/01/18/the-forced-opportunity-in-entrepreneurship/</link>
		<comments>http://www.mattstockton.com/2009/01/18/the-forced-opportunity-in-entrepreneurship/#comments</comments>
		<pubDate>Sun, 18 Jan 2009 22:04:54 +0000</pubDate>
		<dc:creator>matt</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[the web]]></category>
		<category><![CDATA[Entrepreneur]]></category>
		<category><![CDATA[Recession]]></category>
		<category><![CDATA[Silicon Valley]]></category>

		<guid isPermaLink="false">http://www.mattstockton.com/?p=50</guid>
		<description><![CDATA[I&#8217;m not going to lie. This economy is dead scary. I&#8217;m sure that for most of you, the company water cooler buzz these days is not about who is getting promoted, but is about what percentage of your company is getting layed off. When TechCrunch has a layoff counter showing over 100k lost jobs, and [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m not going to lie. This economy is <strong>dead scary</strong>. I&#8217;m sure that for most of you, the company water cooler buzz these days is not about who is getting promoted, but is about what percentage of your company is getting layed off. When TechCrunch has a <a href="http://www.techcrunch.com/layoffs/" target="_blank">layoff counter</a> showing over 100k lost jobs, and a <a href="http://www.crunchboard.com/jobs/" target="_blank">job board</a> with only 50 openings, you know things have gotten bad. I don&#8217;t know about you guys, but I&#8217;m not that interested in being scared &#8212; it&#8217;s hard to focus on the positive things in these times, but sometimes focusing on the positive is an absolute necessity to stay sane &#8212; and that&#8217;s why I&#8217;m going to tell you that being a &#8216;would-be&#8217; software/web entrepreneur in this economic climate is not so terrible of a spot to be in.</p>
<p>Ryan Graves recently blogged about the best <a href="http://ryanagraves.com/01/11/2009/what-is-the-best-age-for-entrepreneurship/" target="_blank">age for entrepreneurship</a>, and the post had some very interesting follow-up conversation in the comments.  I agree that age is a very interesting dynamic to look at in startups.  Another interesting characteristic in the context of best overall &#8216;life situation&#8217; for entrepreneurship is an individual&#8217;s level of risk aversion. When you have a steady job and steady income, it is a lost easier to be risk averse. Entrepreneurship is obviously not for the faint of heart or completely risk-averse, as there is plenty of opportunity to fail&#8230;.on the flip side &#8212; in order to succeed, you must sometimes take the opportunity when it presents itself.</p>
<p>With the current economic climate, more and more tech workers are facing what I&#8217;m calling a &#8216;forced opportunity&#8217;.  It&#8217;s no surprise that tech workers aren&#8217;t immune to the economic downturn and are getting laid off. For most, this is an awful situation to be in &#8212; but for a few, this is just the event they needed to get over their risk-aversion of trying to go at it on their own. Many would-be-entrepreneurs probably find it difficult to make the &#8216;leap of faith&#8217; between part-time entrepreneurship to go along with a steady job and a full entrepreneurial commitment. I&#8217;m not saying that being forced into it is a good thing, but there might be some lights shining if we try to look at the bright side.</p>
<p>With that being said, I know that Silicon Valley has been hit hard lately&#8230;.and because of this, I&#8217;m looking for some new awesome startups to come out of there in the next year or so from the talented ex-Yahoos and others. The Software industry is still great &#8212; what other industry can say that the <strong>most expensive part of the investment is simply your time and passion</strong>? &#8211; I doubt there are many.</p>
<p>On that note, Ryan Graves pointed me towards two projects already spawned from laid off Valley workers (specifically, <a href="http://www.ryankuder.com/" target="_blank">Ryan Kruder</a>):</p>
<ul style="text-align: left;">
<li><a href="http://www.purplepeoplecollective.com/" target="_blank">Purple People Collective</a> &#8211; A job / project board for laid off tech workers</li>
<li><a href="http://neighborsville.com/" target="_blank">Neighborsville </a>- A location-specific networking / collaboration / news community</li>
</ul>
<p>Do you know of any more? If so, I am interested to hear about them.</p>
<h6 class="zemanta-related-title" style="font-size: 1em;">Related articles by Zemanta</h6>
<ul class="zemanta-article-ul">
<li class="zemanta-article-ul-li"><a href="http://www.feld.com/blog/archives/2008/10/round_two_of_th.html">Round Two of The VC (and Entrepreneur) Advice on the Downtown</a></li>
<li class="zemanta-article-ul-li"><a href="http://kevinsgreatadventure.blogspot.com/2009/01/image-by-jjjohn-via-flickr-this-evening.html">Why Entrepreneurs flock to Silicon Valley</a></li>
</ul>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Zemified by Zemanta" href="http://reblog.zemanta.com/zemified/80b82ffc-df1f-4678-98f7-aaa0a79f9c40/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/reblog_e.png?x-id=80b82ffc-df1f-4678-98f7-aaa0a79f9c40" alt="Reblog this post [with Zemanta]" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://www.mattstockton.com/2009/01/18/the-forced-opportunity-in-entrepreneurship/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Habits of a Rockstar Software Engineer</title>
		<link>http://www.mattstockton.com/2009/01/15/habits-of-a-rockstar-software-engineer/</link>
		<comments>http://www.mattstockton.com/2009/01/15/habits-of-a-rockstar-software-engineer/#comments</comments>
		<pubDate>Fri, 16 Jan 2009 03:43:58 +0000</pubDate>
		<dc:creator>matt</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.mattstockton.com/?p=35</guid>
		<description><![CDATA[Every day, a software project dies.  Some die a slow, painful, expensive, death.  Others die a quick, not painless, and relatively embarrassing death . As Software Engineers, we never want our own projects to die. As individual contributors the livelihood of our projects are often times outside the realm of our control. At [...]]]></description>
			<content:encoded><![CDATA[<p>Every day, a software project dies.  Some die a <a href="http://news.cnet.com/IBM-nabs-California-welfare-contract/2100-1011_3-1025704.html" target="_blank">slow, painful, expensive</a>, death.  Others die a quick, not painless, and relatively <a href="http://www.techcrunch.com/2009/01/03/journalspace-drama-all-data-lost-without-backup-company-deadpooled/" target="_blank">embarrassing death</a> . As Software Engineers, we never want our own projects to die. As individual contributors the livelihood of our projects are often times outside the realm of our control. At the same time, there are many things that are within our control that can help the projects that we work on be a success.  This is a list of several habits of Rockstar Software Engineers &#8212; habits that when practiced, will not guarantee success in a software project&#8230;but will greatly limit the possibility for failure.</p>
<p><strong>Learn from your (cube) neighbor</strong> &#8211; It doesn&#8217;t matter if your neighbor is a Junior Programmer or the CTO &#8211; run your ideas past them and see <strong>what they think</strong>. If your neighbor has more expertise then you, then they may have some tried and true advice to get you past the roadblock you&#8217;ve been hitting in your code for the last hour.  If they are less experienced, then challenging them with a complex problem and discussing it with them may help grow <strong>their expertise</strong> &#8212; something that will surely help your team in the long run.</p>
<p><strong>Keep it simple</strong> &#8211; This is so easy to say, yet so <strong>hard to do</strong>. This is the one item that I have to constantly remind myself of when developing software &#8212; Software geeks often generate their own requirements without even realizing it (&#8217;Example:  Oh, I bet they would like it if they could do this this way OR that way!&#8217;). <a href="http://en.wikipedia.org/wiki/Antoine_de_Saint_Exup%C3%A9ry" target="_blank">Antoine de Saint-Exupery</a> said it best &#8211; &#8220;A designer knows he has achieved perfection not when there is nothing left to add, but when there is <strong>nothing left to take away</strong>&#8221;  &#8211; Ask yourself each day &#8211; &#8216;what can I remove from the software and still maintain the essence?&#8217; &#8211; This alone will get you heads above the rest.</p>
<p><strong>Your code must speak the same language as your client </strong>- I&#8217;ve been reading bits and pieces of the book <a href="http://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215" target="_blank">Domain-Driven Design</a> . The one main message I am taking away is that the language your code speaks and the language your customer speaks <strong>need to be one and the same</strong>. If your client keeps talking about how the &#8216;Policy&#8217; can be sold by a &#8216;Salesperson&#8217;, then maybe you should name your classes &#8216;Policy&#8217; and &#8216;Salesperson&#8217;, and name your method &#8217;sell&#8217; not &#8216;widgetA&#8217;, &#8216;thingB&#8217;, and &#8216;update&#8217; (OK &#8211; this is very over-simplified&#8230;but the point is that your code will <strong>ROT fast</strong> if you need to go through multiple layers of translation to understand the changing requirements&#8230;let your code be the voice of your customer!)</p>
<p><strong>Water your brain</strong> &#8211; If you aren&#8217;t reading reference books to keep up to date, then you aren&#8217;t doing your job as a Rockstar Software Engineer. I don&#8217;t care how sweet your code is&#8230;if you can&#8217;t pick up a few books a year written by the software gods (even if it&#8217;s just for a quick refresher) &#8211; then you aren&#8217;t doing your team any favors. There&#8217;s plenty of great books out there to read (and plenty of crappy ones too &#8212; so be careful).  Two books that I like to read at least once a year are: <a href="http://www.amazon.com/Smalltalk-Best-Practice-Patterns-Kent/dp/013476904X" target="_blank">Smalltalk Best Practice Patterns</a> and <a href="http://www.amazon.com/Design-Patterns-Object-Oriented-Addison-Wesley-Professional/dp/0201633612/ref=pd_bbs_sr_1?ie=UTF8&amp;s=books&amp;qid=1232075232&amp;sr=8-1" target="_blank">Design Patterns</a> &#8212; yes I know, very old school, but there are timeless nuggets of information within each! Recent books I&#8217;ve read or are reading include the Domain-Driven Design mentioned above and another Kent Beck book, <a href="http://www.amazon.com/Implementation-Patterns-Addison-Wesley-Signature-Kent/dp/0321413091/ref=sr_1_2?ie=UTF8&amp;s=books&amp;qid=1232075363&amp;sr=1-2" target="_blank">Implementation Patterns</a>. I&#8217;m always looking for new books &#8212; what is in your library?</p>
<p><strong>Test first </strong>- Sorry to break the news, but test-driven development is not a buzz word&#8230;it&#8217;s something you need to do. If nothing else, it will <strong>force</strong> you to Keep it Simple. If you write the tests first, you can define the criteria for success up front, therefore providing you with a finish line &#8212; when the tests pass, you&#8217;re done. Without a finish line, it is so easy to keep running&#8230;.and running and running, until you have implemented what you think should be implemented&#8230;not what the <strong>customer needs</strong></p>
<p><strong>Introduce your code to your team </strong>- If you work in an environment where there is shared code ownership, this is incredibly important. When you are working on something that you know no one else on the team is familiar with, <strong>review the code with them when you make changes</strong>. This can accomplish several things at once. First, When you are on vacation without a cell phone, your team will know how to fix your wacky code &#8211; We&#8217;ve all been here&#8230; The last thing you want is to have a message from a co-worker on your hotel room phone in Mexico saying that all hell has broken loose! Secondly, the best brain to have on a software problem is the one that isn&#8217;t biased towards a solution. If you wrote the code, you are already biased &#8212; you think it is the best way to solve the problem, whether you like it or not. A fresh brain can point out the obvious ways to do it better &#8212; and that is a good thing for your team (even if it hurts your own ego a little bit).</p>
<p>These are just a few of the many habits practiced by Rockstar Software Engineers&#8230;what others can you think of? I&#8217;ll write some more of my thoughts on this in a future blog post</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Zemified by Zemanta" href="http://reblog.zemanta.com/zemified/e5a41121-4425-48d6-9378-1cb6c375b9ac/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/reblog_e.png?x-id=e5a41121-4425-48d6-9378-1cb6c375b9ac" alt="Reblog this post [with Zemanta]" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://www.mattstockton.com/2009/01/15/habits-of-a-rockstar-software-engineer/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
