<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:iweb="http://www.apple.com/iweb" version="2.0">
  <channel>
    <title></title>
    <link>http://bernard.gondwana.com.au/Web/Software_Rants/Software_Rants.html</link>
    <description>When out at customer sites I’ve seen so many good and more often that not bad ways to build and manage software development projects.&lt;br/&gt;With this blog I’d like to try and enlighten the world a little with some good practices and point out what makes bad practices bad.</description>
    <generator>iWeb 3.0.1</generator>
    <image>
      <url>http://bernard.gondwana.com.au/Web/Software_Rants/Software_Rants_files/IMG_0213.jpg</url>
      <link>http://bernard.gondwana.com.au/Web/Software_Rants/Software_Rants.html</link>
    </image>
    <item>
      <title>Apathy towards errors reported by software</title>
      <link>http://bernard.gondwana.com.au/Web/Software_Rants/Entries/2009/8/14_Apathy_towards_errors_reported_by_software.html</link>
      <guid isPermaLink="false">d9756070-bcd1-4c62-b2a2-4febe4ab7e06</guid>
      <pubDate>Fri, 14 Aug 2009 14:35:39 +1000</pubDate>
      <description>&lt;a href=&quot;http://bernard.gondwana.com.au/Web/Software_Rants/Entries/2009/8/14_Apathy_towards_errors_reported_by_software_files/IMG_0607.jpg&quot;&gt;&lt;img src=&quot;http://bernard.gondwana.com.au/Web/Software_Rants/Media/object002_1.jpg&quot; style=&quot;float:left; padding-right:10px; padding-bottom:10px; width:364px; height:173px;&quot;/&gt;&lt;/a&gt;At the start of 2008 I changed jobs and moved into a whole new world of software that only runs on Microsoft Windows.&lt;br/&gt;Like virtually the rest of the development world I’ve worked with windows software before and was aware that software developed on windows was often buggy.&lt;br/&gt;What I hadn’t anticipated when I moved to the new company was the level of apathy felt towards error reporting by windows programs. On the project I’m currently working on this has grown to an annoying level. Each day there are tens of thousands of errors reported in the event logs for the application and it’s various components. Fortunately we have a system where we can search for a particular error that we are interested in. But this hides the real issue at hand which is that there is way too much noise in the error reports. This means that if you were to look for new errors that shouldn’t be happening you can’t find them.&lt;br/&gt;&lt;br/&gt;Consider the following scenario, You want to add an item to a shopping cart.&lt;br/&gt;In the software you could:&lt;br/&gt;	A.	Add the item to the shopping cart object. If the object doesn’t exist throw and exception, create a new shopping cart object and add the item to it.&lt;br/&gt;	B.	First check it the user has a shopping cart object. If not you create one.&lt;br/&gt;It seems that all to often developers find it quicker to implement option A. which reports and error in the error logs.&lt;br/&gt;The second option may take a little longer to implement but it doesn’t throw an error.&lt;br/&gt;Throwing an error in option A. may be a valid scenario, but since it is obviously an expected behavior there is no way that throwing an “error” is an acceptable outcome. Instead this sort of message should be a warning or information message that’s if it should be reported at all.</description>
      <enclosure url="http://bernard.gondwana.com.au/Web/Software_Rants/Entries/2009/8/14_Apathy_towards_errors_reported_by_software_files/IMG_0607.jpg" length="131611" type="image/jpeg"/>
    </item>
    <item>
      <title>How to bid on GraysOnline</title>
      <link>http://bernard.gondwana.com.au/Web/Software_Rants/Entries/2009/7/27_How_to_bid_on_GraysOnline.html</link>
      <guid isPermaLink="false">62e9aa1a-17eb-4041-ad1c-724d3dfc74bc</guid>
      <pubDate>Mon, 27 Jul 2009 21:10:07 +1000</pubDate>
      <description>&lt;a href=&quot;http://bernard.gondwana.com.au/Web/Software_Rants/Entries/2009/7/27_How_to_bid_on_GraysOnline_files/R0013855.jpg&quot;&gt;&lt;img src=&quot;http://bernard.gondwana.com.au/Web/Software_Rants/Media/object009_1.jpg&quot; style=&quot;float:left; padding-right:10px; padding-bottom:10px; width:364px; height:173px;&quot;/&gt;&lt;/a&gt;I’ve been checking out the new &lt;a href=&quot;http://www.graysonline.com/&quot;&gt;GraysOnline&lt;/a&gt; website and purchased a few items.&lt;br/&gt;It continually amazes me that people pay way too much for items because they don’t know how to place bids.&lt;br/&gt;&lt;br/&gt;There are three things to remember when placing bids for lots. They are the bidding rules.&lt;br/&gt;	1.	Highest bid wins&lt;br/&gt;	2.	Highest quantity wins&lt;br/&gt;	3.	First bidder wins&lt;br/&gt;&lt;br/&gt;So how do these work i hear you say. Well if you take a look at a few lots you’ll find that the same people are placing the lowest possible bids on all of the lots they are willing to purchase and then they leave it until near the closing time of the sale. i.e. If they want to buy a camera of type X they place bids on all the cameras of type X at the lowest price.&lt;br/&gt;When it gets to sale close time they find the lot that still has the lowest price and bid for that item.&lt;br/&gt;&lt;br/&gt;Here comes the tricky bit. You need to decide if you want to place a “standard” bid or an “auto” bid.&lt;br/&gt;A “standard” is a once off bid for the quantity and price entered.&lt;br/&gt;An “auto” bid tells the bidding engine to place an automated bid for the minimum price required to win the quantity selected of the lot up to the maximum bid price entered.&lt;br/&gt;So an auto bid for the next bid price is exactly the same as a standard bid.&lt;br/&gt;&lt;br/&gt;The next thing is that the auctions are real auctions not sales that end at a time. So you can’t “snipe” and auction as it will simply extend the length of the auction.&lt;br/&gt;Don’t understand? Think of a house auction. While people keep bidding the auction keeps going. When people stop bidding the auction closes.&lt;br/&gt;The same is true with GraysOnline, they have a Going, Going, Gone period of 10 minutes after the last bid time after the sale closing time.&lt;br/&gt;So if someone bids on a lot 5 minutes before sale close time, the lot will stay open and in the GGG state for 5 minutes after the sale closes.&lt;br/&gt;If someone else places a bid on the lot then it will stay open for 10 minutes from when the bid is place.&lt;br/&gt;There’s one caveat to this, the GGG time is only extended if the bid placed changes the win price of an item in the sale.</description>
      <enclosure url="http://bernard.gondwana.com.au/Web/Software_Rants/Entries/2009/7/27_How_to_bid_on_GraysOnline_files/R0013855.jpg" length="108803" type="image/jpeg"/>
    </item>
    <item>
      <title>How to write a website to enable automation</title>
      <link>http://bernard.gondwana.com.au/Web/Software_Rants/Entries/2009/7/22_How_to_write_a_website_to_enable_automation.html</link>
      <guid isPermaLink="false">b9d1119c-f4a9-4b36-bb78-e2eff93e9787</guid>
      <pubDate>Wed, 22 Jul 2009 18:47:50 +1000</pubDate>
      <description>&lt;a href=&quot;http://bernard.gondwana.com.au/Web/Software_Rants/Entries/2009/7/22_How_to_write_a_website_to_enable_automation_files/R0013629.jpg&quot;&gt;&lt;img src=&quot;http://bernard.gondwana.com.au/Web/Software_Rants/Media/object010_1.jpg&quot; style=&quot;float:left; padding-right:10px; padding-bottom:10px; width:364px; height:173px;&quot;/&gt;&lt;/a&gt;I’ve been working on a website for the past several months. One of the things that really bugs me is that the developer don’t want to add ID attributes to each of the elements of the website. This is in some respects fair enough because the easy way to do this is enable the ASP.NET ID attributes to be added to the items. This can double the size of the webpage because the lovely people at Microsoft weren’t thinking about that when they developed the feature. I hear a fix is coming for that...&lt;br/&gt;&lt;br/&gt;So why would you want to add ID attributes to items in the first place?&lt;br/&gt;Consider the follow. There is a paragraph in the page that contains a link which can change depending no how the page was accessed, by whom, etc... and you want to check if the link exists in the paragraph.&lt;br/&gt;- The wrong way to do this is to check the whole page to see if each of the possible links exist. This is wrong because a number of negatives is not necessarily a positive.&lt;br/&gt;	-	Another wrong way to do it is to look for a link the that paragraph. This is wrong because it means that you have to know the structure of the page which means that if the structure of the page changes but the content should still be the same the test will fail.&lt;br/&gt;	-	The right way is to check that the link exists by checking if the element can be found with that ID. This enables you to check with out knowing anything about the document structure. Which means that the test will continue to work long after the page has been restructured.</description>
      <enclosure url="http://bernard.gondwana.com.au/Web/Software_Rants/Entries/2009/7/22_How_to_write_a_website_to_enable_automation_files/R0013629.jpg" length="148326" type="image/jpeg"/>
    </item>
  </channel>
</rss>

