<?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>Transentia &#187; Retrospectives</title>
	<atom:link href="http://wordpress.transentia.com.au/wordpress/tag/retrospectives/feed/" rel="self" type="application/rss+xml" />
	<link>http://wordpress.transentia.com.au/wordpress</link>
	<description>transentia pty. ltd.; development, consulting, training at the leading-edge of technology</description>
	<lastBuildDate>Thu, 17 Jun 2010 10:08:36 +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>Five Pages Full Of Golden Words</title>
		<link>http://wordpress.transentia.com.au/wordpress/2010/03/12/five-pages-worth-full-of-golden-words/</link>
		<comments>http://wordpress.transentia.com.au/wordpress/2010/03/12/five-pages-worth-full-of-golden-words/#comments</comments>
		<pubDate>Fri, 12 Mar 2010 10:38:24 +0000</pubDate>
		<dc:creator>bob</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Retrospectives]]></category>

		<guid isPermaLink="false">http://wordpress.transentia.com.au/wordpress/?p=890</guid>
		<description><![CDATA[Here&#8217;s a montage of the pages of an article I wrote for the April 2002 edition of Software Engineering Australia&#8217;s &#8216;Software&#8217; magazine.
I came across my copy of the magazine when I was clearing one of my bedrooms out a few days ago (after heavy rain seeped in through the flashing that sits between slab and [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a montage of the pages of an article I wrote for the April 2002 edition of Software Engineering Australia&#8217;s &#8216;Software&#8217; magazine.</p>
<p>I came across my copy of the magazine when I was clearing one of my bedrooms out a few days ago (after heavy rain seeped in through the flashing that sits between slab and wall and started the carpet rotting. Sigh.).</p>
<p>The article was entitled &#8220;Under the J2EE Umbrella.&#8221; No prizes for guessing what the article was about :-)</p>
<p><img src="http://wordpress.transentia.com.au/wordpress/wp-content/uploads/2010/03/montage.png" alt="montage" title="montage" width="80%" class="alignnone size-full wp-image-891" /></p>
<p>Neither SEA nor &#8216;Software&#8217; exist any longer (wound up in 2005, <a href="http://www.builderau.com.au/news/soa/Software-Engineering-Australia-closes-doors/0,339028227,339181306,00.htm">I believe</a>) but sadly, I have no idea of the copyright/ownership of these golden words so I can&#8217;t actually publish the article.</p>
<p>Still, this should help me recall doing this, when I am old(er) and (more) forgetful.</p>
<p>I (currently) remember writing other articles for &#8216;Software&#8217;&#8230;don&#8217;t know if I still have copies of those lying around&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.transentia.com.au/wordpress/2010/03/12/five-pages-worth-full-of-golden-words/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Happy Birthday Transentia!</title>
		<link>http://wordpress.transentia.com.au/wordpress/2010/01/11/happy-birthday-transentia/</link>
		<comments>http://wordpress.transentia.com.au/wordpress/2010/01/11/happy-birthday-transentia/#comments</comments>
		<pubDate>Sun, 10 Jan 2010 15:00:52 +0000</pubDate>
		<dc:creator>bob</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Retrospectives]]></category>

		<guid isPermaLink="false">http://wordpress.transentia.com.au/wordpress/?p=623</guid>
		<description><![CDATA[
Transentia is Ten years old today.
Transentia is a baby of the dot-com era. We started out wrangling Java and are coming into the second decade having adopted Groovy as a technology platform.
This is a good time to reflect on the origin of the name&#8230;
It all started while I was a member of the &#8220;Business Development&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://wordpress.transentia.com.au/wordpress/wp-content/uploads/2010/01/Happy10thBirthday1.png" alt="Happy10thBirthday" title="Happy10thBirthday" width="678" height="454" class="alignnone size-full wp-image-627" /></p>
<p>Transentia is <em>Ten years old</em> today.</p>
<p>Transentia is a baby of the dot-com era. We started out wrangling Java and are coming into the second decade having adopted Groovy as a technology platform.</p>
<p>This is a good time to reflect on the origin of the name&#8230;</p>
<p>It all started while I was a member of the &#8220;Business Development&#8221; team at <a href="/wordpress/2009/01/02/ah-memories/">DSTC</a>. </p>
<p>After a session wrestling with a group of research staff (collective noun: a <a href="http://www.merriam-webster.com/dictionary/recalcitrant">recalcitrant</a>?) a colleague (who shall remain <a href="http://en.wikipedia.org/wiki/Nameless_One_(Marvel_Comics)">nameless</a>) stormed into my office and yelled &#8220;I don&#8217;t know what we are doing, but it sure as hell isn&#8217;t technology transfer.&#8221; </p>
<p>He came up with the phrase &#8220;Technology Transferention&#8221;, explaining: &#8220;It sounds good and can impress people who don&#8217;t know any better, but it doesn&#8217;t actually mean a darned thing. Exactly right for what we do.&#8221; That phrase got a fair bit of mileage :-)</p>
<p>While casting around for a company name I recalled this event. </p>
<p>I decided that &#8220;Transferention Technologies&#8221; was a bit too much of a mouthful and munged it around a bit; thus the name <em>Transentia</em> was born.</p>
<p>(The alternative was a play on another phrase the team used when confronted with an absurd situation: &#8220;the sky is green, the trees are blue.&#8221; That got a <em>lot</em> of airplay too, but I couldn&#8217;t quite work it into a good company name: &#8220;Green Sky Technologies&#8221; sounds a bit too vomit-induc{ed/ing}.)</p>
<p>Nowadays, there&#8217;s a &#8220;Land of Transentia&#8221; in some online game, a (Japanese?) musician, and a cybersquatter is sitting on &#8216;transentia.com&#8217; (and can continue to sit, as far as I am concerned. I deliberately chose an australian <a href="http://www.transentia.com.au">.com.au</a> domain&#8230;we are a much more exclusive club :-))</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.transentia.com.au/wordpress/2010/01/11/happy-birthday-transentia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle Cloud Computing Roundtable Luncheon</title>
		<link>http://wordpress.transentia.com.au/wordpress/2009/10/10/oracle-cloud-computing-roundtable-luncheon/</link>
		<comments>http://wordpress.transentia.com.au/wordpress/2009/10/10/oracle-cloud-computing-roundtable-luncheon/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 23:01:33 +0000</pubDate>
		<dc:creator>bob</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Retrospectives]]></category>

		<guid isPermaLink="false">http://wordpress.transentia.com.au/wordpress/?p=529</guid>
		<description><![CDATA[&#8220;Cloud Computing &#8211; Strategy, Best Practices, and Lessons Learned&#8221;
Date:  Friday 9 October 2009 
Presenter: Tim Rubin
Venue: Augustine&#8217;s Mansions Private Dining Rooms
First (as always), I&#8217;d like to say &#8220;Thank You&#8221; to Oracle for inviting me along to this event. Even if they actually wanted &#8220;Dale Gately&#8221;, whoever that is (the email just happened to come [...]]]></description>
			<content:encoded><![CDATA[<p><em>&#8220;Cloud Computing &#8211; Strategy, Best Practices, and Lessons Learned&#8221;</em></p>
<p>Date:  <strong>Friday 9 October 2009 </strong><br />
Presenter: <a href="http://www.linkedin.com/in/timothyrubin">Tim Rubin</a><br />
Venue: <a href="http://www.augustines.com.au/">Augustine&#8217;s Mansions Private Dining Rooms</a></p>
<p>First (as always), I&#8217;d like to say &#8220;Thank You&#8221; to Oracle for inviting me along to this event. Even if they actually <em>wanted</em> &#8220;Dale Gately&#8221;, whoever that is (the email just happened to come to me via my domain&#8217;s default drop-box). I guess that I should say &#8220;Thank You, Dale&#8221; as well! Never look a gift-horse in the mouth :-)</p>
<p>I&#8217;m not sure that there was actually any &#8216;Strategy&#8217;, &#8220;Best Practices&#8221; OR &#8220;Lessons Learned&#8221; discussed in the presentation.</p>
<p>The guy sitting next to me summarized his response to Tim&#8217;s spiel as: &#8220;Please don&#8217;t buy into what our competitors are telling you&#8230;give us time to work something out&#8230;&#8221; I guess that&#8217;s about right.</p>
<p>I loved the opening <a href="http://www.businessinsider.com/2008/9/larry-ellison-someone-explain-to-me-this-cloud-computing-thing-my-company-is-committing-to-orcl-">Larry Ellison</a> quote on Cloud Computing:</p>
<blockquote><p>The interesting thing about cloud computing is that we’ve redefined<br />
cloud computing to include everything that we already do. I can’t think of anything<br />
that isn’t cloud computing with all of these announcements. The computer industry<br />
is the only industry that is more fashion-driven than women’s fashion. Maybe I’m<br />
an idiot, but I have no idea what anyone is talking about. What is it? It’s complete<br />
gibberish. It’s insane. When is this idiocy going to stop?</p>
<p>We’ll make cloud computing announcements. I’m not going to fight this thing. But I<br />
don’t understand what we would do differently in the light of cloud computing other<br />
than change the wording of some of our ads. That’s my view.</p></blockquote>
<p>The participants (all CIOs and CTOs&#8230;whoever Dale Gately is, he&#8217;s clearly more important than I am) were&#8230;a confused lot, it seems to me. This is what I picked up on:</p>
<ul>
<li>We are going to &#8216;do&#8217; &#8220;Cloud Computing.&#8221;</li>
<li>We don&#8217;t really know what it is.</li>
<li>We don&#8217;t really know why we should be doing it.</li>
<li>We are sceptical that it will buy us anything. At all. In fact, all we can see are a myriad of problems.</li>
<li>Still, everyone tells us that we should &#8216;do&#8217; &#8220;Cloud Computing&#8221;, so we will.</li>
</ul>
<p>The event&#8217;s organiser/host made an interesting comment something along the lines of &#8220;In Brisbane, we always meet with a healthy &#8217;show-me-the-money&#8217; attitude. Much more so than in the other states.&#8221; Decoded, this means: &#8220;Damn! You luddites are giving me a hard time again. I didn&#8217;t get this from Sydney or Melbourne.&#8221;</p>
<p>One question was repeated a couple of times with various phrasing whch I&#8217;ll summarize as: &#8220;If we do &#8216;do&#8217; &#8220;Cloud Computing&#8221;, will we still have to do all that yukky Systems Integration?&#8221; I&#8217;d have hoped that a roomful of CTOs and CIOs would have a bit more of a grasp on things than they apparently have, but that&#8217;s life. To his credit, the presenter&#8217;s answer was quite correct: &#8220;Of course! You&#8217;ll still need to undertake a good round of Business Process Reengineering to get the benefits of this (or any new) technology.&#8221;</p>
<p>A few interesting tidbits/notes:</p>
<p>In a typical data center, the <a href="http://www.uptimeinstitute.org/">Uptime Institute</a> found that up to 30% of servers are &#8216;dead&#8217; (ie with &lt;10% utilization).</p>
<p>According to Tim, the major benefit of Cloud Computing is reduced time/cost to provision a system.</p>
<p>According the to Oracle Cloud Computing survey:</p>
<ul>
<li>~24% of respondents saw cloud computing as a way of saving (unspecified) costs</li>
<li>~20% saw (unspecified) &#8216;Architectural&#8217; benefits</li>
<li>~18% considered Cloud Computing to be strategic, in some unspecified way</li>
<li>~15% considered that Cloud Computing offered a revenue-raising opportunity</li>
</ul>
<p>Tim gently made fun of these statistics by pointing out how they seem to show a herd mentality following a fad (my interpretation of his comments).</p>
<p>Tim pointed out that Cloud Computing may actually cost more than self-hosting if you provision it properly and account for it fully (without all the funny intra-organizational &#8216;tweaks&#8217; that are often so beloved).</p>
<p>The fact that Cloud Computing introduces a whole new swag of failure modes, critical infrastructure points and training issues was pretty well glossed over (and would probably have taken all the allotted time anyway!).</p>
<p>SLAs and legal issues were almost completely ignored.</p>
<p>IMHO the SLA is probably the most critical aspect of Cloud Computing adoption, and here&#8217;s why:</p>
<p>Let&#8217;s say I buy into a cloud on the basis that my cloud will be provisioned for a &#8216;normal&#8217; load, but can be scaled on-demand to enable me to handle the bursts that come along every now and then. Everyone in an organization does their timesheet on a Friday morning, so that&#8217;s a good illustration. The timesheet system probably runs at 0.01% of maximum load during the rest of the week and so constitutes &#8216;waste&#8217;, according to the Cloud Computing credo. Consider that the cloud vendor is only going to make money by ensuring that his infrastructure is as maximally profitable as possible and so wants to handle the load with as little equipment/effort (= as highly shared between customers) as possible.  How do you write an SLA that says: &#8220;I need my peak load traffic to be successfully dealt with, REGARDLESS of the traffic being offered at the same time by any of your other customers.&#8221; All the other customers have their timesheets to fill in, remember; their peak is Friday morning as well. The only way a cloud vendor could make an appropriate guarantee would be to provision a data center in exactly the same way as we do now: for maximal utilization and accept that the normal usage is going to be very wasteful. This will fly in the face of the vendor&#8217;s business case and make their life almost prohibitively expensive.</p>
<p>So: you want to be in the cloud? Expect to achieve worse service (in some unspecified/unspecifiable way). You may not get bitten, but you WILL need to decide how painful a bite you can potentially stand.</p>
<p>Tim makes the very good statement: &#8220;Any application that gives you a competitive advantage should NOT be in the cloud.&#8221; Good advice.</p>
<p>Overall, I came away feeling &#8216;unenlightened&#8217; and a little miffed at the shallowness of the coverage.</p>
<p>I didn&#8217;t even get a desert at the end of the meal &#8216;cos the caterers had run out :-(</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.transentia.com.au/wordpress/2009/10/10/oracle-cloud-computing-roundtable-luncheon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&quot;Hi! I&#039;m Tux The Linux Penguin&quot;</title>
		<link>http://wordpress.transentia.com.au/wordpress/2009/04/28/hi-im-tux-the-linux-penguin/</link>
		<comments>http://wordpress.transentia.com.au/wordpress/2009/04/28/hi-im-tux-the-linux-penguin/#comments</comments>
		<pubDate>Tue, 28 Apr 2009 17:04:13 +0000</pubDate>
		<dc:creator>bob</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Retrospectives]]></category>

		<guid isPermaLink="false">http://wordpress.transentia.com.au/2009/04/28/hi-im-tux-the-linux-penguin/</guid>
		<description><![CDATA[Picked this up in December 1999 at the Linux/Open Source Bazaar, Jacob K. Javits Centre, New York. 

It has a tag on its &#8216;behind&#8217; saying &#8220;Hi! I&#8217;m Tux The Linux Penguin&#8221; The badge has the heading &#8220;Penguin Power.&#8221; 
The badge also uses the quaint spelling &#8216;LinuX&#8217;, which proves how old it is: who would spell [...]]]></description>
			<content:encoded><![CDATA[<p>Picked this up in December 1999 at the Linux/Open Source Bazaar, Jacob K. Javits Centre, New York. </p>
<p><img src="/wordpress/wp-content/uploads/2009/04/linux-tux.jpg" /></p>
<p>It has a tag on its &#8216;behind&#8217; saying &#8220;Hi! I&#8217;m Tux The Linux Penguin&#8221; The badge has the heading &#8220;Penguin Power.&#8221; </p>
<p>The badge also uses the quaint spelling &#8216;LinuX&#8217;, which proves how old it is: who would spell it that way nowadays!</p>
<p>I was presenting a 2-day tutorial session on Linux (RedHat 5.2). I have mentioned <a href="/wordpress/2009/02/26/more-t-shirts/">another trophy</a> before.</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.transentia.com.au/wordpress/2009/04/28/hi-im-tux-the-linux-penguin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>More T-Shirts!</title>
		<link>http://wordpress.transentia.com.au/wordpress/2009/02/26/more-t-shirts/</link>
		<comments>http://wordpress.transentia.com.au/wordpress/2009/02/26/more-t-shirts/#comments</comments>
		<pubDate>Thu, 26 Feb 2009 16:50:41 +0000</pubDate>
		<dc:creator>bob</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Retrospectives]]></category>

		<guid isPermaLink="false">http://wordpress.transentia.com.au/2009/02/26/more-t-shirts/</guid>
		<description><![CDATA[Apologies if this site seems to be becoming more about clothing/baggage than about IT!
This T-shirt is a fairly recent acquisition, from the Energex/SPARQ TCE Project that I have  written about before:
 
This one is a lot older:
 
It was given to me by one of the Enhydra guys in December 1999 at the Linux/Open [...]]]></description>
			<content:encoded><![CDATA[<p>Apologies if this site seems to be becoming more about clothing/baggage than about IT!</p>
<p>This T-shirt is a fairly recent acquisition, from the <a href="http://www.energex.com.au/">Energex</a>/<a href="http://www.sparq.com.au/">SPARQ</a> TCE Project that I have  <a href="/wordpress/2009/02/06/when-trouble-comes-a-knockin/">written about before</a>:</p>
<p><img src="/wordpress/wp-content/uploads/2009/02/tce-frc-t-shirt.jpg" width="450" /> </p>
<p>This one is a lot older:</p>
<p><img src="/wordpress/wp-content/uploads/2009/02/enhydra-t-shirt.jpg"  width="450" /> </p>
<p>It was given to me by one of the Enhydra guys in December 1999 at the Linux/Open Source Bazaar, Jacob K. Javits Centre, New York. I was presenting a 2-day tutorial session on Linux (RedHat 5.2). </p>
<p>My &#8220;body clock&#8221; was exactly 12 hours out of alignment but it was a lot of fun. For example: the organisers arranged for us to have free, unfettered access to the famous <a href="http://www.fao.com/home.jsp">FAO Schwartz Toy Store</a> for a night&#8230;the perfect entertainment for a bunch of geeks! Another choice moment: watching the audience practically boo Corel CEO Michael Cowpland (I think; might have been RedHat CEO Bob Young&#8230;.my jet-lagged memory is a little hazy here but it keeps pushing a fedora at me&#8230;) offstage for daring to suggest that Linux would eventually have to be commercialised and become a money-making product before it could actually &#8220;rule the world.&#8221; <a href="http://en.wikipedia.org/wiki/Richard_Stallman">Richard Stallman</a> and <a href="http://en.wikipedia.org/wiki/Eric_S._Raymond">Eric Raymond</a> were practically having fits, as were many of the faithful in the audience. How times have changed&#8230;</p>
<p>This was pretty much the first &#8216;real&#8217; Transentia engagement, so this T-shirt really does bring back a favourite memory.</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.transentia.com.au/wordpress/2009/02/26/more-t-shirts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Universe of Apps&#8230;and Pain</title>
		<link>http://wordpress.transentia.com.au/wordpress/2009/02/14/a-universe-of-appsand-pain/</link>
		<comments>http://wordpress.transentia.com.au/wordpress/2009/02/14/a-universe-of-appsand-pain/#comments</comments>
		<pubDate>Sat, 14 Feb 2009 20:42:16 +0000</pubDate>
		<dc:creator>bob</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Retrospectives]]></category>

		<guid isPermaLink="false">http://wordpress.transentia.com.au/2009/02/14/a-universe-of-appsand-pain/</guid>
		<description><![CDATA[This is the last project I worked on at Energex/SPARQ; the &#8220;Universal Logging System.&#8221;
The task was to produce a suite of applications capable of browsing the fairly substantial amount of live and historical/archived substation data.
Man, I gave myself trouble! 
Like a fool, I insisted on the &#8220;buy not build&#8221; mantra right up to the point [...]]]></description>
			<content:encoded><![CDATA[<p>This is the last project I worked on at Energex/SPARQ; the &#8220;Universal Logging System.&#8221;</p>
<p>The task was to produce a suite of applications capable of browsing the fairly substantial amount of live and historical/archived substation data.</p>
<p>Man, I gave myself trouble! </p>
<p>Like a fool, I insisted on the &#8220;buy not build&#8221; mantra right up to the point when it became clear that&#8211;wish as I might&#8211;it was really <em>not possible</em> to buy anything that could handle the type and <em>quantity</em> of data involved. To be more precise, the available budget was a few <a href="http://en.wikipedia.org/wiki/Order_of_magnitude">orders of magnitude</a> smaller than the available commercial toolsets but the effect was the same.</p>
<p><img src="/wordpress/wp-content/uploads/2009/02/uls-web-montage.jpg" /> </p>
<p>So: having expended (wasted is a little too strong a term&#8230;there were some learning outcomes, after all) a fair amount of time attempting to bend the likes of <a href="http://www.eclipse.org/birt/phoenix/">Eclipse BIRT</a>, <a href="http://www.pentaho.com/">Pentaho</a> and <a href="http://www.sap.com/solutions/sapbusinessobjects/sme/reporting/crystalreports/index.epx">Crystal Reports</a> to my will, I was faced with having to build a large-ish integration framework and associated suite of applications from scratch in a compressed timeframe.</p>
<p>It goes against the grain but OK&#8230;time to start building from scratch.</p>
<p>I chose to use a graphing tool called <a href="http://www.steema.com/">TeeChart</a>. TeeChart was recommended to me by a colleague who had used it before and trusted it. A few bugs aside, it works well and can handle lots of data quite nicely. As for the rest: Spring and Spring modules (Caching, Valang); a four instance JBoss cluster on RHEL4; JRockit as the JVM&#8230;</p>
<p>All went well, initially. I hummed along putting together a nice swing-based framework allowing for the integration of disparate datasources and it finally seemed like I was back on track.</p>
<p>Until this point, I had been building with Spring MVC/Webflow but I had wanted to &#8220;move on up the food chain&#8221; and get the company using JSF. I duly adopted RichFaces and set about building a nice, tabbed interface.</p>
<p>This hummed along for a while until a &#8216;gotcha&#8217; appeared (you knew one would, didn&#8217;t you&#8230;).</p>
<p>In my design, each tab in the UI would represent a parameter-entry form, designating the required datasource and associated query parameters. This could be templated out easily enough into small included files, would be quick and easy to understand and so would be correspondingly easy to build.</p>
<p>(You will see the sort of interface I was trying to get build when I get to the Swing app. that was part of the application suite, a bit later in this tale of woe.)</p>
<p>There is a little entry in the <a href="https://facelets.dev.java.net/">facelets</a> FAQ entitled &#8220;<a href="http://wiki.java.net/bin/view/Projects/FaceletsFAQ#I_m_getting_Duplicate_ID_Errors">I&#8217;m getting Duplicate ID Errors (and Bindings)</a>&#8220;:</p>
<blockquote><p>This can be caused by a couple things. The first is when you use JSTL or logical predicates in your templates which add or remove components based on some volatile logic in your model. It&#8217;s not so much the case that your component tree can&#8217;t change between requests, but you do open opportunities for errors to occur. <strong>Sometimes</strong> explicitly providing id&#8217;s to your components corrects this problem such that JSF has no way of <strong>accidentally</strong> assigning a duplicate. </p>
<p>The second way this can happen is when you using &#8216;binding&#8217; attributes on your components. If you are binding components to anything other than request-scope, you can run into problems where components, and their assigned identifiers, get injected into another page, conflicting with their identifiers. Again, you can <strong>attempt</strong> to provide explicit id&#8217;s to your components to avoid conflict and guarantee uniqueness, but it doesn&#8217;t fix the greater issue with application/session scoped bindings: </p>
<p>1) UIComponents are not Serializable&#8211; and therefore cannot be clustered </p>
<p>2) UIComponents are not thread safe can cannot be used by multiple requests at once </p>
<p>Binding UIComponents to backing beans is actually something worth doing to ease particular use cases. Instead of using a session/application scoped bean, use a request-scoped composite mediator that receives your session beans and the UIComponent instance to coordinate behavior. The injection of your session-scoped beans can be managed with the faces-config managed-property or with any of the 3rd party extensions such as Spring 2.0 or Seam.</p>
</blockquote>
<p>Those key-words that I have highlighted shot the whole UI down in flames. I was 80% of the way through and could <strong>not</strong> continue to use JSF. To this day, I have no solution, and I note that the FAQ entry remains.</p>
<p>I had to restart the UI using basic Spring MVC and foregoing all the AJAX-y goodness that Richfaces would have given me (yes, I could have picked another AJAX framework, but at this point I was well and truly shell-shocked and only wanted to hide under my desk. I definitely didn&#8217;t want yet another setback).</p>
<p>I have to give it to my manager: he coped with all these setbacks <strong>admirably</strong>. Thank you, Gary!</p>
<p>Thus the application suite as shown above was developed.</p>
<p>And shown to the &#8216;users.&#8217; They hated it!</p>
<p>There had been a long discussion over web-app vs. desktop app that had finally come down on the web-app side. Oh Well!</p>
<p>I had continually been showing the app to various &#8220;interested parties&#8221;, tweaking and fiddling based on suggestions/feedback. The time to demo to the &#8220;world at large&#8221; rolled around. During the demo, one of my main contacts decided to go feral and panned everything about the project: the existing system was perfect; the new features weren&#8217;t useful (to him); the colors (chosen to be <em>precisely</em> the same) were bad, etc., etc. In fact, it was <em>all a complete disaster that proved how incompetent I and my colleagues were</em>!</p>
<p>Once the dust had settled on this, two facts became obvious:<br />
1. he was one of the developers of the old system and perhaps felt a little &#8216;threatened&#8217;<br />
2. his problem was not with the suite at all, but turned out to be with the settings established for IE6 by the corporate SOE policy.</p>
<p>In the end, much of the fuss came down to one little checkbox:</p>
<p><img src="/wordpress/wp-content/uploads/2009/02/uls-ie-opts.jpg" /> </p>
<p>Once we had set up his IE6 to create new windows as needed, rather than reuse existing windows (and potentially lose what was happening in that window), all settled down.</p>
<p>One never know, does one!</p>
<p>Still, it was decided to &#8216;deemphasise&#8217; the web-version (it was pretty much functionally complete, anyway) and start on a pure desktop UI that would talk to the middle tiers of the system but provide an IE6-free &#8216;experience.&#8217;</p>
<p>This piccy shows the Swing-based desktop application:</p>
<p><img src="/wordpress/wp-content/uploads/2009/02/uls-app.jpg" /> </p>
<p>This app used TeeChart (for its already-mentioned ability to handle large datasets, but also because it handles interactivity quite well) with a few SwingX components thrown in.</p>
<p>It is a shame that time/money eventually caught up with me and I didn&#8217;t get to complete it.</p>
<p>On the other hand, I was exhausted and happy to see a halt. The project had been a sequence of disasters, technically and &#8216;politically.&#8217;</p>
<p>I&#8217;ll never trust JSF again, that&#8217;s for sure.</p>
<p>I&#8217;m also more convinced than ever that &#8220;thou shalt <strong>never</strong> contemplate one-person projects.&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.transentia.com.au/wordpress/2009/02/14/a-universe-of-appsand-pain/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Another Bit of Personal/Professional History</title>
		<link>http://wordpress.transentia.com.au/wordpress/2009/02/13/another-bit-of-personalprofessional-history/</link>
		<comments>http://wordpress.transentia.com.au/wordpress/2009/02/13/another-bit-of-personalprofessional-history/#comments</comments>
		<pubDate>Fri, 13 Feb 2009 09:36:07 +0000</pubDate>
		<dc:creator>bob</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Retrospectives]]></category>

		<guid isPermaLink="false">http://wordpress.transentia.com.au/2009/02/13/another-bit-of-personalprofessional-history/</guid>
		<description><![CDATA[This time, the &#8216;CoalCraft&#8217; System, circa 1999~2001.
I built this while working for the now-disbanded DSTC, alongside my colleage and good friend Dennis Remmer. We both continued our involvement after leaving DSTC (I set up Transentia and Dennis established eTwo; &#8220;expertise for an advanced internet&#8221;)
CoalCraft is a modern distributed system that brings together providers of information [...]]]></description>
			<content:encoded><![CDATA[<p>This time, the &#8216;CoalCraft&#8217; System, circa 1999~2001.</p>
<p>I built this while working for the now-disbanded DSTC, alongside my colleage and good friend <a href="http://logicaltech.com.au/index.php?option=com_content&#038;task=view&#038;id=206&#038;Itemid=0">Dennis Remmer</a>. We both continued our involvement after leaving DSTC (I set up Transentia and Dennis established <a href="http://www.etwo.com.au/">eTwo; &#8220;expertise for an advanced internet&#8221;</a>)</p>
<blockquote><p>CoalCraft is a modern distributed system that brings together providers of information of various resources (such as Coal Producers, Power Stations, Transport Schedulers, etc.) through a &#8220;brokering&#8221; service, to an arbitrary number of users. Information providers are able to maintain their own repository in its native format and provide a window into it by registering with a provider &#8220;map.&#8221; Information users are able to access real-time information for analysis without requiring significant local system resources for data storage.</p>
</blockquote>
<p>The following should give you an idea regarding how it was constructed and promoted:</p>
<blockquote><p>CoalCraft has been constructed to be platform independent and is implemented in pure Java:<br />
* CoalCraft’s Object-Oriented construction makes it easily extensible and flexible.<br />
* CoalCraft uses Java’s Remote Method Invocation (RMI) system as the underlying distribution mechanism allowing Object-Oriented communication. This provides ease of development and makes it easy to ‘plug’ Providers into the system.<br />
* The CoalCraft client application is constructed using Java’s second-generation ‘Swing’ Graphical User Interface components and this allows for a sophisticated user interface.<br />
* The CoalCraft client application exports data in XML, the upcoming standard format for data interchange. This keeps the system open and allows further processing of data obtained via the CoalCraft system to be carried out with ease.</p>
</blockquote>
<p>Here&#8217;s the obligatory piccy:</p>
<p><img src="/wordpress/wp-content/uploads/2009/02/coalcraft.gif" /></p>
<p>During the early 2000s, we schlepped the system around to various potential users (assisting the client) and even ran a small &#8216;live&#8217; trial with some interested parties but in the end it didn&#8217;t get anywhere (I think we needed a better spruiker and a bit more $$$ for P.R. than was available).</p>
<p>Still, it was &#8220;leading-edge&#8221; at the time and the client asked me to assist in preparing a patent application, which was a new thing for me so I guess it deserves a small footnote in history&#8230;such as the one just here.</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.transentia.com.au/wordpress/2009/02/13/another-bit-of-personalprofessional-history/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Further Back in History</title>
		<link>http://wordpress.transentia.com.au/wordpress/2009/02/09/further-back-in-history/</link>
		<comments>http://wordpress.transentia.com.au/wordpress/2009/02/09/further-back-in-history/#comments</comments>
		<pubDate>Mon, 09 Feb 2009 13:22:41 +0000</pubDate>
		<dc:creator>bob</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Retrospectives]]></category>

		<guid isPermaLink="false">http://wordpress.transentia.com.au/2009/02/09/further-back-in-history/</guid>
		<description><![CDATA[I thought I&#8217;d dig a bit further back into my personal history and take a look at the Intelligent Filestore Project.
This project started at Manchester University and was taken to The University of Essex by it&#8217;s head, Prof. Simon Lavington. It&#8217;s aim was to make prolog-database-style knowledge management efficient by building a highly parallel hardware [...]]]></description>
			<content:encoded><![CDATA[<p>I thought I&#8217;d dig a bit further back into my personal history and take a look at the <a href="http://www.springerlink.com/content/pmt85143r7p93072/">Intelligent Filestore</a> Project.</p>
<p>This project started at Manchester University and was taken to The University of Essex by it&#8217;s head, Prof. Simon Lavington. It&#8217;s aim was to make prolog-database-style knowledge management efficient by building a highly parallel hardware search engine.</p>
<p>The project won a couple of awards&#8230;a Silver medal from the BCS (before my time, when the project was still at Manchester Uni.) and a Bronze award from the Alvey Directorate (the people paying the bills).</p>
<p>The kit had a hardware &#8220;Lexical Token Converter&#8221; (a hashtable for symbols), a main controller CPU and 128 custom designed and built search processors, each with 128Mb of RAM (this was the mid-80&#8217;s, remember).</p>
<p>You can see this hardware:<br />
<img src="/wordpress/wp-content/uploads/2009/02/essexifsrack.jpg" /> </p>
<p>It isn&#8217;t me in the picture&#8230; Actually, I had <em>more</em> hair in those days.</p>
<p>This picture shows two of the systems: the dev/test rack and a finished half-height cabinet (at the right). This unit was eventually shipped off to the University of Edinburgh&#8217;s Artificial Intelligence Applications Institute.</p>
<p>My job involved adapting a bog-standard Sun 3/75 VME-bus based workstation to act as the controller for the specialised hardware. It&#8217;s in the picture, on the half-height rack. This work was interesting&#8230;we even got the schematics for the box from Sun (under an NDA) and eventually found a bug in their hardware. Of course, they found lots of bugs in ours&#8230;</p>
<p>I also found myself doing a lot of general Sysadmin-y stuff on a variety of unix-based kit (including SunOS boxes, Microvaxen, High level Haradware &#8216;Orion&#8217; , GEC-63 stuff). This was also a lot of fun. I cut and sharpened my unix/sysadmin teeth here, and *I* think they remain sharp to this day!</p>
<p>I also played a lot of sport: badminton, squash, tennis. This accounts for the wreckage that is my shoulder these days.</p>
<p>I learned  a few useful things  on this project:</p>
<ul>
<li>All hardware <em>must</em> include 1+ 7-segment LEDs to that you know what the hell is going on.
</li>
<li>It <em>is</em> possible to write one academic paper per decade. All one then needs to do is reshuffle the paragraphs and resubmit&#8230;it&#8217;ll get published <em>somewhere</em>&#8230;
</li>
<li><a href="http://en.wikipedia.org/wiki/Clarke's_three_laws">Any sufficiently advanced technology is indistinguishable from magic</a> (Clarke&#8217;s 3rd law); &#8220;sufficiently advanced&#8221; is not the same as &#8220;truly advanced&#8221; and is very much according to the eye of the beholder.
</li>
<li>&#8220;Thou shalt not work with team &#8216;mates&#8217; that are continually getting up and coming down.&#8221; Nefarious substances can do strange things to people and it is really hard to get a team to ship product when the team doesn&#8217;t know what day it is or what state they may have left their wife in as a result of last night&#8217;s binge. The threat of physical violence in the workplace is not conducive to one&#8217;s best work&#8230;
</li>
<li>If a system needs a reboot, people will complain irrespective of how regularly the system is rebooted or how much advance notice was given. Ignore the complainers and remind them that the rest of the world generally wakes somewhat before noon.
</li>
<li>&#8220;I just found out&#8230;&#8221; is <em>not</em> the same as &#8220;I just performed world-class research.&#8221; Unless you are applying for a research grant, when it is.
</li>
<li>Just because it has always been done &#8220;that way&#8221; doesn&#8217;t mean that it can only be done &#8220;that way.&#8221;
</li>
</ul>
<p>As an example of the latter bit of wisdom: the Manchester Uni. team had always performed their IPLs (Initial Program Loads) by shipping S-record encoded binaries via a  serial port interface on the main board; a slow and error prone process. This is what they had always done. It was what everybody did. Not knowing that, I came along and wrote a 10-line &#8216; C&#8217; loader program that ran on a daughter board and simply mapped in the appropriate memory and pushed the requisite bits into the mapped-in segment. Immeasurably faster and easier&#8230;</p>
<p>Here&#8217;s a little secret: the project was demonstrating to &#8220;The Minister&#8221; for Science and <em>the hardware just wasn&#8217;t working!</em> The software-only simulator was, so we just demoed that, all the while running a diagnostic tool to ensure that the actual hardware&#8217;s status lights were flashing happily. The Minister asked a question: &#8220;Is it fault-tolerant, as well?&#8221; One of my colleagues said &#8220;Of Course!&#8221; and reached down into the rack and pulled out a known-dud board. The simulator (of course) didn&#8217;t miss a beat and the status lights on all the remaining boards kept flashing happily. &#8220;Amazing!&#8221; said The Minister and walked away, very impressed.</p>
<p>Happy days!</p>
<p>Now an exercise for you, gentle reader: go back and brush up on Clarke&#8217;s 3rd law, it you still haven&#8217;t understood it&#8230;</p>
<p>For all it&#8217;s ups and downs, this was a good job. I made friends that I still keep in touch with, I learned a LOT, had a good time and at the end, it was a stepping stone for me to get a lecturer&#8217;s post in the University of East Asia, Macau. </p>
<p>One can&#8217;t really ask for more from a job, can one!</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.transentia.com.au/wordpress/2009/02/09/further-back-in-history/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>When Trouble Comes A-Knockin&#039;</title>
		<link>http://wordpress.transentia.com.au/wordpress/2009/02/06/when-trouble-comes-a-knockin/</link>
		<comments>http://wordpress.transentia.com.au/wordpress/2009/02/06/when-trouble-comes-a-knockin/#comments</comments>
		<pubDate>Fri, 06 Feb 2009 22:15:53 +0000</pubDate>
		<dc:creator>bob</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Retrospectives]]></category>

		<guid isPermaLink="false">http://wordpress.transentia.com.au/2009/02/06/when-trouble-comes-a-knockin/</guid>
		<description><![CDATA[That&#8217;s when TCE Answers.
TCE is a call-centre application that I wrote a few years ago that takes an operator through a scripted interaction with a caller, gathering data as it goes so that an appropriate remedial action can be scheduled before the caller hangs up.
Here&#8217;s a couple of piccys:


My CV says:
Development of Energex’s &#8220;Trouble Call [...]]]></description>
			<content:encoded><![CDATA[<p>That&#8217;s when TCE Answers.</p>
<p>TCE is a call-centre application that I wrote a few years ago that takes an operator through a scripted interaction with a caller, gathering data as it goes so that an appropriate remedial action can be scheduled before the caller hangs up.</p>
<p>Here&#8217;s a couple of piccys:</p>
<p><img src="/wordpress/wp-content/uploads/2009/02/tce-main.jpg" /></p>
<p><img src="/wordpress/wp-content/uploads/2009/02/tce-montage.jpg" /></p>
<p>My CV says:</p>
<blockquote><p>Development of Energex’s &#8220;Trouble Call Entry&#8221; call-centre application using the Spring 2.0 Framework with Spring WebFlow. The system is required to support 250 concurrent users and runs using the JRockit Server-side JVM on a load-balanced cluster of JBoss 4.2.0 application servers hosted by Redhat Enterprise Linux 4.2. Performance Testing was undertaken using HP’s LoadRunner tool.</p>
</blockquote>
<p>It was a good project and I thank the guys at Energex/SPARQ for getting me in to design and build it.</p>
<p>All the webby technologies that I brought to bear (the Spring Framework proper, Spring WebFlow, Spring Valang, Apache XFire WebServices, Toplink JPA) played very well together.</p>
<p>The host RHEL4 systems also behaved very nicely; I set up a pair of servers in a geographically separate arrangement so that if a <a href="http://news.bbc.co.uk/1/hi/uk/869482.stm">rain of dead fish</a> put one site out of commission, at least the other site could continue supporting operations. I had some slight concern about performance but subsequent load testing put my mind to rest on that score.</p>
<p>JBoss (a 4-instance cluster split across the two servers) was simple and reliable, as always.</p>
<p>I learned quite a bit (this is the obligatory opinionated part of the post): about how important it is to fight people&#8217;s misconceptions as soon as they arise, about how a good project manager really is worth his/her weight in gold, and about how a bad project manager can be deadly (I am thinking here of one woman who insisted that she would be the sole point of contact between me and the actual product owner and eventual users. &#8220;Coders simply can&#8217;t understand the business users, so you must always only talk to me.&#8221; I stomped on that little impending disaster area <em>pretty quickly</em>!).</p>
<p>I also learned (was reminded again, I should say) that although one can argue a point based on one&#8217;s experience, any possible argument will mean <em>nothing</em> if it doesn&#8217;t talk to the other person&#8217;s experience; the comment &#8220;my experience tells me this will end up costing you much more in the long run and will lead to all sorts of trouble&#8221; really means nothing if the other person&#8217;s experiences don&#8217;t cover the same context/domain. &#8220;How can you explain colour to a man born blind?&#8221; (from the philosopher <a href="http://ebooks.adelaide.edu.au/l/locke/john/l81u/B3.4.html">John Locke</a>?)</p>
<p>Shortly after the application went live, Brisbane played host to one of its regular storms and the application got its &#8220;baptism.&#8221; After the storm was over, I received an email that said, in part:</p>
<blockquote><p>Feedback from [&#8230;manager&#8230;] was extremely complementary about not only the performance and effectiveness of TCE but all SPARQ supported systems that support customer response.</p>
<p>[&#8230;manager&#8230;] passed on his and the thanks of ENERGEX for the great work that has been done on our storm systems. He commented that &#8220;Looks like the work on our new systems such as TCE, CVU and others worked really well over the last few days as a trial-by-fire. All feedback I have had is that the systems worked well, are good to use, and are very effective. Great step forward, thanks&#8221;! &#8211; Now for storm season!&#8221;</p>
</blockquote>
<p>As far as I know, <strong>not one</strong> bug report has been filed against the application. That&#8217;s something to be proud of, I recon.</p>
<p>So: if you live in Brisbane and phone up to report an emergency Loss Of Supply event, you now know a little bit about the software guiding the Call Centre Operator you are speaking to&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.transentia.com.au/wordpress/2009/02/06/when-trouble-comes-a-knockin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oh, BABI!</title>
		<link>http://wordpress.transentia.com.au/wordpress/2009/02/05/oh-babi/</link>
		<comments>http://wordpress.transentia.com.au/wordpress/2009/02/05/oh-babi/#comments</comments>
		<pubDate>Thu, 05 Feb 2009 23:22:40 +0000</pubDate>
		<dc:creator>bob</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Retrospectives]]></category>

		<guid isPermaLink="false">http://wordpress.transentia.com.au/2009/02/05/oh-babi/</guid>
		<description><![CDATA[This is a piccy of BABI&#8230;an application I built for a client a few years back (used with permission):
 
This image shows a schematic of an electricity substation. The main panel shows the current to-the-second state of the substation. The image is actually an SVG document that can be zoomed and panned and certain on-screen [...]]]></description>
			<content:encoded><![CDATA[<p>This is a piccy of BABI&#8230;an application I built for a client a few years back (used with permission):</p>
<p><img src="/wordpress/wp-content/uploads/2009/02/ast_schem.jpg" /> </p>
<p>This image shows a schematic of an electricity substation. The main panel shows the current to-the-second state of the substation. The image is actually an <a href="http://www.w3.org/Graphics/SVG/">SVG</a> document that can be zoomed and panned and certain on-screen elements can be activated to actually control the sub&#8217;s activities. A given substation may have many panels like the one shown here.</p>
<p>Here&#8217;s how my CV describes the BABI project:</p>
<blockquote><p>Development of a &#8220;world first&#8221; tool using C/J2EE and Scaleable Vector Graphics (SVG) to enable monitoring/control/visualisation of individual substations in [client]’s real-time SCADA system.&#8221;</p>
</blockquote>
<p>It was an interesting project.</p>
<p>It is an open-standards based system using all the technologies that any web-oriented Java-head will have cut his/her teeth on. It offered XML-based configuration (and I built a tool chain to automatically generate about 80% of that from existing configuration files [some of which were PDP-11 binary dump files]), It used AJAX before the term was coined and it interfaced with fairly grungy C code (that, I am told, traces its ancestry back to assembly-language code built for an in-house operating system running on a PDP-7). On top of all that, it was written to live close to the hardware embedded in the bowels of a substation and also to provide a service to the corporate network to provide management with up-to-date oversight into the power network.</p>
<p>I don&#8217;t think that there is anywhere else in the world that has tried to do both command <em>and</em> control using these technologies and techniques.</p>
<p>I am proud of it.</p>
<p>While I was hacking it, I received a couple of visits from guys from the Canadian power systems specialists <a href="http://www.snc-lavalin.com/index.php?lang=en">SNC-Lavalin</a> who were blown away by the possibilities the project showed. SNC-Lavalin are trying to migrate away from their home-grown technologies and solutions to more open systems. I hope and believe that this project (in some small way) helped point them along the way&#8230;</p>
<p>Sadly, other than my own sense of self-satisfaction, I am not sure what else I can take away from the project: from the start I ran into all sorts of opposition from my colleagues (engineers and inveterate C-heads all): it was too slow, it took too much RAM (it ran under IBM&#8217;s J9 J2ME JVM on a Pentium II box with 128M of RAM), it used an externally-sourced framework and so was inherently &#8216;untrustworthy&#8217;, Java could never do anything &#8216;real&#8217;, it wasn&#8217;t thread-safe (whoops! a little bug there&#8230;in the JNI/C side, ironically [that wasn&#8217;t deliberate, honest!]), SVG was untried and doomed, ditto Javascript, ditto XML, one can&#8217;t trust a browser to support a &#8216;real&#8217; application, etc., etc.</p>
<p>I&#8217;m pretty sure that [client] will do away with it as soon as they possibly can find the excuse to do so (the grapevine tells me that this is already happening). So much easier retreating into a well-tried and trusted comfort zone than trying to learn and understand what they actually have on their hands (a powerful and adaptable bit of infrastructure, if I do say so myself) and we all know that building a whole system from scratch is <em>so</em> much better and more satisfying than relying on open (source) standards like much of the rest of the world&#8230;</p>
<p>Note that this was technically a fairly successful project, was driven by management requirements, was demoed to and received management blessing (thanks, guys!) all through the development process, and so on.</p>
<p>Still, when push comes to shove, none of my colleagues want to maintain it and keep applying it&#8230;seems like none of them want to be &#8216;tainted&#8217; by Java&#8230;</p>
<p>I must say that I found/find this visceral, ideologically-driven response vaguely depressing.</p>
<p>[<a href="http://www.infoq.com/presentations/A-Story-of-Project-Failure-Mitch-Lacey">This presentation</a> resonated with me, when I first watched it.]</p>
<p>The aphorism that most readily comes to mind is: &#8220;You can take a horse to water, but you cannot make it drink.&#8221; </p>
<p>That is actually lesson 1.</p>
<p>There IS one other lesson I can take away: </p>
<p>During development, I would be thinking (as one does&#8230;sometimes) &#8220;here&#8217;s something cool that could be done in a later version&#8221; or &#8220;I&#8217;ll probably have to revisit this in 1.1, but this gets me up and running for now&#8221; and so on. I didn&#8217;t understand at the time that [client] can only really handle the idea of software as &#8220;mysterious black box&#8221; that is perfect on day 0 and will never be developed further. </p>
<p>[client] does do bugfixes on their code, and occassionally (rarely) adds a new bit of code, as circumstances demand. However, this does not mean that they manage the lifecycle of their systems: they are reactive, not proactive. Engineers fixing problems, not software people maximising, maintaining and developing their investment. </p>
<p>Embedded systems don&#8217;t get maintained; they get replaced.</p>
<p>Appearances (and IMHO needs) notwithstanding, I was building an embedded system&#8230;</p>
<p>Still&#8230;</p>
<p>If you live in Brisbane, your power is being controlled using this application.</p>
<p>As far as I know, no one has been electrocuted yet, so <em>something</em> must be right about it.</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.transentia.com.au/wordpress/2009/02/05/oh-babi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
