<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Ian’s Journal</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/" />
    <link rel="self" type="application/atom+xml" href="http://ianp.org/atom.xml" />
    <id>tag:,2008-06-10:/1</id>
    <updated>2008-09-01T07:15:17Z</updated>
    
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type Open Source 4.1</generator>

<entry>
    <title>InfoQ Presentations</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2008/07/infoq-presentations" />
    <id>tag:ianp.org,2008://1.89</id>

    <published>2008-07-31T08:19:56Z</published>
    <updated>2008-09-01T07:15:17Z</updated>

    <summary>InfoQ are one of my favourite tech information sites anyway and the signal to noise ratio there is normally pretty high, they&#8217;ve got 3 great new presentations out today: in Herding Racehorses, Racing Sheep, Dave Thomas talks about the problems...</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Technology" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p><a href="http://www.infoq.com/">InfoQ</a> are one of my favourite tech information sites anyway and the signal to noise ratio there is normally pretty high, they&#8217;ve got 3 great new presentations out today:</p>

<ul>
<li><p>in <a href="http://www.infoq.com/news/2008/07/Developing-Expertise-Dave-Thomas">Herding Racehorses, Racing Sheep</a>, Dave Thomas talks about the problems of treating developers as interchangeable cogs (or <em>fungible resources</em>, as the project management crowd would say). Some great ideas for bringing new team members up to speed quickly (about 18 minutes in);</p></li>
<li><p>in <a href="http://www.infoq.com/news/2008/07/presentation-botch-scalability">The Top 10 Ways to Botch Enterprise Java Scalability and Reliability</a>, Cameron Purdy of Oracle talks about scaling Java. Obviously it&#8217;s not an impartial view but his points are good ones and it&#8217;s an interesting talk;</p></li>
<li><p>in <a href="http://www.infoq.com/articles/ddd-evolving-architecture">Domain-Driven Design in an Evolving Architecture</a>, Mat Wall and Nik Silver talk about their experiences applying DDD at the <a href="http://guardian.co.uk/">Guardian&#8217;s web site</a>, it covers why they selected DDD as a method as well as the benefits that they feel it brought. I&#8217;ve heard them talk about this before, on <a href="http://se-radio.net/">SE Radio</a>, and to be honest, it worked better in that format I thought - the written version here needs to be edited down to about half it&#8217;s current length;</p></li>
<li><p>finally, <a href="http://www.infoq.com/news/2008/07/Architecture-Reviews-Brock">Rebecca Wirfs-Brock talks about</a> the benefits of, and problems of conducting, architectural reviews. I&#8217;ve listened to some of this before as Rebecca did an <a href="http://www.se-radio.net/podcast/2008-04/episode-93-lessons-learned-architecture-reviews-rebecca-wirfsbrock">interview</a> with <a href="http://se-radio.net/">SE Radio</a> a while back, but this is good for people who haven&#8217;t heard her talk before.</p></li>
</ul>
]]>
        

    </content>
</entry>

<entry>
    <title>Turning Off Apple Data Detectors in Mail</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2008/07/turning-off-apple-data-detecto" />
    <id>tag:ianp.org,2008://1.88</id>

    <published>2008-07-30T03:48:51Z</published>
    <updated>2008-08-25T01:31:41Z</updated>

    <summary>Apparently Michael Tsai doesn&#8217;t like the data detectors feature in Leopard. Personally I love it. For those of you who don&#8217;t know, data detectors is a feature that adds smart links to chunks of text based on what it thinks...</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Technology" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Trivia" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p>Apparently <a href="http://mjtsai.com/blog/2008/07/29/turning-off-apple-data-detectors-in-mail/">Michael Tsai doesn&#8217;t like</a> the data detectors feature in Leopard. Personally I <em>love</em> it. For those of you who don&#8217;t know, data detectors is a feature that adds smart links to chunks of text based on what it thinks the text describes. For example, one feature that I use all the time in Mail is the detector that turns any date or time into a link allowing you to add it to iCal as an event. The really neat thing about it is how it can scan the entire post to come up with information to fill in about the event &#8212; even looking at different regions of text scattered throughout a mail.</p>

<p>It&#8217;s pretty neat and is exactly the type of thing that <a href="http://wilshipley.com/">Wil Shipley</a> is talking about <a href="http://www.viddler.com/explore/rentzsch/videos/4/">here</a> when he mentions adding features to your apps that constantly surprise users in a good way (I&#8217;ve seen designers from BMW talk about the same thing in the context of styling their car interiors).</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Sourceforge Annoyances</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2008/05/sourceforge-annoyances" />
    <id>tag:ianp.org,2008://1.87</id>

    <published>2008-05-25T20:28:23Z</published>
    <updated>2008-07-29T21:17:31Z</updated>

    <summary>That site gets worse and worse. I can live with the fact that corporate IT departments can behave like petit-Hilters with their ridiculous password policies, but now SF has started to do the same. For fuck&#8217;s sake, just let me...</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Technology" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Trivia" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p><a href="http://www.sourceforge.net/">That site</a> gets worse and worse. I can live with the fact that corporate IT departments can behave like petit-Hilters with their ridiculous password policies, but now SF has started to do the same. For fuck&#8217;s sake, just let me pick a password and keep it, it&#8217;s not like the world is going to end if somebody gets my SF login details.</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Layout</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2008/05/layout" />
    <id>tag:ianp.org,2008://1.86</id>

    <published>2008-05-21T19:09:02Z</published>
    <updated>2008-08-26T21:59:18Z</updated>

    <summary>Hmmm, I need to something about the site layout if I&#8217;m going to include images like that....</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Trivia" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p>Hmmm, I need to something about the site layout if I&#8217;m going to include images like that.</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Has Amazon Gone Crazy?</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2008/05/has-amazon-gone-crazy" />
    <id>tag:ianp.org,2008://1.85</id>

    <published>2008-05-21T19:03:47Z</published>
    <updated>2008-08-26T21:56:01Z</updated>

    <summary>I&#8217;ve just been looking at getting a copy of the newly released Cocoa Programming 3rd Edition (tip o&#8217; the hat to Scott Stevenson) and, as the link from there is to the U.S. Amazon site I saw the price there,...</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Trivia" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p>I&#8217;ve just been looking at getting a copy of the newly released Cocoa Programming 3rd Edition (tip o&#8217; the hat to <a href="http://theocacao.com/document.page/571">Scott Stevenson</a>) and, as the link from there is to the <a href="http://www.amazon.com/dp/0321503619">U.S. Amazon site</a> I saw the price there,</p>

<p><img src="/2008/05/21/cocoa_programming_us.png" alt="amazon.com" title="" /></p>

<p>then going to my local <a href="http://www.amazon.co.uk/dp/0321503619">U.K. based Amazon page</a> to place an order and,</p>

<p><img src="/2008/05/21/cocoa_programming_uk.png" alt="amazon.co.uk" title="" /></p>

<p>well, what the fuck is that all about exactly? Check out the <a href="http://www.oanda.com/convert/classic">conversion rates</a>&#8230;</p>

<blockquote>
  <p>Wednesday, May 21, 2008
  28.79 British Pound = 57.526 US Dollar
  28.79 US Dollar (USD) = 14.991 British Pound (GBP)
  Interbank rate +/- 2%</p>
</blockquote>

<p>That&#8217;s getting on for sixty bucks! almost twice the price of the US site. That&#8217;s just fucking ridiculous.</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Plastic Bag Recycling</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2008/03/plastic-bag-recycling" />
    <id>tag:ianp.org,2008://1.84</id>

    <published>2008-03-30T00:05:28Z</published>
    <updated>2008-03-30T00:05:28Z</updated>

    <summary>You&#8217;ve got to love this!...</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Trivia" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p>You&#8217;ve got to love <a href="http://nedbatchelder.com/blog/200803/street_bag_animals.html" title="Street Bag Animals">this!</a></p>
]]>
        

    </content>
</entry>

<entry>
    <title>Windows XP Zip File Support</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2008/03/windows-xp-zip-file-support" />
    <id>tag:ianp.org,2008://1.83</id>

    <published>2008-03-26T19:47:48Z</published>
    <updated>2008-03-27T10:04:06Z</updated>

    <summary>Windows XP, which I&#8217;m forced to use at work at the moment, normally treats Zip files as though they were folders, letting you view their contents in explorer. Unfortunately there are a number of problems with this feature: it can...</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Technology" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p>Windows XP, which I&#8217;m forced to use at work at the moment, normally treats Zip files as though they were folders, letting you view their contents in explorer. Unfortunately there are a number of problems with this feature: it can kill the performance of Java based apps which work on the files (a Java bug), and it can mangle any files in the Zips with long names or long paths (a Windows bug).</p>

<p>All is not lost however, to disable this behaviour simple open up a command prompt and run the following command:</p>

<pre><code>regsvr32 /u %windir%\system32\zipfldr.dll
</code></pre>

<p>And, should you want to restore the original settings, just run the same command without the &#8216;u&#8217; switch.</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Go Antigua!</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2008/03/go-antigua" />
    <id>tag:ianp.org,2008://1.82</id>

    <published>2008-03-26T19:16:57Z</published>
    <updated>2008-03-26T19:16:57Z</updated>

    <summary>From the pages of Variety magazine: Antigua threatens to allow piracy....</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Politics" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p>From the pages of Variety magazine: <a href="http://www.variety.com/article/VR1117982630.html">Antigua threatens to allow piracy</a>.</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Custom Functions in BW Cannot be in Final Classes</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2007/12/custom-functions-in-bw-cannot" />
    <id>tag:ianp.org,2007://1.81</id>

    <published>2007-12-31T16:45:29Z</published>
    <updated>2008-02-12T23:03:12Z</updated>

    <summary>Or so it seems. According to TIBCO support, when validating Java custom functions in Designer one of the things it checks is the access_flags in the class file (to ensure that the method is accessible). Based on JVM class file...</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="TIBCO" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p>Or so it seems. According to <a href="http://support.tibco.com">TIBCO support</a>, when validating Java custom functions in Designer one of the things it checks is the <em>access_flags</em> in the class file (to ensure that the method is accessible). Based on <a href="http://java.sun.com/docs/books/jvms/second_edition/html/ClassFile.doc.html">JVM class file spec</a> the access flags should be either 0x21 (public) or 0x31 (public final); both of these values are fine but the validator rejects the latter. The good news however is that running the class in either the tester or in a deployed process engine works fine.</p>

<p>Update: I forgot to mention this, but the error message in the validator is &#8220;*MISSING: Invalid java custom function..message&#8221;. Should help out searching via the Goog.</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Rebooted</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2007/10/rebooted" />
    <id>tag:ianp.org,2007://1.80</id>

    <published>2007-10-21T20:08:11Z</published>
    <updated>2008-01-19T17:34:55Z</updated>

    <summary>I&#8217;ve been away for a while, and now I&#8217;m back. In other news, I&#8217;ve moved back to the UK, to London again. More to follow&#8230;...</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Trivia" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p>I&#8217;ve been away for a while, and now I&#8217;m back. In other news, I&#8217;ve moved back to the UK, to London again. More to follow&#8230;</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Jython 2.2b1 Released</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2007/02/jython-22b1-released" />
    <id>tag:ianp.org,2007://1.79</id>

    <published>2007-02-09T15:44:35Z</published>
    <updated>2007-03-19T09:28:10Z</updated>

    <summary>The first beta of Jython 2.2 has been released! Jyhon scripting is something that I&#8217;m planning to add to RvSnoop so I&#8217;m quite interested in this, especially given the current focus of development is making the codebase easier to understand...</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Java" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="RvSnoop" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Technology" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p>The first beta of Jython 2.2 has <a href="http://sourceforge.net/project/showfiles.php?group_id=12867&amp;package_id=12218&amp;release_id=485053">been released</a>! Jyhon scripting is
something that I&#8217;m planning to add to <a href="http://rvsnoop.org/">RvSnoop</a> so I&#8217;m quite interested in
this, especially given the current focus of development is making the codebase
easier to understand for new developers, I&#8217;ve looked at it fairly recently and
at the moment it&#8217;s quite a tangle!</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Python Does Destructuring Bind</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2007/01/python-does-destructuring-bind" />
    <id>tag:ianp.org,2007://1.78</id>

    <published>2007-01-11T13:51:49Z</published>
    <updated>2007-03-19T09:28:33Z</updated>

    <summary>According to this article by Ned Batcheleder python does destructuring bind by default. Well, I did not know that....</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Lisp" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Python" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Technology" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p>According to <a href="http://www.nedbatchelder.com/blog/200701.html#e20070110T070106">this article</a> by <a href="http://www.nedbatchelder.com/blog">Ned Batcheleder</a> python does
destructuring bind by default.</p>

<p>Well, I did not know that.</p>
]]>
        

    </content>
</entry>

<entry>
    <title>RvSnoop 1.6.1</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2006/12/rvsnoop-161" />
    <id>tag:ianp.org,2006://1.77</id>

    <published>2006-12-26T04:38:10Z</published>
    <updated>2007-10-21T20:29:15Z</updated>

    <summary>A new stable build of RvSnoop is available for downloading (it was actually released back on the 12th, but I forgot to post about it here and have been away from the internet for a few days). New in this...</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Java" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="RvSnoop" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Technology" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p>A new stable build of <a href="http://rvsnoop.org/">RvSnoop</a> is available for <a href="http://downloads.sourceforge.net/rvsn00p/rvsnoop-1.6.1.tgz?download">downloading</a> (it
was actually released back on the 12th, but I forgot to post about it here and
have been away from the internet for a few days). New in this release:</p>

<ul>
<li><p>Added an option to republish records to different connections.</p></li>
<li><p>Added actions to export and import records to a binary file format (the
records are stored in a ZIP based file, they are stored as wire format
messages with some additional metadata).</p></li>
<li><p>Added an action to remove connections from the list; also, added some
options to the connection list context menu to access the recent connections
list.</p></li>
<li><p>Added a dialog to allow the user to configure different record types. The
underlying code to support this was present in the 1.5 release, but there
was no way to access it short of editing the saved project file by hand.</p></li>
<li><p>The build system no longer strips out unused classes from the included
libraries. This increases the size of the download but in some cases the
licenses of included libraries require this, and it simplifies the build
process, which is a Good Thing.</p></li>
<li><p>Started to use the <a href="http://jakarta.apache.org/commons/lang/">Commons Lang</a> and <a href="http://jakarta.apache.org/commons/io/">Commons IO</a> libraries from
Apache instead of the utility classes that I had written myself. The next
step is to start using <a href="http://jakarta.apache.org/commons/logging/">Commons Logging</a> instead of my own custom
logger.</p></li>
</ul>
]]>
        

    </content>
</entry>

<entry>
    <title>Christmas Gift: PMD 3.9</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2006/12/christmas-gift-pmd-39" />
    <id>tag:ianp.org,2006://1.76</id>

    <published>2006-12-20T14:19:10Z</published>
    <updated>2007-03-19T09:29:54Z</updated>

    <summary><![CDATA[Just in time for Christmas, Tom Copeland has announced a new release of PMD with some notable speed increases. Hopefully this will make it fast enough to use the Eclipse plug-in in regular development, rather than having a separate &lsquo;analysis&rsquo;...]]></summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Java" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Technology" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p>Just in time for Christmas, <a href="http://tomcopeland.blogs.com/juniordeveloper">Tom Copeland</a> has <a href="http://tomcopeland.blogs.com/juniordeveloper/2006/12/pmd_39_three_ti.html">announced</a> a new
release of <a href="http://pmd.sourceforge.net/">PMD</a> with some notable speed increases. Hopefully this will
make it fast enough to use the <a href="http://pmd.sourceforge.net/integrations.html#eclipse">Eclipse plug-in</a> in regular development, rather
than having a separate &lsquo;analysis&rsquo; phase to clean up any warts before each
release.</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Oh, Such a Good Infrastructure</title>
    <link rel="alternate" type="text/html" href="http://ianp.org/2006/12/oh-such-a-good-infrastructure" />
    <id>tag:ianp.org,2006://1.75</id>

    <published>2006-12-19T21:40:23Z</published>
    <updated>2007-01-22T17:35:28Z</updated>

    <summary>Now that the 1.6 release of RvSnoop is out of the door (OK, 1.6.1 &#8216;cause of a wart inthe original release), there are certain features that I&#8217;d like to see added, and for the 2.0 release I want to have...</summary>
    <author>
        <name>Ian Phillips</name>
        <uri>http://ianp.org/</uri>
    </author>
    
        <category term="Java" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="RvSnoop" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Technology" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://ianp.org/">
        <![CDATA[<p>Now that <a href="http://downloads.sourceforge.net/rvsn00p/rvsnoop-1.6.1-bin.tgz">the 1.6 release</a> of <a href="http://rvsnoop.org/">RvSnoop</a> is out of the door (OK, 1.6.1
&#8216;cause of a wart inthe original release), there are certain features that I&#8217;d
like to see added, and for the 2.0 release I want to have in place a
foundation that will make it easier to add these.</p>

<p>A full list of features can be found in the <a href="http://svn.sourceforge.net/viewvc/*checkout*/rvsn00p/trunk/rvsn00p/doc/plans.txt">plan file</a> in the
<a href="http://sourceforge.net/svn/?group_id=63447">RvSnoop Subversion repository</a>, but some of the big ones that
will impact the overall architecture of RvSnoop are&#8230;</p>

<h3>Pluggable Persistence Mechanism</h3>

<p>I&#8217;m going to migrate the record ledger to being persistent, there
are a couple of options here as to how this will be handled: flat
files, a combination of flat files and <a href="http://lucene.apache.org/java/">Lucene</a> based indexes,
or some kind of JDBC backed store.</p>

<p>One option would be to make the persistence mechanism plug-able,
this would also ease the use of an all-in-memory storage system,
like the one that is currently used (which is useful when you just
want to use RvSnoop as a graphical replacement for tibrvlisten).</p>

<h3>Able to Run Headless</h3>

<p>I&#8217;d like to add the ability to run RvSnoop without the UI, this
would be based on loading a pre-configured project. Combining this
feature with a JDBC backed store this could be really useful for
auditing and logging messages.</p>

<h3>EMS Support</h3>

<p>I registered the <a href="http://emssnoop.org/">emssnoop.org</a> domain at the same time as
<a href="http://rvsnoop.org/">rvsnoop.org</a>, and there has been a project on SourceForge for a
while, even if it hasn&#8217;t had anything checked in to it yet! An open
question is whether to try for generic JMS support or just work with
EMS directly.</p>

<h3>User Written Plug-ins</h3>

<p>It would be nice to be able to cleanly extend RvSnoop if required,
without going back and modifying the main code base.</p>

<h3>So, What About 2.0?</h3>

<p>All (well, most) of these features point to a need for an extensible
plug-in system, <a href="http://www.eclipse.org/">Eclipse</a> has shown that a good way of
architecting a desktop application (or any application, for that
matter) is to build it entirely from plug-ins wrapped around a small
core.</p>

<p>So, the upshot of this is that I&#8217;m planning on migrating to a managed runtime,
probably <a href="http://www.osgi.org/">OSGi</a>, for the 2.0 release. I&#8217;ll talk about this more in
another post. In particular, what&#8217;s the cost/benefit ratio of using this type
of runtime; and which runtimes are good?</p>
]]>
        

    </content>
</entry>

</feed>
