<?xml version="1.0"?>
<!-- name="generator" content="blosxom/2.0" -->
<!DOCTYPE rss PUBLIC "-//Netscape Communications//DTD RSS 0.91//EN" "http://my.netscape.com/publish/formats/rss-0.91.dtd">

<rss version="0.91">
  <channel>
    <title>Too Busy For Words - The PaulWay Weblog   </title>
    <link>http://www.mabula.net/tbfw</link>
    <description>Too Busy For Words - The PaulWay Weblog.</description>
    <language>en</language>

  <item>
    <title>No good title</title>
    <link>http://www.mabula.net/tbfw/2008/07/25#2008-07-25-no-good-title</link>
    <pubDate>Fri, 25 Jul 2008 21:22:00 +1000</pubDate>
    <description>History has been revised.  Thank you.</description>
  </item>
  <item>
    <title>The lost limericks list</title>
    <link>http://www.mabula.net/tbfw/2008/07/15#2008-07-15-first-limericks</link>
    <pubDate>Tue, 15 Jul 2008 09:51:00 +1000</pubDate>
    <description>After that post, I thought I'd just check which category I'd put my previous
limericks in.  To my horror, I discovered that I hadn't blogged them at all,
but had (merely) posted them to the Linux Australia list.  So I rescued them
and posted them here for posterity.&lt;P&gt;

&lt;blockquote&gt;
That wonderful man Andrew Tridgell&lt;br&gt;
Over SaMBa keeps permanent vigil.&lt;br&gt;
SMB, it is said,&lt;br&gt;
He decodes in his head,&lt;br&gt;
And CIFS 2 will some day bear his sigil.&lt;/blockquote&gt;

&lt;blockquote&gt;
The great LGuest programmer Rusty,&lt;br&gt;
Is virtually never seen dusty.&lt;br&gt;
He eats 16K pages,&lt;br&gt;
And has done so for ages,&lt;br&gt;
Yet his moustache is clean and not crusty.&lt;/blockquote&gt;

&lt;blockquote&gt;
That marvellous girl Pia Waugh&lt;br&gt;
Is certainly hard to ignore.&lt;br&gt;
With her leet ninja moves,&lt;br&gt;
Open Source just improves -&lt;br&gt;
All Linux Australians show awe!&lt;/blockquote&gt;</description>
  </item>
  <item>
    <title>The Wireless Jonathan Oxer</title>
    <link>http://www.mabula.net/tbfw/2008/07/15#2008-07-15-wireless-jonathan-oxer</link>
    <pubDate>Tue, 15 Jul 2008 09:50:00 +1000</pubDate>
    <description>After the three limericks I wrote about Tridge, Pia and Rusty, the conversation
came up on #linux-aus about whether I could make a similar epgiram for Jon
Oxer, former Linux Australia president, front-line hardware hacker and all-round
good guy.  It took me two months, but in an email to Jon I finally cracked it,
packing much more into the rhyme than I originally thought would be possible:&lt;P&gt;

&lt;blockquote&gt;
The wireless Jonathan Oxer,&lt;br&gt;
Waves his hand and his front door unloxer.&lt;br&gt;
A remote-control loo,&lt;br&gt;
And home theatre too -&lt;br&gt;
If you as me, his whole house just roxor!&lt;/blockquote&gt;

Who's next, I wonder?&lt;P&gt;

&lt;blockquote&gt;
We tune to podcasting James Purser,&lt;br&gt;
Long known as a rhymer and verser.&lt;br&gt;
With his darling wife Karin&lt;br&gt;
They are not known as barren:&lt;br&gt;
Three children now stare at their cursor.&lt;/blockquote&gt;

Steve Walsh, however, is going to take a bit more thinking about.&lt;P&gt;

Send your suggestions of who should be next under the pen to
&lt;a href=&quot;mailto:paulway&amp;#64;mabula.net&quot;&gt;paulway&amp;#64;mabula.net&lt;/a&gt;</description>
  </item>
  <item>
    <title>New Job, Same Old Business</title>
    <link>http://www.mabula.net/tbfw/2008/07/02#2008-07-01-new-job-same-old-business</link>
    <pubDate>Wed, 02 Jul 2008 10:29:00 +1000</pubDate>
    <description>I've just started work on Monday at my new employer,
&lt;a href=&quot;http://www.transact.com.au&quot;&gt;TransACT&lt;/A&gt;, a fibre and copper
communications provider in (as the name implies) the Australian
Capital Territory.  I've read through the employee handbook, done all
the financial documentation, been given a computer and installed Fedora
9 on it.  The majority of the team here use Mac Minis as their desktop
machines, because there's a high requirement to use Unix commands to
manage the network infrastructure.  Of course, we still have to hook
into the Microsoft Windows support infrastructure, but that's hardly a
challenge these days.&lt;P&gt;

The reason I mention this is because TransACT and its parent company
ActewAGL are featured on Microsoft Australia's
&lt;a href=&quot;http://www.microsoft.com/australia/windowsserversystem/getthefacts/default.mspx&quot;&gt;&quot;Get
The Facts&quot;&lt;/a&gt; pages as some kind of 'shining example' of a company
that &quot;Wave[d] Goodbye To Linux&quot; and somehow saved money.  The &lt;I&gt;facts&lt;/I&gt;
are radically different, even from the small sample I've seen so far.  All
the network infrastructure, from the set top boxes to the DHCP servers to
the encryption server for the IPTV, run on some kind of Unix - Debian
Linux seems to be the predominate flavour.  Microsoft's &quot;case study&quot; is
really just a small part of TransACT and ActewAGL's business, and it's
hardly &quot;waved goodbye&quot; to Linux in the organisation.</description>
  </item>
  <item>
    <title>Common code in ClearSilver 001</title>
    <link>http://www.mabula.net/tbfw/2008/06/15#2008-06-15-common-code-in-clearsilver-001</link>
    <pubDate>Sun, 15 Jun 2008 11:10:00 +1000</pubDate>
    <description>I've been using &lt;a href=&quot;http://www.clearsilver.net&quot;&gt;ClearSilver&lt;/a&gt; as
a template language for my CGI websites in earnest for about half a year
now. I decided to rewrite my &lt;a href=&quot;/setmusic/&quot;&gt;Set Dance Music
Database&lt;/a&gt; in it and it's generally been a good thing.  Initially,
though, I had two problems: it was hard to know exactly what data had
been put into the HDF object, and it was a pain to debug template
rendering problems by having to upload them to the server (surprisingly,
but I think justifiably, I don't run Apache and PostgreSQL on my laptop
so as to 
have a 'production' environment at home).&lt;P&gt;

I solved this problem rather neatly by getting my code to write out the
HDF object to a file, rsync'ing that file back to my own machine, and
then test the template locally.&lt;P&gt;

I knew that ClearSilver's Perl library had a 'readFile' method to slurp
an HDF file directly into the HDF object, and a quick check of the
&lt;a href=&quot;http://www.clearsilver.net/docs/c_api.hdf&quot;&gt;C library&lt;/a&gt; said
that it had an equivalent 'writeFile' call.  So happily I found that
they'd also provided this call in Perl.  My 'site library' module
provided the $hdf object and a Render function which took a template
name; it was relatively simple to write to a file derived from the
template name.  That way I had a one-to-one correspondence between
template file and data file.&lt;P&gt;

Then I can run ClearSilver's &lt;tt&gt;cstest&lt;/tt&gt; program to test the
template - it takes two parameters, the template file and the HDF file.
You either get the page rendered, or a backtrace to where the syntax
error in your template occurred.  I can also browse through the HDF
file - which is just a text file - to work out what data is being sent
to the template, which solves the problem of &quot;why isn't that data
being shown&quot; fairly quickly.&lt;P&gt;

Another possibility I haven't explored is to run a test suite against
the entire site using standard HDF files each time I do a change to
make sure there aren't any regressions before uploading.&lt;P&gt;

Hopefully I've piqued a few people's interest in ClearSilver, because
I'm going to be talking more about it in upcoming posts.</description>
  </item>
  <item>
    <title>Faith in Atheism</title>
    <link>http://www.mabula.net/tbfw/2008/06/01#2008-06-01-faith-in-atheism</link>
    <pubDate>Sun, 01 Jun 2008 21:10:00 +1000</pubDate>
    <description>I was in the office of a church hall on Friday, picking up the keys for
the hall for our &lt;a href=&quot;http://mabula.net/dance2008/&quot;&gt;Canberra Irish
Set Dance Weekend&lt;/a&gt;, and while waiting for the people to work out the
bill a leaflet for an upcoming talk at the church caught my eye.  The
topic of the talk was:&lt;P&gt;

&lt;B&gt;Why I Don't Have The Faith To Be An Atheist&lt;/B&gt;.&lt;P&gt;

Now, I will freely admit that that's a catchy title, because it certainly
caught my eye.  And while I endeavour to understand other people's points
of view I am often blinded by my own ideas of what is sensible and
reasonable.  But I cannot fathom how that that topic can be debated
seriously in the affirmative.&lt;P&gt;

On the one hand, to me it requires much more faith to believe in an
arbitrary, contradictory, and often non-sensical set of teachings that
fly in the face of the evidence around us than to not have to believe
any of that.  My Australian Concise Oxford gives its first definition
of &quot;faith&quot; as: &lt;cite&gt;Reliance or trust &lt;i&gt;in&lt;/i&gt;; belief founded on
authority&lt;/cite&gt; - the other definitions are the type of religion one
believes in and a promise or intent (as in &lt;i&gt;in good faith&lt;/i&gt;).  In
that context I would say that all religions have some authority, be it
a book or a person, that is the foundation of their belief, whereas
Atheism makes no such demand.  Atheism has no book which is quoted
chapter and verse, no authority figure that tells people to not trust
science and believe what they teach in contradiction to the evidence.&lt;P&gt;

On the other hand, if this is some kind of sophistry - some kind of
cunning argument or uncommon definition of &quot;faith&quot; or &quot;atheism&quot;, then
I think one is entitled to ask if the speaker is going to be serious
at all.  If it's a straw man argument, then really what's the point of
it?  I can respect people who stick by what they believe even as they
acknowledge the flaws in their own arguments - I can't respect someone
who tricks their audience with a conveniently quelled paper tiger.&lt;P&gt;

I was half tempted by Kate's sensible suggestion to actually go and
see this just to actually solve this logical problem before it threatened
to burst my brain.  But as I have this sneaking suspicion that the whole
thing will be preaching, appositely, to the choir.&lt;P&gt;

I must now hide myself from the metaphor police.</description>
  </item>
  <item>
    <title>The conspiracy to keep children quiet</title>
    <link>http://www.mabula.net/tbfw/2008/05/20#2008-05-20-children-quiet-conspiracy</link>
    <pubDate>Tue, 20 May 2008 12:26:00 +1000</pubDate>
    <description>Thanks to &lt;a href=&quot;http://svana.org/sjh/diary/2008/05/19#2008-05-19_01&quot;&gt;Steven
Hanley&lt;/a&gt;, I read &lt;a href=&quot;http://www.paulgraham.com/lies.html&quot;&gt;Paul
Graham&lt;/a&gt;'s essay &quot;Lies We Tell Kids&quot;.  His basic point is that adults
often don't tell children the strict truth - either by omission or by
fabrication - because some questions are hard (&quot;Is there a God?&quot;) or
destroy the innocence of childhood (&quot;What is a prostitute?&quot;).  To my mind
his essay parallels Ian Stewart, Jack Cohen and Terry Pratchett's
observations in the &quot;The Science Of Discworld&quot; series that we simplify
complex stories by abstracting or leaving out details - &quot;telling lies&quot; by
omission.&lt;P&gt;

I'm lucky enough to have four nieces; since Kate and I have decided not
to have children we have focussed our &quot;raising the next generation&quot; on
these four (although I tend to be catholic, if not necessarily orthodox,
in playing with any children).  They are all reasonably well-adjusted,
normal girls in my opinion and I think that, to varying degrees, their
parents have tried to be fairly honest with them.  On the Tuesday before
the Armstrong family went away for a six week trip around the world, they
had their family dog put down because of its extreme ill health and the
likelihood that it would die while they were away.  This was done by a
vet in their back yard with the family and their cousins watching and
supporting them through that terrible time, so Paul Graham's section 
on how we lie to children about death particularly resonated with me.
These girls haven't suddenly become morbid, or afraid of death, or
casual about it, because of that experience - they're still quite
normal even after we've exposed them to something that other parents
would go to great efforts to hide.&lt;P&gt;

The girls know me as somewhat eccentric, partly because I play running
and card games with them, partly for my collection of evil laughs, and
partly because I'll bore their ears off with science and technology if
they let me.  I send them coded messages and make special hiding places
around the house for when we play hide-and-seek.  I'll tell them when
I don't know something, or when I'm glossing over details in an
explanation in order to make it twenty words rather than a hundred.
I do think that a fair bit of my behaviour is related to keeping them
behaving as children - or rather as young adults - rather than making
them conform to one or the other but not both at the same time.  To me,
spending ten minutes talking to one of the girls when she's in trouble
with her parents and explaining that I understand why she did the
things she did - even though they were wrong - is far more valuable to
her than being left with a sense of injustice that &quot;you just can't win
against your parents&quot; and &quot;no-one understands my side of the story&quot;.&lt;P&gt;

Paul Graham talks at the end of his article about a sort of 'truth debt'
built up by all the elisions, fabrications and contradictions the
adults have told around children as they reach adulthood.  &quot;There's
never a point where the adults sit you down and explain all the lies
they told you,&quot; he observes.  My way of dealing with this is to start
early, be honest about the things you can be, and tell them when you're
not being honest about the things you can't be.  I hate telling lies,
especially when I know that sooner or later I'm going to have to tell
the truth later and then explain why I told the lie.  Sure, I don't
intend to freak kids out by telling them things that shatter their
illusions of how the world works too quickly, but neither do I intend
to shore up that illusion with even more outlandish fabrications.&lt;P&gt;

I do hope that this little essay doesn't warn too many parents off
from allowing me to talk to their children :-)&lt;P&gt;

</description>
  </item>
  <item>
    <title>Stupid Error 32512</title>
    <link>http://www.mabula.net/tbfw/2008/04/02#2008-04-02-stupid-error-32512</link>
    <pubDate>Wed, 02 Apr 2008 11:40:00 +1000</pubDate>
    <description>For a while my brother's been having a problem with his MythTV setup -
the &lt;tt&gt;mythfilldatabase&lt;/tt&gt; script won't run the associated
&lt;tt&gt;tv_grab_au&lt;/tt&gt; script when run automatically, but will work just
fine when run manually.  In the logs it says:&lt;P&gt;

&lt;pre&gt;FAILED: xmltv returned error code 32512.
&lt;/pre&gt;

Now, after a bit of searching I have finally found that 32512 is a
magic code from the C &lt;code&gt;system(3)&lt;/code&gt; call, which basically
does a &quot;&lt;tt&gt;sh -c &lt;i&gt;(system call and arguments)&lt;/i&gt;&lt;/tt&gt;&quot;.  If
&lt;tt&gt;sh&lt;/tt&gt; can't find the file you've specified in the
&lt;code&gt;system()&lt;/code&gt; call, it returns 127, which is shifted into the
upper eight bits of a 16-bit smallint (as far as I can make out, the
lower eight bits are reserved for informing the caller that the system
call was aborted due to a signal - e.g. a segmentation fault).&lt;P&gt;

After a lot more searching, and a good deal of abuse on the
&lt;tt&gt;#mythtv-users&lt;/tt&gt; channel on freenode.org, I finally found
&lt;a href=&quot;http://www.museum.state.il.us/ismdepts/library/linuxguides/abs-guide/exitcodes.html&quot;&gt;some
information about shell exit codes&lt;/a&gt;, and it turns out that 127 is
&quot;command not found&quot;.  In other words, mythfilldatabase at that point
is trying to call the tv_grab_au grabber and not finding it.  On my
brother's machine, this is because &lt;tt&gt;sh&lt;/tt&gt; under root does not get
the path &lt;tt&gt;/usr/local/bin&lt;/tt&gt;, which is where the grabber is stored.&lt;P&gt;

(It works on my machine because I run it from a script which picks a
random time, and includes &lt;tt&gt;/usr/local/bin&lt;/tt&gt; in the path.&lt;P&gt;

So there are two solutions, as I see it:&lt;P&gt;

1) Put &lt;tt&gt;tv_grab_au&lt;/tt&gt; in &lt;tt&gt;/usr/bin/&lt;/tt&gt;.&lt;P&gt;

2) Run &lt;tt&gt;mythfilldatabase&lt;/tt&gt; from cron using a script which includes
&lt;tt&gt;/usr/local/bin&lt;/tt&gt; in the path.&lt;P&gt;

Given the bollocking I got in &lt;tt&gt;#mythtv-users&lt;/tt&gt; for suggesting
something so crude and hackish (in the words of Marcus Brown, mzb_d800)
as &lt;tt&gt;cron&lt;/tt&gt;, I guess I'll have to go with option 1.  But here's
hoping that this blog entry helps someone else out there - almost every
post on the mythtv-users email list that mentions 32512 never mentions
a solution...</description>
  </item>
  <item>
    <title>Kangaroos saved, who cares about anything else?</title>
    <link>http://www.mabula.net/tbfw/2008/04/02#2008-04-02-kangaroo-culling</link>
    <pubDate>Wed, 02 Apr 2008 11:17:00 +1000</pubDate>
    <description>Once again the kangaroo cull at the old Belconnen naval signalling base
has stalled again, with the animal liberation protesters calling it a
victory.  The pity is that these people are really protesting about the
wrong thing.&lt;P&gt;

On the one hand, they're protesting about the culling of 400 kangaroos.
I wonder if they have realised that ACT Forestry has a license to cull
4,000 kangaroos - ten times that number - &lt;I&gt;per year&lt;/i&gt; in the
national parks.  If I remember rightly, ACT Parks also has a license to
cull 3,000 on other public land.  So killing 400 as a once-off cull is
hardly the great tragedy that it's being painted as.&lt;P&gt;

On the other hand, there are animals and plants on that land that are
highly endangered and under threat from the kangaroos.  There's not
only the
&lt;a href=&quot;http://canberra.yourguide.com.au/news/local/general/govt-in-cleft-stick-over-roo-move/1214544.html&quot;&gt;Perunga
Grasshopper and the Mouthless Moth&lt;/a&gt; in that area, but a rare species
of grasslands flower that is being eaten by the kangaroos.  While I'm
a bit disappointed that the Liberals have chosen to make this one of
those &quot;if we were governing this wouldn't happen&quot; issues, they're
totally right - everyone's getting all upset because cute furry
animals are going to die.  And it looks like the Liberals are only
making a fuss because Defence is flip-flopping, not because anything
else might face extinction as a result of overgrazing by the kangaroos.&lt;P&gt;

I got this information from a friend who wrote the policy on land
care and kangaroo culling in the ACT.  So I can't quote chapter and
verse, because the conversation was informal and I didn't take notes.
But I do think that the &quot;animal liberationists&quot; are way out of line.
Don't get me wrong - generally I would like to avoid the kangaroos
being killed at all.  But to blow this out of proportion shows
exactly the kind of loony-fringe unreasoning stupidity that these
groups accuse their enemies of and that does their own credibility the
most damage.  And if you've got any species that is overrunning its
ability to survive on the land, it's going to die off some way or other.
Killing them quickly is far more humane than letting them starve,
whether on a block in the ACT or elsewhere in NSW.&lt;P&gt;

If only the human race would learn this and seriously consider
population control of itself.
</description>
  </item>
  <item>
    <title>Solar Power For Free</title>
    <link>http://www.mabula.net/tbfw/2008/03/23#2008-03-23-solar-power-for-free</link>
    <pubDate>Sun, 23 Mar 2008 23:12:00 +1000</pubDate>
    <description>I have an idea which I think would revolutionise the power industry.
Of course, it requires a lot of venture capital to set up, something
which I am unable to provide nor have the knowledge to find.  I offer
this up on my blog in the hopes that someone might read it, form a
business out of it, and change the world.  If I get mentioned or
gain something from it, then that'd be nice, but making solar power
easy for everyone to get involved in is enough reward for me.&lt;P&gt;

Let's call the company Solar Sails.  They offer to install a set of
solar panels and the necessary equipment to feed power back into the
grid for free.  When you sign up with them, you pay only for the
difference between the power that you use and the power your solar
cells generate.  If that balance is zero or negative in the billing
period - say a month - then you pay nothing for your power.  That's
the deal for the consumer.  Solar Sails itself makes its money by
selling the extra power you produce (over what you consume) back to
the grid.&lt;P&gt;

From what I recall, the pay-off time for solar panels - the time
taken for your lower power bills to recoup the cost of installing the
panels - is about ten to fifteen years, and that figure is probably
going to get shorter as the technology ramps up.  (As Dr. Karl
pointed out in a recent lecture, the &lt;u&gt;power&lt;/u&gt; pay-off time -
the time taken for the solar panels to generate more power than they
took in their production - is only about two years or less).  There
are plenty of businesses who look at investing money in processes
with longer pay-off times.  Admittedly, Solar Sails is only going to
get a fraction of the money those solar panels earn (since the meat
of it is going into paying for your power), but on the other hand
they can negotiate better deals with the grid supply companies and
with the solar cell and technology providers than we as individual
consumers can.&lt;P&gt;

And the important thing, I feel, to get solar panel technology widely
adopted is to lower that 'hump' of initial outlay.  The most sensible
point for that is at zero, so it costs you nothing to join the scheme.
Even the most power-wasteful person has no reason not to join the
scheme if it'll start saving them money without any outlay at all.
Once they realise that they can save themselves more money by turning
off lights and being less wasteful, you've changed their bad behaviour.
And even if they don't actually change their wasteful ways, the fact
that their purchase will have contributed to helping lower the price
for other people (through volume purchasing by Solar Sails).  So it's
a pretty good proposition not just for getting more power generated
by solar power and making it easier for people to adopt but also to
change people's habits and reduce power consumption overall.&lt;P&gt;

As usual, I'd &lt;a href=&quot;mailto:paulway@mabula.net&quot;&gt;love to hear your
thoughts&lt;/a&gt; on this idea.</description>
  </item>
  <item>
    <title>Stupid Quote of the Day</title>
    <link>http://www.mabula.net/tbfw/2008/03/19#2008-03-19-stupid-quote-of-the-day</link>
    <pubDate>Wed, 19 Mar 2008 14:00:00 +1000</pubDate>
    <description>&lt;a href=&quot;http://ajdlinux.wordpress.com/2008/03/19/qotd/&quot;&gt;Andrew
Donnellan&lt;/a&gt; quotes Albert Camus rehashing
&lt;a href=&quot;http://en.wikipedia.org/wiki/Pascal's_Wager&quot;&gt;Pascal's
Wager&lt;/a&gt; as if it's some kind of useful way to affirm what one
believes.  The certainty that the god that they believe in is the
god that will be actually judging them is ... amusing.&lt;P&gt;

I would counter with the Atheist's Wager: &quot;You should live your life
and try to make the world a better place for your being in it, whether
or not you believe in God. If there is no God, you have lost nothing
and will be remembered fondly by those you left behind. If there is
a benevolent God, he may judge you on your merits coupled with your
commitments, and not just on whether or not you believed in him.&quot;
Perhaps a reading of the relevant chapters of Richard Dawkins' book
&quot;The God Delusion&quot; might also useful debunking of this warped
logic.&lt;P&gt;

And I would also add that any God that requires my belief as a
&quot;jealous God&quot; is a pretty poor god by even human standards.  If a
human required constant devotion and commitment in spite of complete
and utter disdain and ignorance of the devotees, we'd call them
wishy-washy or vain at best and spiteful or megalomaniac at worst.
Why do so many religions then excuse their god of these emotions,
coming up with ever more convoluted ineffabilities in order to
justify a tyrant?  I wish I could find what I thought was a Robert
A. Heinlein quote on this, but it wasn't in
&lt;a href=&quot;http://atheism.about.com/library/quotes/bl_q_RHeinlein.htm&quot;&gt;
this otherwise excellent collection&lt;/a&gt;.</description>
  </item>
  <item>
    <title>Standard Observations</title>
    <link>http://www.mabula.net/tbfw/2008/03/18#2008-03-18-standard-observations</link>
    <pubDate>Tue, 18 Mar 2008 22:41:00 +1000</pubDate>
    <description>&lt;a href=&quot;http://www.rumble.net/blog/index.cgi/geek/Web_developers_are_from_Mars.html&quot;&gt;Simon
Rumble&lt;/a&gt; mentioned &lt;a href=&quot;http://www.joelonsoftware.com/items/2008/03/17.html&quot;&gt;Joel
Spolsky&lt;/a&gt;'s post on web standards and it really is an excellent read.
The fundamental point is that as a standard grows, testing any arbitrary
device's compliance with it it grows harder.  Given that, for rendering
HTML, not only do we have a couple of 'official' standards: HTML 4, XHTML,
etc., but we also have a number of 'defacto' standards - IE 5, IE 5.5, 
IE 6, IE 7, Firefox, Opera, etc. etc. etc ad nauseam.  For a long time,
Microsoft has banked on their desktop monopoly to lever their own 
defacto standards onto us, but I think they never intended it to be
because of bugs in their own software.  And now the chickens are coming
home to roost, and they're stuck with either being bug-for-bug compatible
with their own software (i.e. making it more expensive to produce) or
breaking all those old web pages (i.e. making it much more unpopular).&lt;P&gt;

I wonder if there was anyone in Microsoft Internet Explorer development
team around the time they were producing 5.0 that was saying, &quot;No, we can't
ship this until it complies with the standard; that way we know we'll
have less work to do in the future.&quot;  If so, I feel doubly sorry for you:
you've been proved right, but you're still stuck.&lt;P&gt;

However, this is not a new problem to us software engineers.  We've
invented various test-based coding methodologies that ensure that the
software probably obeys the standard, or at least can be proven to obey
some standard (as opposed to being random).  We've also seen the nifty
XSLT macro that takes the
&lt;a href=&quot;http://en.wikipedia.org/wiki/OpenFormula&quot;&gt;OpenFormula&lt;/a&gt;
&lt;a href=&quot;http://www.dwheeler.com/openformula/openformula.sxw&quot;&gt;specification&lt;/a&gt;
and produces an OpenDocument Spreadsheet that tests the formula - I
can't find any live links to it but I saved a copy and put it
&lt;a href=&quot;http://tangram.dnsalias.net/~paulway/testsuite-generator.tgz&quot;&gt;here&lt;/a&gt;.
So it shouldn't actually be that hard to go through and implement, if not
all, then a good portion of the HTML standard as rigorous tests and then
use browser scripting to test its actual output.  Tell me that someone
isn't doing this already.&lt;P&gt;

But the problem isn't really with making software obey the standard -
although obviously Microsoft has had some problem with that in the past,
and therefore I don't feel we can trust them in the future.  The problem
is that those pieces of broken software have formed a defacto standard
that isn't mapped by a document.  In fact, they form several inconsistent
and conflicting standards.  If you want another problem, it's that
people writing web site code to detect browser type in the past have
written something like:&lt;P&gt;

&lt;pre&gt;
if ($browser eq 'IE') {
    if ($version &lt;= 5.0) {
        write_IE_5_0_HTML();
    } elsif ($version &lt;= 5.5) {
        write_IE_5_5_HTML();
    } else {
        write_IE_HTML();
    }
    ...
}&lt;/pre&gt;

When IE 7 came along and broke new stuff, they added:

&lt;pre&gt;
    } elsif ($version &lt;= 6.0) {
        write_IE_6_0_HTML();
&lt;/pre&gt;

It doesn't take much of a genius to work out that you can't just
assume that this current version is the last version of IE, or that
new versions of IE aren't necessarily going to be bug-for-bug compatible
with the last version.  So really the people writing the websites are to
blame.&lt;P&gt;

Joel doesn't identify Microsoft's correct response in this situation.
The reason for this is that we're all small coders reading Joel's blog
and we just don't have the power of Microsoft.  It should be relatively
easy for them to write a program that goes out and checks web sites
to see whether they render correctly in IE 8, and then they should work
together with the web site owners whose web sites don't render correctly
to fix this.  Microsoft does a big publicity campaign about how it's
cleaning up the web to make sure it's all standard compliant for its new
standards-compliant browser, they call it a big win, everyone goes back
to work without an extra headache.  Instead, they're carrying on like
it's not their fault that the problem exists in the first place.&lt;P&gt;

Microsoft's talking big about how it's this nice friendly corporate
citizen that plays nice these days - let's see it start fixing up some
of its past mistakes.</description>
  </item>
  <item>
    <title>Beat Counter Project</title>
    <link>http://www.mabula.net/tbfw/2008/03/14#2008-03-14-beat-counter-project</link>
    <pubDate>Fri, 14 Mar 2008 15:23:00 +1000</pubDate>
    <description>For a variety of reasons, I'm looking for a library that can not only
determine the BPM of a song but count how many beats and bars are in it,
excluding the introduction and finish of the song where there may be no
actual music.  (In other words it's not just a case of dividing the track
length in real-number minutes by the BPM).  Furthermore, one application
has the complication of working with music that isn't four quarter-beats
in a bar (i.e. 4/4 notation) - it might be 2/4, 3/4, 6/8 or 12/8.  I do
know this ahead of time - mostly - but automatic detection would be nice.
The other application will require millisecond-precision locations of
each beat, and must be able to compensate for tempo changes in the song.&lt;P&gt;

So I've started a &lt;A href=&quot;http://micropledge.com/projects/beatcounter&quot;&gt;MicroPledge
project&lt;/A&gt; for it and pledged $100US of my own money.  The project must
run on Linux, Mac OS-X and Windows and must also use an open source
license, preferably the GPLv3.  But I guess this is a bit of a bleg
(thank you Mary Gardiner for introducing me to that term :-) if anyone
knows of such a thing or some project that I can add code to.&lt;P&gt;

Now to watch it fade into obscurity as I cast around for some way to write
the thing myself...</description>
  </item>
  <item>
    <title>Floor Wax, Dessert Topping, Make-Up, Mould Release...</title>
    <link>http://www.mabula.net/tbfw/2008/03/02#2008-03-02-floor-wax-dessert-topping-etc</link>
    <pubDate>Sun, 02 Mar 2008 10:38:00 +1000</pubDate>
    <description>As a woodworker, I use
&lt;a href=&quot;http://en.wikipedia.org/wiki/Carnauba_wax&quot;&gt;Carnauba Wax&lt;/a&gt; mixed
with lemon oil on my wood turning pieces to give them a nice shine that's
also dust-proof and preserves the wood, preventing it from drying out and
cracking.  And as a student of popular culture, I've seen the reference
to the &lt;a href=&quot;http://snltranscripts.jt.org/75/75ishimmer.phtml&quot;&gt;Saturday
Night Live&lt;/a&gt; sketch about Shimmer, the revolutionary product that's
both a floor wax and a dessert topping.&lt;P&gt;

So it amused and amazed even me to find out that Carnauba Wax is all this
and more.  It's the product of the Carnauba Palm, has a melting point
way higher than most waxes, and is harder than concrete in pure form.  It
is used both in woodworking and in car polishes for its high-gloss,
protective coating, but in that capacity (and because it's edible) it's
also used as an ingredient in some cake icings and on the coatings of
Tic-Tacs and othe candy to make them glossy.  Likewise it's used in
products such as lipsticks and blushes for the glossy, resilient coating.
With a solvent in a can, it's sprayed into moulds for epoxy resin
products such as semiconductors to make sure the product breaks free from
the mould easily; because it's not soluble in water or alcohol it can be
used in liquid epoxy casting too.&lt;P&gt;

And to think that most people think that Shimmer doesn't exist...</description>
  </item>
  </channel>
</rss>