<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-21995941</id><updated>2012-02-16T04:22:09.884-05:00</updated><category term='ruby'/><category term='religion'/><category term='philosophy'/><category term='burma'/><category term='baby'/><category term='programming'/><category term='politics'/><title type='text'>planesailing</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>14</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-21995941.post-6776074900978522608</id><published>2008-02-12T14:39:00.000-05:00</published><updated>2008-02-12T14:46:16.202-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Ruby regexp search</title><content type='html'>I just started learning ruby, and have run into the problem that the Regexp class doesn't have a search method for matching all occurances of a pattern in a string.  With a little help from ruby-lang irc, I am now using this extension for Regexp:&lt;br /&gt;&lt;tt&gt;&lt;br /&gt;class Regexp&lt;br /&gt;  def search(string, offset=0)&lt;br /&gt;    string.scan(self) { |txt| yield Regexp.last_match }&lt;br /&gt;  end&lt;br /&gt;end&lt;br /&gt;&lt;/tt&gt;&lt;br /&gt;Ruby 1.9 has a match method that takes an offset, but it only returns a single MatchData object.  The above is much simpler to use IMHO.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-6776074900978522608?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/6776074900978522608/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=6776074900978522608' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/6776074900978522608'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/6776074900978522608'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2008/02/ruby-regexp-search.html' title='Ruby regexp search'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21995941.post-7594464572797109171</id><published>2007-11-06T09:25:00.001-05:00</published><updated>2007-11-06T09:25:29.279-05:00</updated><title type='text'>Ready, Steady, Go!</title><content type='html'>&lt;div style="float: right; margin-left: 10px; margin-bottom: 10px;"&gt; &lt;a href="http://www.flickr.com/photos/hugod/1881275586/" title="photo sharing"&gt;&lt;img src="http://farm3.static.flickr.com/2012/1881275586_76dc8fc1c3_m.jpg" alt="" style="border: solid 2px #000000;" /&gt;&lt;/a&gt; &lt;br /&gt; &lt;span style="font-size: 0.9em; margin-top: 0px;"&gt;  &lt;a href="http://www.flickr.com/photos/hugod/1881275586/"&gt;Ready, Steady, Go!&lt;/a&gt;  &lt;br /&gt;  Originally uploaded by &lt;a href="http://www.flickr.com/people/hugod/"&gt;HugoD&lt;/a&gt; &lt;/span&gt;&lt;/div&gt;Adlaï is crawling and very happy to discover the increased mobility he is too!&lt;br clear="all" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-7594464572797109171?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/7594464572797109171/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=7594464572797109171' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/7594464572797109171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/7594464572797109171'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2007/11/ready-steady-go.html' title='Ready, Steady, Go!'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm3.static.flickr.com/2012/1881275586_76dc8fc1c3_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21995941.post-8109746954886742871</id><published>2007-10-04T22:06:00.001-04:00</published><updated>2007-10-04T22:11:10.055-04:00</updated><title type='text'>Water</title><content type='html'>&lt;div style="float: right; margin-left: 10px; margin-bottom: 10px;"&gt; &lt;a href="http://www.flickr.com/photos/hugod/1480610514/" title="photo sharing"&gt;&lt;img src="http://farm2.static.flickr.com/1254/1480610514_19545a5e04_m.jpg" alt="" style="border: solid 2px #000000;" /&gt;&lt;/a&gt; &lt;br /&gt; &lt;span style="font-size: 0.9em; margin-top: 0px;"&gt;  &lt;a href="http://www.flickr.com/photos/hugod/1480610514/"&gt;Beaker&lt;/a&gt;  &lt;br /&gt;  Originally uploaded by &lt;a href="http://www.flickr.com/people/hugod/"&gt;HugoD&lt;/a&gt; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="float: right; margin-left: 10px; margin-bottom: 10px;"&gt; &lt;a href="http://www.flickr.com/photos/hugod/1486288821/" title="photo sharing"&gt;&lt;img src="http://farm2.static.flickr.com/1182/1486288821_73c34b10e2_m.jpg" alt="" style="border: solid 2px #000000;" /&gt;&lt;/a&gt; &lt;br /&gt; &lt;span style="font-size: 0.9em; margin-top: 0px;"&gt;  &lt;a href="http://www.flickr.com/photos/hugod/1486288821/"&gt;Beaker II&lt;/a&gt;  &lt;br /&gt;  &lt;/span&gt;&lt;/div&gt;Adlaï has been watching us intently every time we drink water for a while.  So we got him a beaker and gave it to him.  He was intrigued, to the point where he was quite happy to chase the beaker around the floor for a good ten minutes.  Who needs electronic games.&lt;br clear="all" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-8109746954886742871?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/8109746954886742871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=8109746954886742871' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/8109746954886742871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/8109746954886742871'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2007/10/water.html' title='Water'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm2.static.flickr.com/1254/1480610514_19545a5e04_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21995941.post-9220375784880443547</id><published>2007-09-29T22:52:00.000-04:00</published><updated>2007-09-29T23:08:18.351-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Logitech, never again</title><content type='html'>I have just spend close to a month trying to track down unrepeatable behaviour in an application I am writing.  The application is pretty hairy, and contains lots of matrices that are nearly singular, and I was imagining all sorts of weird numeric problems.  But no.  The problem was with the software that I installed for my Logitech video/web camera.&lt;br/&gt;Essentially Logitech, in their wisdom,  decided it would be a good idea to inject their lvprcinj.dll into everything possible, my program included.  Something in that dll was causing unrepeatable behaviour in my program.  Thank you Logitech for your malware. Problem solved. I for one will never buy a Logitech product again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-9220375784880443547?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/9220375784880443547/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=9220375784880443547' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/9220375784880443547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/9220375784880443547'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2007/09/logitech-never-again.html' title='Logitech, never again'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21995941.post-3584344886936357281</id><published>2007-09-29T21:31:00.001-04:00</published><updated>2007-09-29T21:32:19.132-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='philosophy'/><category scheme='http://www.blogger.com/atom/ns#' term='baby'/><title type='text'>Children and toys</title><content type='html'>We end up buying a lot of toys for our children.  Certainly for our son we seem to have amassed many more toys than I imagined we would have.  They toys range in price and sophistication, and our son's interest in any toy varies over time, but there is no correlation I can discern between either the cost or sophistication and his enjoyment of the toy.  There seems to be a general idea that expensive sophisticated toys make the best presents for a child, but in reality all he really needs is our love and constant provision of a secure and nurturing environment, and for us to show him how the world works.  Like so much in this world, what works for children can easily be transferred to an adult scenario.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-3584344886936357281?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/3584344886936357281/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=3584344886936357281' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/3584344886936357281'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/3584344886936357281'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2007/09/children-and-toys.html' title='Children and toys'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21995941.post-3547954210502459550</id><published>2007-09-28T11:25:00.000-04:00</published><updated>2007-09-30T10:33:03.574-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><category scheme='http://www.blogger.com/atom/ns#' term='burma'/><title type='text'>Burma</title><content type='html'>Reading about the &lt;a href="http://www.thisislondon.co.uk/news/article-23414112-details/The+last+moments+of+photographer+gunned+down+by+Burmese+troops+as+nine+die/article.do"&gt;situation in Burma&lt;/a&gt; it is intersting to see the role being played by the Buddhist monks.  Not only are they involved in politcal protest, but leading through their own use of peaceful means, they have raised the level of their protest to one of morality and basic human rights.  In so doing they have shown more leadership than anybody I can think of since Ghandi.&lt;br /&gt;One could only hope that their example inspires those trying to change the Middle East, and the world owes them our support, to ensure that peaceful protest has demostrated results.&lt;br /&gt;&lt;br /&gt;Update:  &lt;a href="http://saffronrevolutionworldwide.blogspot.com/"&gt;Monk stencils&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-3547954210502459550?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/3547954210502459550/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=3547954210502459550' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/3547954210502459550'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/3547954210502459550'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2007/09/burma.html' title='Burma'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21995941.post-1980119535218699075</id><published>2007-09-28T11:16:00.001-04:00</published><updated>2007-09-28T14:18:35.122-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='baby'/><title type='text'>Adlaï is 6 months old today!</title><content type='html'>&lt;div style="float: right; margin-left: 10px; margin-bottom: 10px;"&gt; &lt;a href="http://www.flickr.com/photos/hugod/1450632986/" title="photo sharing"&gt;&lt;img src="http://farm2.static.flickr.com/1382/1450632986_2577636b95_m.jpg" alt="" style="border: solid 2px #000000;" /&gt;&lt;/a&gt; &lt;br /&gt; &lt;span style="font-size: 0.9em; margin-top: 0px;"&gt;  &lt;a href="http://www.flickr.com/photos/hugod/1450632986/"&gt;Two little monkies&lt;/a&gt;  &lt;br /&gt;  Originally uploaded by &lt;a href="http://www.flickr.com/people/hugod/"&gt;HugoD&lt;/a&gt; &lt;/span&gt;&lt;/div&gt;Adlaï is already six months old.  What a humbling experience it has been so far, in so many different ways.  Having somebody rely on you all day every day for all their needs teaches much about patience and tolerance.  At least I get breaks; Gabriela has been breast feeding and so doesn't get much time off.&lt;br /&gt;Seeing Adlaï come alive over the last few months is a marvelous experience.  You can see his hearing, sight and motor abilities change from one day to the next, and his fascination with the world is renewed and heightened every time he gets to experience it in a little richer form.&lt;br /&gt;Having a baby suddenly makes people very friendly, and it makes you think about how reserved we normally all are with each other.  Just having the excuse of  admiring the baby is enough for many people, both complete strangers and also those we see on a regular basis in shops, neighbours, etc, to start talking with us.&lt;br clear="all" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-1980119535218699075?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/1980119535218699075/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=1980119535218699075' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/1980119535218699075'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/1980119535218699075'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2007/09/adla-is-6-months-old-today.html' title='Adlaï is 6 months old today!'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm2.static.flickr.com/1382/1450632986_2577636b95_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21995941.post-7866392672576171322</id><published>2006-11-28T13:42:00.001-05:00</published><updated>2006-11-29T20:15:48.741-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>cygwin, mingw and runtime libraries</title><content type='html'>I have been trying to get gcc to compile dll's that I can use with msvc 8.0. Turns out that the accepted practice involves taking the standard mingw/cygwin install and copying and renaming library files.&lt;br/&gt;&lt;br/&gt;The compiler always wants to link msvcrt.dll, so to link with msvcr80 we have to create a directory containing a copy of the mingw/cygwin distribution's msvcr80.a library renamed to msvcrt.a, and then specify this directory as a library path when we link.&lt;br/&gt;&lt;br/&gt;Wouldn't it be simpler if the distribution came set up that way?&lt;style&gt;i{content: normal !important}&lt;/style&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-7866392672576171322?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/7866392672576171322/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=7866392672576171322' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/7866392672576171322'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/7866392672576171322'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2006/11/cygwin-mingw-and-runtime-libraries.html' title='cygwin, mingw and runtime libraries'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21995941.post-115970324434268025</id><published>2006-10-01T07:47:00.001-04:00</published><updated>2007-09-28T14:19:27.574-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Who Maintains the Peace in Utopia?</title><content type='html'>It is a difficult quest to arrive at a &lt;a href="http://planesailing.blogspot.com/2006/09/peace-in-middle-east.html"&gt;Utopia of growing, sovereign nations&lt;/a&gt;, so maybe it is easier to ask what it would take to maintain such a state of the world, before wondering how to get there.&lt;br /&gt;&lt;br /&gt;Consider how a single nation maintains peace within itself;  any peaceful modern nation is based on some fundamental ideas - a legal system and some form of representational government, whether secular or religious.  The legal system comprises a set of laws that are applied without preference or prejudice to the whole of the population, patrolled by a police force and enforced with by an independent judiciary.  The application of the legal system is independent of the political system, even though the later may add to the body of law that is enforced.  The political system represents the people in some way, and controls an executive that performs the day to day running of the government.  The jurisprudence might by driven by a civil code, case history, or a religious code.&lt;br /&gt;&lt;br /&gt;At the supranational level, we can identify similar bodies today.  At the continental level the &lt;a href="http://en.wikipedia.org/wiki/European_Union"&gt;European union&lt;/a&gt; provides a functionaing model for co-operating nations, and has fairly well established &lt;a href="http://en.wikipedia.org/wiki/European_Parliament"&gt;parliament&lt;/a&gt; providing elected representation, a &lt;a href="http://en.wikipedia.org/wiki/European_Court_of_Justice"&gt;court system&lt;/a&gt;,  a &lt;a href="http://en.wikipedia.org/wiki/Council_of_the_European_Union"&gt;legislative body&lt;/a&gt;, an &lt;a href="http://en.wikipedia.org/wiki/European_Commission"&gt;executive&lt;/a&gt; under the high level guidance of the &lt;a href="http://en.wikipedia.org/wiki/European_Council"&gt;European Council&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;On the global scale, we have the &lt;a href="http://en.wikipedia.org/wiki/United_nations"&gt;United Nations&lt;/a&gt;,  comprised of a &lt;a href="http://en.wikipedia.org/wiki/United_Nations_General_Assembly"&gt;representative body&lt;/a&gt;, an &lt;a href="http://en.wikipedia.org/wiki/United_Nations_Secretariat"&gt;executive&lt;/a&gt;, a &lt;a href="http://en.wikipedia.org/wiki/International_Court_of_Justice"&gt;court system&lt;/a&gt;, the &lt;a href="http://en.wikipedia.org/wiki/United_Nations_Security_Council"&gt;Security Council&lt;/a&gt; responsable for maintaining international peace, and the &lt;a href="http://en.wikipedia.org/wiki/United_Nations_Economic_and_Social_Council"&gt;Economic and Social Council&lt;/a&gt;.  Independent of the UN, we have the &lt;a href="http://en.wikipedia.org/wiki/International_Criminal_Court"&gt;International Criminal Court&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Interpol"&gt;Interpol&lt;/a&gt;, the &lt;a href="http://en.wikipedia.org/wiki/World_Bank_Group"&gt;World Bank&lt;/a&gt; and the &lt;a href="http://en.wikipedia.org/wiki/International_Monetary_Fund"&gt;International Monetary Fund&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;How well are these institutions working, and are they capable of maintaining peace in Utopia?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-115970324434268025?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/115970324434268025/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=115970324434268025' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/115970324434268025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/115970324434268025'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2006/10/who-maintains-peace-in-utopia_01.html' title='Who Maintains the Peace in Utopia?'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21995941.post-115841253626927982</id><published>2006-09-16T09:11:00.000-04:00</published><updated>2007-09-28T14:19:45.423-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Peace in the Middle East</title><content type='html'>In all the discussion on the recent Lebanese-Israeli conflict, I find it disheartening that I have seen no discussion on what peace in the Middle East might look like.  Certainly, there has been discussion on how to resolve the conflict, with the expansion of UN troops in southern Lebanon, but nobody has addressed how this will promote longer term peace and stability to the region.  With the war in Iraq and the US posturing with Iran, I believe that the question of what peace might look like is becoming increasingly important as a guide to our actions and policies today.&lt;br /&gt;&lt;br /&gt;I would suggest, peace is attainable only when socially cohesive groups of people feel relatively safe from attack either from foreign powers or from militants within their own community, and able to exert some influence on their future lives through their good conduct and hard work.  Put a little more simply this would imply economically sound, sovereign nations are a necessary precondition to sustained peace.&lt;br /&gt;&lt;br /&gt;In the context of the Middle East this implies that Israel can only achieve peace and security through a prosperous and strong Lebanon and Palestine; that Iran will only act responsibly on the international scene if it does not feel threatened by Israel and the US.&lt;br /&gt;&lt;br /&gt;Returning to the recent conflict, I can only see Israel's massive destruction of southern Lebanon as hindering its long term chances of peace. The destruction has certainly slowed economic development in Lebanon, strengthened Hezbollah support among some Lebanese, and generally made the elected government look weak, undermining the very processes that were leading to a stronger Lebanon.&lt;br /&gt;&lt;br /&gt;The suppression of Palestine is similarly counterproductive.  In some ways, the poverty in Palestine can be compared to that in the Weimar Republic, which the Allies duly learnt from, as seen by the contrast in the conditions of the peace treaties following the First and Second World War.&lt;br /&gt;&lt;br /&gt;I am not suggesting that Hamas and Hezbollah are right to attack Israel, or that Israel is wrong to defend itself.  Israel is now a well established country, and despite extremist Arab posturing to the contrary, it would be unthinkable to the international community for it to be destroyed.&lt;br /&gt;&lt;br /&gt;While there are a myriad of other problems to be sorted out in the Middle East, I would like to consider the implications of strong Arab states, as I believe this gives us an interesting perspective on how a peace might be achieved.&lt;br /&gt;&lt;br /&gt;More later ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-115841253626927982?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/115841253626927982/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=115841253626927982' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/115841253626927982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/115841253626927982'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2006/09/peace-in-middle-east.html' title='Peace in the Middle East'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21995941.post-114351155554900062</id><published>2006-03-27T21:05:00.000-05:00</published><updated>2006-03-27T22:02:34.066-05:00</updated><title type='text'>Using Tapestry</title><content type='html'>&lt;p class="mobile-post"&gt;&lt;br /&gt;&lt;a href="http://jakarta.apache.org/tapestry/"&gt;Tapestry&lt;/a&gt; is great for writing java web application hosted user interfaces.  The version 4.0 with its &lt;a href="http://jakarta.apache.org/hivemind/"&gt;HiveMind&lt;/a&gt; integration is extremely powerful.  The Hivemind part of the jigsaw together with Tapestry's use of annotations encourages a clean, reusable style of coding - it took a while but i finally "got" depenendency injection.  The Hivemind wiring together with EasyMock makes both unit testing and integration testing simple and very practical.&lt;/p&gt;&lt;p class="mobile-post"&gt;(Aside: When Tim Bray says he might have a go at &lt;a href="http://www.tbray.org/ongoing/When/200x/2006/02/21/Java-EE-5"&gt;writing his comments system&lt;/a&gt; in EE, I would heartily recommend he look at Tapestry.)&lt;/p&gt;&lt;p class="mobile-post"&gt;Having said that I have run up against some annoying issues.&lt;/p&gt;&lt;p class="mobile-post"&gt;These range from the trival:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Can not localise a submit button&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Can not put a FieldLabel after it's component&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Finding the correct replacement (usually the service name) for deprecated methods is long winded when not specified in the JavaDoc&lt;/li&gt; &lt;br /&gt;&lt;li&gt;The HiveMind docs are very fragmented - even now I know what I am looking for I still end up search in three different sections to find it...&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p class="mobile-post"&gt;There are also some other issues I ran up against in building an edit compenent for a POJO that are slightly more vexing.&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;The sub-component structure of a component is fixed at compile time, and the only interface for passing info at compile time to a component is through the component's name.  This means I ended up inventing a naming convention to pass information to be processed when the component specification is resolved.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;In HiveMind, the javassist integration is limited by the limited interface exported by HiveMind, and the inaccessibility of its ClassPool&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;/p&gt;&lt;p class="mobile-post"&gt;I am also having problems localising a component coming from a library - but I think that is a understanding issue on how the IComponentSpecification's Location affects the message catalog resolution ...&lt;/p&gt;&lt;p class="mobile-post"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-114351155554900062?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/114351155554900062/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=114351155554900062' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/114351155554900062'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/114351155554900062'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2006/03/using-tapestry.html' title='Using Tapestry'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21995941.post-114339148282517179</id><published>2006-03-26T11:38:00.000-05:00</published><updated>2006-03-26T11:55:50.376-05:00</updated><title type='text'>Tapestry Edit Component</title><content type='html'>Howard Lewis-Ship &lt;a href="http://howardlewisship.com/blog/2006/03/from-fanciful-ideas-category.html"&gt;wrote&lt;/a&gt; about having an edit component for a pojo.&lt;br /&gt;&lt;br /&gt;&amp;lt;span jwcid="@edit:EditObject" object="ognl:pojo"/&amp;gt;&lt;br /&gt;&lt;br /&gt;I had already started working on such a component, after getting fed up of creating edit pages by hand.  I have posted some (alpha) code at http://www3.sympatico.ca/hugo.duncan/EditComponent.tar.gz.&lt;br /&gt;&lt;br /&gt;The component is referenced as Edit&amp;lt;class.name.to.display&amp;gt;.  &lt;br /&gt;&lt;br /&gt;The object to edit is passed using the item parameter.&lt;br /&gt;&lt;br /&gt;The layout parameter can be used to pass a literal string selecting a layout.  The default layout is "table", which produces a table, where each property is on a new table row. Template layouts can be contributed to a hivemind service. eg. TemplateLayoutTableColumns provides a layout for one row per object views of a collection.&lt;br /&gt;&lt;br /&gt;The type of component used to display a property can be specified in the component specification, eg. Edit&amp;lt;class.name.to.display,myfield=TextFieldPropertyComponent&amp;gt;.  Selecting a component of null suppresses the property from being displayed.&lt;br /&gt;&lt;br /&gt;The default type of component selected to display and edit a property can be set by contributing a IComponentProvider to the tapestry.contrib.editor.ComponentProviders configuration point.&lt;br /&gt;&lt;br /&gt;Bindings on this component of the form "subcomponent.parameter" are forwarded to the subcomponent.&lt;br /&gt;&lt;br /&gt;To display collections, parameters mimicking the For component parameters are used.&lt;br /&gt;&lt;br /&gt;A sequence parameter can be used to specify the order in which the properties are displayed.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-114339148282517179?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/114339148282517179/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=114339148282517179' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/114339148282517179'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/114339148282517179'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2006/03/tapestry-edit-component.html' title='Tapestry Edit Component'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21995941.post-113919491947990412</id><published>2006-02-05T22:00:00.000-05:00</published><updated>2006-02-05T22:05:58.496-05:00</updated><title type='text'>Superbowl</title><content type='html'>Its time for North America to shutdown to watch the superbowl again.  The streets become very quiet, even up here in Canada.  It seems I have heard more about the advertising controversies this year than about the game itself - I could tell you coca-cola were in hot water for their trucking ad days before the game - but I could not tell you which teams are playing.  A sad indictment of our society, or just of my participation in it?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-113919491947990412?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/113919491947990412/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=113919491947990412' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/113919491947990412'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/113919491947990412'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2006/02/superbowl.html' title='Superbowl'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21995941.post-113915835631137654</id><published>2006-02-05T11:51:00.000-05:00</published><updated>2006-02-05T11:52:36.316-05:00</updated><title type='text'>Plane Sailing</title><content type='html'>A reference to sailing with rigid aerofoils&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21995941-113915835631137654?l=planesailing.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://planesailing.blogspot.com/feeds/113915835631137654/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21995941&amp;postID=113915835631137654' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/113915835631137654'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21995941/posts/default/113915835631137654'/><link rel='alternate' type='text/html' href='http://planesailing.blogspot.com/2006/02/plane-sailing.html' title='Plane Sailing'/><author><name>Hugo Duncan</name><uri>http://www.blogger.com/profile/00723501535189305580</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
