<?xml version="1.0"?>
<!-- RSS generated by Radio UserLand v8.0.8 on Mon, 08 Sep 2003 17:22:33 GMT -->
<rss version="2.0">
	<channel>
		<title>Flatlander</title>
		<link>http://radio.weblogs.com/0110255/</link>
		<description>All the maps agree...</description>
		<copyright>Copyright 2003 Ivan Towlson</copyright>
		<lastBuildDate>Mon, 08 Sep 2003 17:22:33 GMT</lastBuildDate>
		<docs>http://backend.userland.com/rss</docs>
		<generator>Radio UserLand v8.0.8</generator>
		<managingEditor>ivan@hestia.demon.co.uk</managingEditor>
		<webMaster>ivan@hestia.demon.co.uk</webMaster>
		<category domain="http://www.weblogs.com/rssUpdates/changes.xml">rssUpdates</category> 
		<cloud domain="radio.xmlstoragesystem.com" port="80" path="/RPC2" registerProcedure="xmlStorageSystem.rssPleaseNotify" protocol="xml-rpc"/>
		<ttl>60</ttl>
		<item>
			<description>&lt;P&gt;Gah.&amp;nbsp; Radio now seems to be refusing to post my change of address.&lt;/P&gt;
&lt;P&gt;Let&apos;s try this again.&lt;/P&gt;
&lt;P&gt;The new site is &lt;A href=&quot;http://hestia.typepad.com/flatlander&quot;&gt;here&lt;/A&gt;.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0110255/2003/09/08.html#a22</guid>
			<pubDate>Mon, 08 Sep 2003 17:22:33 GMT</pubDate>
			</item>
		<item>
			<description>&lt;H4&gt;A murrain on your desktop-centric application&lt;/H4&gt;
&lt;P&gt;Radio&apos;s desktop-centric approach is no doubt great if your desktop is permanently connected to the Internet and you spend most of your time at the same machine.&amp;nbsp; Neither of these is true for me and this has essentially stopped me from writing except for my brief period between jobs last year.&amp;nbsp; I need a service that is truly &quot;in the cloud,&quot; as opposed to Radio&apos;s &quot;in the cloud but you have to climb this particular pole to get to it.&quot;&amp;nbsp; I&apos;m currently trying out the &lt;A href=&quot;http://www.typepad.com&quot;&gt;Typepad&lt;/A&gt; preview release, and so far it&apos;s a much better fit for my &quot;personal configuration&quot; (I will &lt;STRONG&gt;not&lt;/STRONG&gt; use the word lifestyle dammit.)&lt;/P&gt;
&lt;P&gt;Oh, and it&apos;s the chief suspect for dialling into my ISP -- chargeable phone calls -- without consulting me.&lt;/P&gt;
&lt;P&gt;The new site is &lt;A href=&quot;http://hestia.typepad.com/flatlander&quot;&gt;here&lt;/A&gt;.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0110255/2003/09/05.html#a21</guid>
			<pubDate>Fri, 05 Sep 2003 18:35:10 GMT</pubDate>
			</item>
		<item>
			<description>&lt;P&gt;&lt;A href=&quot;http://www.theregister.co.uk/content/6/32315.html&quot;&gt;Andrew Orlowski is not impressed&lt;/A&gt; with webloggers whose main theme is the importance of, er, weblogging: &quot;Imagine how tedious newspapers would be if every other story proclaimed &apos;We use INK!!!&apos;&quot;&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0110255/2003/08/13.html#a20</guid>
			<pubDate>Wed, 13 Aug 2003 18:25:28 GMT</pubDate>
			<category>Web</category>
			</item>
		<item>
			<description>&lt;H4&gt;Downsizing&amp;nbsp;explained&lt;/H4&gt;
&lt;P&gt;&lt;STRONG&gt;job:&lt;/STRONG&gt; A sudden stab with a pointed instrument.&amp;nbsp; This seems to be nearly the original sense.&amp;nbsp; (Noah Webster, 1828)&lt;/P&gt;
&lt;P&gt;Cited in Jeffrey Kacirk, &lt;EM&gt;Altered English&lt;/EM&gt;.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0110255/2003/08/11.html#a19</guid>
			<pubDate>Mon, 11 Aug 2003 19:04:14 GMT</pubDate>
			</item>
		<item>
			<description>&lt;H4&gt;Mark Dunn, Ella Minnow Pea&lt;/H4&gt;
&lt;P&gt;The idea of writing a novel using a steadily diminishing range of letters sounds like&amp;nbsp;an exercise in literary masturbation, a pointless&amp;nbsp;demonstration of&amp;nbsp;one&apos;s own cleverness.&amp;nbsp; Fortunately, this&amp;nbsp;remarkable book &lt;STRONG&gt;does&lt;/STRONG&gt; work as a novel, and it works well&amp;nbsp;-- clever, funny and sympathetic.&lt;/P&gt;
&lt;P&gt;The setting is an island which revers the pangram &quot;The quick brown fox jumped over the lazy dog.&quot;&amp;nbsp;&amp;nbsp;When letters start falling from the statue which commemorates this achievement, the council decrees that people must stop using the falling letters -- including in the letters they write to each other which make up the story.&amp;nbsp;&amp;nbsp;So the exercise of cutting out letters is an essential part of the plot rather than a purely formal game.&amp;nbsp; It also works wonderfully when characters briefly, gloriously rebel and start using all twenty-six letters again -- you can feel the sense of liberation in the writing.&lt;/P&gt;
&lt;P&gt;You probably have to enjoy language for its own sake to really get into a book like this, but if you do, it&apos;s well worth a look.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0110255/2003/08/11.html#a18</guid>
			<pubDate>Mon, 11 Aug 2003 18:20:27 GMT</pubDate>
			<category>Reading</category>
			</item>
		<item>
			<description>&lt;H4&gt;The trials of Attenborough&lt;/H4&gt;
&lt;P&gt;The BBC have come out with a &quot;David Attenborough Bumper Fun Pack&quot; containing DVDs of some of the great man&apos;s&amp;nbsp;relatively recent series -- &lt;EM&gt;The Trials of Life&lt;/EM&gt;, &lt;EM&gt;The Life of Birds&lt;/EM&gt; and &lt;EM&gt;Life in the Freezer&lt;/EM&gt;.&amp;nbsp; Tempting though this is, I can&apos;t quite persuade myself to buy it.&lt;/P&gt;
&lt;P&gt;The first&amp;nbsp;problem is that the content is wrong.&amp;nbsp; Fine though &lt;EM&gt;The Life of Birds&lt;/EM&gt; and &lt;EM&gt;Life in the Freezer&lt;/EM&gt; are, they lack the comprehensive sweep of the&amp;nbsp;original &lt;EM&gt;Life&lt;/EM&gt; trilogy.&amp;nbsp; &lt;EM&gt;Life on Earth&lt;/EM&gt;, &lt;EM&gt;The Living Planet&lt;/EM&gt; and&amp;nbsp;&lt;EM&gt;The Trials of Life&lt;/EM&gt; individually and collectively deliver an incredible global perspective on natural history.&amp;nbsp;&amp;nbsp;These three are what the BBC should be collecting.&lt;/P&gt;
&lt;P&gt;Fine, you say,&amp;nbsp;so go buy &lt;EM&gt;Trials&lt;/EM&gt; on its own and get the others when they come out.&amp;nbsp; Unfortunately, the second problem is that &lt;EM&gt;Trials&lt;/EM&gt;, at least, has been cut almost in half.&amp;nbsp; Three DVDs seemed awfully thin for a 13-part epic, and Amazon confirms that each episode has been cut from 48 to 28 minutes.&lt;/P&gt;
&lt;P&gt;Personally, I would pay through the nose for full versions of any of the &lt;EM&gt;Life&lt;/EM&gt; series.&amp;nbsp; I can&apos;t imagine I&apos;m alone in this.&amp;nbsp; The generation that grew up with the &lt;EM&gt;Life&lt;/EM&gt; trilogy is now bringing up its own&amp;nbsp;children, and those children are reaching the same age their parents were when&amp;nbsp;that iconic&amp;nbsp;solar flare and portentous theme&amp;nbsp;launched the first episode&amp;nbsp;of&amp;nbsp;&lt;EM&gt;Life on Earth&lt;/EM&gt;.&amp;nbsp; It&apos;s hard to imagine when the market will be better primed.&amp;nbsp; The BBC is notoriously bad at recognising its own crown jewels, and&amp;nbsp;it has&amp;nbsp;a lot of classic material to get through, I realise.&amp;nbsp; But surely Attenborough&apos;s masterwork should be ahead of &lt;EM&gt;The Very Best of Bottom&lt;/EM&gt;?&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0110255/2002/10/06.html#a16</guid>
			<pubDate>Sun, 06 Oct 2002 17:12:22 GMT</pubDate>
			</item>
		<item>
			<description>The fish have started to reappear, and the mystery of what they&apos;ve been up to all summer is solved: I&apos;m pleased to announce the patter of tiny fins.</description>
			<guid>http://radio.weblogs.com/0110255/2002/09/29.html#a15</guid>
			<pubDate>Sun, 29 Sep 2002 19:33:12 GMT</pubDate>
			</item>
		<item>
			<description>&lt;H4&gt;Andrei Alexandrescu, Modern C++ Design&lt;/H4&gt;
&lt;P&gt;Most good computer books enhance your understanding -- of theory, of practice, of process, whatever.&amp;nbsp; It&apos;s rare to find&amp;nbsp;one that &lt;STRONG&gt;transforms&lt;/STRONG&gt; your understanding.&lt;/P&gt;
&lt;P&gt;Alexandrescu&apos;s thesis is simple: that modern C++ is expressive enough to be used as a design language instead of an implementation language.&amp;nbsp; His first example, policies,&amp;nbsp;illustrates how the language enables you to express design choices -- for example,&amp;nbsp;whether to create objects&amp;nbsp;via operator new or from prototypes, or how&amp;nbsp;a smart pointer&amp;nbsp;should&amp;nbsp;manage ownership or thread-safety&amp;nbsp;--&amp;nbsp;as template parameters.&lt;/P&gt;
&lt;P&gt;This in itself is a pretty dramatic step forward for C++, but Alexandrescu then combines it with&amp;nbsp;the concept of typelists, a way for code to talk about types themselves instead of just object instances.&amp;nbsp; Armed with policies and typelists, Alexandrescu goes on to provide generic implementations of design patterns such as Visitor and Abstract Factory.&lt;/P&gt;
&lt;P&gt;Think about this for a minute.&amp;nbsp; With Alexandrescu&apos;s techniques, you can express a design pattern directly in code.&amp;nbsp; It&apos;s no longer a matter of recognising the pattern and manually implementing the code for it.&amp;nbsp; Once you&apos;ve made the design decision -- for example to use Abstract Factory -- you can express it directly in the code via Alexandrescu&apos;s AbstractFactory&amp;lt;&amp;gt; template.&amp;nbsp; And because AbstractFactory&amp;lt;&amp;gt; is parameterised by the list of types and the creation policy, you can equally easily express the design decisions of which types the factory creates and how it creates them.&amp;nbsp; &lt;EM&gt;The language allows you to directly express these design decisions instead of implementing them.&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;This, for me, is a transformational change.&amp;nbsp; I&apos;m used to C++ as a language for expressing low-level choices.&amp;nbsp; I&apos;m used to&amp;nbsp;vocabularies for expressing design choices at a documentation level.&amp;nbsp; What&apos;s new is the way Alexandrescu&apos;s C++ gives us a vocabulary for expressing and executing&amp;nbsp;design choices directly&amp;nbsp;at the code level.&lt;/P&gt;
&lt;P&gt;In the interests of realism, I should point out that&amp;nbsp;Alexandrescu uses&amp;nbsp;advanced language features that are currently poorly supported by&amp;nbsp;some popular compilers.&amp;nbsp; (Oh, all right, let&apos;s name names: the Microsoft compiler isn&apos;t up to the job.&amp;nbsp; To be fair, Microsoft&apos;s C++ team have said that compiling the&amp;nbsp;Alexandrescu library is one of their top priorities: but for the time being, if you&apos;re using Visual C++, you&apos;re out of luck.)&amp;nbsp; But this is almost beside the point.&amp;nbsp; Compliance will come, and pioneering yet practical&amp;nbsp;work like Alexandrescu&apos;s is exactly the incentive the compiler vendors need: who wants to be the only vendor who can&apos;t handle AbstractFactory&amp;lt;&amp;gt;?&lt;/P&gt;
&lt;P&gt;In any case, this would be&amp;nbsp;worth reading&amp;nbsp;even if no compiler were ever to implement the parts of the standard Alexandrescu needs.&amp;nbsp; It is worth reading whether or not you are interested in C++, just like &lt;EM&gt;Structure and Interpretation of Computer Programs&lt;/EM&gt; is worth reading&amp;nbsp;whether or not you&apos;re interested in Lisp, or &lt;EM&gt;Object-Oriented Software&amp;nbsp;Construction&lt;/EM&gt;&amp;nbsp;is&amp;nbsp;worth reading&amp;nbsp;whether or not you&apos;re interested in Eiffel.&amp;nbsp; For the most part, it&apos;s not about libraries&amp;nbsp;or C++; it&apos;s about&amp;nbsp;the issues&amp;nbsp;of&amp;nbsp;writing programs at the level of&amp;nbsp;design rather than implementation.&amp;nbsp; (There are some bits about how to&amp;nbsp;abuse the C++ compiler to achieve design-level goals,&amp;nbsp;but these are relatively few and far between.)&amp;nbsp; It is a manifesto as much as a cookbook, and it&apos;s certainly made me think about the expressiveness of code in a whole new way.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0110255/2002/09/29.html#a14</guid>
			<pubDate>Sun, 29 Sep 2002 19:18:44 GMT</pubDate>
			<category>Reading</category>
			<category>Software Development</category>
			</item>
		<item>
			<description>&lt;P&gt;&lt;A href=&quot;http://www.ddj.com/documents/s=7453/ddj0208q/&quot;&gt;Verity Stob develops a Beaufort scale of cruft&lt;/A&gt;:&amp;nbsp;&quot;&lt;STRONG&gt;Cruft Force 3.&lt;/STRONG&gt; &lt;I&gt;Lived-in.&lt;/I&gt; Description: One time in seven when the user starts Word or other Office 2000 app, instead of running, it pretends it is installing itself for the first time and starts a setup program.&amp;nbsp;Directory count in C: up to 17, and something has pooed a Paradox lock control file there, too.&quot;&amp;nbsp; When I sent this round the office, you could hear the muttering as people fired up Explorer and started counting... and yes, she was right about the Paradox files, too.&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0110255/2002/09/29.html#a13</guid>
			<pubDate>Sun, 29 Sep 2002 14:48:57 GMT</pubDate>
			<category>Software Development</category>
			</item>
		<item>
			<description>&lt;H4&gt;Not Your Parents&apos; System Tray&lt;/H4&gt;
&lt;P&gt;&lt;A href=&quot;http://research.microsoft.com/scripts/pubs/view.asp?TR_ID=MSR-TR-2001-83&quot;&gt;Microsoft Research&lt;/A&gt; (via &lt;A href=&quot;http://radio.weblogs.com/0105852/2002/09/24.html#a1184&quot;&gt;Sam Gentile&lt;/A&gt;): &quot;As we work, documents are updated, information on web sites is modified, databases are changed, and the people we depend on come and go... &lt;FONT face=TimesNewRoman size=2&gt;Sideshow is an awareness interface with the goal of helping people stay aware of large amounts of dynamic information without overloading or distracting them.&lt;/FONT&gt;&quot;&lt;/P&gt;
&lt;P&gt;Well, and so was the&amp;nbsp;Windows 95 notification area (aka&amp;nbsp;system tray).&amp;nbsp; Having a little bit of the screen where applications could notify users of interesting things was a good idea, but: (a) the tradeoff between compactness and rich information, while reasonable in 1995, has shifted the other way with larger screens and more things going on in the background; and (b) greedy applications have now put so much rubbish in the tray that Windows XP now has to hide it all again.&lt;/P&gt;
&lt;P&gt;Sideshow tries to fix these problems by allowing a lot more space for notifications -- so applications can provide information like how many emails are high priority and how many are low, or what the stock price actually is, or which of your IM contacts are online and how active they are, instead of just a 16x16 icon -- and by putting the area under user control rather than letting any old app fill it with&amp;nbsp;&quot;I am running!&quot; messages.&amp;nbsp; (Would you believe my &lt;EM&gt;mouse driver&lt;/EM&gt; puts an icon in the notification area?&amp;nbsp; Does anybody seriously believe for one minute I want notifications from my &lt;EM&gt;mouse driver&lt;/EM&gt;?)&lt;/P&gt;
&lt;P&gt;It&apos;s an exceptionally rich environment: lots of information and options packed into a very thin strip of space.&amp;nbsp; Richer info than the tray is clearly a key issue:&amp;nbsp;users cite knowing who their mail is from and whether it is&amp;nbsp;marked as high priority.&amp;nbsp; The personalisation story is strong too: the authors suggest an example whereby an eBay auction could&amp;nbsp;provide a link to &quot;watch this item in Sideshow.&quot;&amp;nbsp; It&apos;s easy to imagine that all the background activity that interests the user could flow through Sideshow.&lt;/P&gt;
&lt;P&gt;So does the road to Longhorn begin here?&amp;nbsp; Well, it&apos;s cosmetically similar to some of the rumours going around, and instinctively I&apos;d leap from my seat and say &quot;Microsoft can&apos;t pass this up;&quot; but actually I&apos;m not so sure.&amp;nbsp; The Longhorn UI has been trailed as &quot;task-centric&quot; -- in the tradition of XP&apos;s task panes and Whistler&apos;s aborted&amp;nbsp;Activity Centres --&amp;nbsp;whereas Sideshow is more data-centric.&amp;nbsp; (Yes, you&amp;nbsp;know and I know that this is a spurious distinction, but will that be enough to stop&amp;nbsp;Microsoft&amp;nbsp;marketing?)&amp;nbsp; And Longhorn has to sell into countries with poor connectivity: the UI can provide easy ways for users to access the Internet (the &quot;Print My Photos&quot; kind of link), but it can&apos;t &lt;STRONG&gt;demand&lt;/STRONG&gt; always-on connectivity.&amp;nbsp; Even in the wired US, this could&amp;nbsp;be impractical in&amp;nbsp;the laptop market.&amp;nbsp; And it&apos;s certainly not the whole UI: Sideshow&amp;nbsp;is about notification and awareness, not working with specific documents or applications.&lt;/P&gt;
&lt;P&gt;Frankly, it&apos;s too early to speculate where this research effort might eventually fit into Microsoft&apos;s UI strategy.&amp;nbsp; Who knows what the connectivity landscape will look like in 2005, or whether Microsoft will be trying to sell different &quot;editions&quot; to home, business and mobile users?&amp;nbsp; In the meantime, the Sideshow project looks like a good resource for anyone designing an &quot;awareness&quot; interface.&amp;nbsp; The authors&apos; conclusion, that users &lt;STRONG&gt;do&lt;/STRONG&gt; value&amp;nbsp;awareness but it &lt;STRONG&gt;must&lt;/STRONG&gt; be appropriate to them, is useful and encouraging for anyone designing&amp;nbsp;&quot;dashboard&quot; style interfaces, and the paper is worth reading for the design goals alone.&lt;/P&gt;
&lt;H5&gt;By the way...&lt;/H5&gt;
&lt;P&gt;...I particularly liked&amp;nbsp;the article&amp;nbsp;which, describing Sideshow, explained that &quot;the company has developed an application that displays a series of windows with useful information on a user&apos;s desktop.&quot;&amp;nbsp; Nice to see someone striking out against the flow of only displaying windows with use&lt;STRONG&gt;less&lt;/STRONG&gt; information.&lt;/P&gt;
&lt;P&gt;...The&amp;nbsp;prototype version of Sideshow was put together in Visual Basic by an intern.&amp;nbsp; If it&apos;s good enough for Microsoft Research UIs...&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0110255/2002/09/25.html#a12</guid>
			<pubDate>Wed, 25 Sep 2002 19:18:47 GMT</pubDate>
			<category>Software Development</category>
			</item>
		</channel>
	</rss>

