<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Gunnar's Weblog &#187; Software Engineering</title>
	<atom:link href="http://wagenknecht.org/blog/category/software-engineering/feed" rel="self" type="application/rss+xml" />
	<link>http://wagenknecht.org/blog</link>
	<description>Me, my family, whatever I like, whatever I want to write about!</description>
	<lastBuildDate>Fri, 23 Jul 2010 19:50:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>When Software is broken&#8230;</title>
		<link>http://wagenknecht.org/blog/archives/2009/10/when-software-is-broken.html</link>
		<comments>http://wagenknecht.org/blog/archives/2009/10/when-software-is-broken.html#comments</comments>
		<pubDate>Tue, 27 Oct 2009 15:26:19 +0000</pubDate>
		<dc:creator>Gunnar Wagenknecht</dc:creator>
				<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://wagenknecht.org/blog/?p=235</guid>
		<description><![CDATA[You get something like this: Nachträgliche manuelle Umbuchungen sind technisch völlig ausgeschlossen, da ein zentrales Rechenzentrum mit Warenwirtschaftssystemanbindung sämtliche Buchungsvorgänge vollautomatisch steuert. Or in English: Manual modifications afterwards are technically absolutely impossible, because we have a central data center with ERP system integration which controls every booking totally automated. Alternative translation: We don&#8217;t have control [...]]]></description>
			<content:encoded><![CDATA[<p>You get something like this:</p>
<blockquote><p>Nachträgliche manuelle Umbuchungen sind technisch völlig ausgeschlossen, da ein zentrales Rechenzentrum mit Warenwirtschaftssystemanbindung sämtliche Buchungsvorgänge vollautomatisch steuert.</p></blockquote>
<p>Or in English:</p>
<blockquote><p>Manual modifications afterwards are technically absolutely impossible, because we have a central data center with ERP system integration which controls every booking totally automated.</p></blockquote>
<p>Alternative translation:</p>
<blockquote><p>We don&#8217;t have control over our software. Sorry folks, you lost.</p></blockquote>
<p>I get this sentence whenever I want to make a change to an already place order. For example, an item is on backorder and it just takes too long but there is a similar one available on stock. Actually I would expect the system to detect this before I place an order but that&#8217;s another story.</p>
<p>#onlineshop #eibmarkt #fail <img src='http://wagenknecht.org/blog/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://wagenknecht.org/blog/archives/2009/10/when-software-is-broken.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Understanding Open Source</title>
		<link>http://wagenknecht.org/blog/archives/2009/05/understanding-open-source.html</link>
		<comments>http://wagenknecht.org/blog/archives/2009/05/understanding-open-source.html#comments</comments>
		<pubDate>Sun, 17 May 2009 07:01:29 +0000</pubDate>
		<dc:creator>Gunnar Wagenknecht</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://wagenknecht.org/blog/?p=228</guid>
		<description><![CDATA[I came across this couple of times before and I always wanted to blog about it. In my daily work life I see many developers which just don&#8217;t get Open Source. For example, some discover issues in libraries they use. But they don&#8217;t fix them. They don&#8217;t even inform the maintainers of a library. Yet [...]]]></description>
			<content:encoded><![CDATA[<p>I came across this couple of times before and I always wanted to blog about it. In my daily work life I see many developers which just don&#8217;t get Open Source. For example, some discover issues in libraries they use. But they don&#8217;t fix them. They don&#8217;t even inform the maintainers of a library. Yet others have a great new use-case to address. Again, the library doesn&#8217;t support it. Thus, they write a great deal of new code to address their issue and eventually run into new ones (for example, see <a title="Open example thread." href="http://dev.eclipse.org/mhonarc/lists/equinox-dev/msg05490.html" target="_blank">this thread</a>).</p>
<p>But it&#8217;s that darn simple!</p>
<ol>
<li>Checkout the library from source. You can use a well known tag/branch for this.</li>
<li>Get in touch with the maintainers and implement your modifications.</li>
<li>Build and release your modified version until a new official release is available.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://wagenknecht.org/blog/archives/2009/05/understanding-open-source.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>The myth of OSGi-fying 3rd party libraries</title>
		<link>http://wagenknecht.org/blog/archives/2009/03/the-myth-of-osgi-fying-3rd-party-libs.html</link>
		<comments>http://wagenknecht.org/blog/archives/2009/03/the-myth-of-osgi-fying-3rd-party-libs.html#comments</comments>
		<pubDate>Thu, 19 Mar 2009 09:18:03 +0000</pubDate>
		<dc:creator>Gunnar Wagenknecht</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[J2EE]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[bundling]]></category>
		<category><![CDATA[OSGi]]></category>
		<category><![CDATA[Spring DM]]></category>

		<guid isPermaLink="false">http://wagenknecht.org/blog/?p=211</guid>
		<description><![CDATA[There is a nice SpringSource blog about their plans for building OSGi applications. Actually, it&#8217;s more an advertisment for their tool called bundlor which basically has the same purpose as bnd but is implemented in a different way. There is one point in the blog the I don&#8217;t like at all. It&#8217;s yet again I [...]]]></description>
			<content:encoded><![CDATA[<p>There is a nice SpringSource blog about <a title="Open SpringSource blog about bundlor" href="http://blog.springsource.com/2009/03/18/our-plans-for-building-osgi-applications/" target="_blank">their plans</a> for building OSGi applications. Actually, it&#8217;s more an advertisment for their tool called bundlor which basically has the same purpose as bnd but is implemented in a different way.</p>
<p>There is one point in the blog the I don&#8217;t like at all. It&#8217;s yet again I hear the myth about automatically generating OSGi bundles from 3rd party libraries and how successful it is used in the SpringSource bundle repository. Folks, it might work for one 3rd party library but it will never work  in an automated way for all 3rd party libraries. There are just too many issues around OSGi-fying 3rd party libs which need to be addressed carefully. If the library deals with class loading you might be out of luck no matter how great your generated manifests look like. You need to modify your source code and/or <a href="http://code.google.com/p/google-web-toolkit/issues/detail?id=1888" target="_blank">patch</a> the 3rd party library to make it work correctly. Even better, sometimes there are multiple ways to convert a 3rd party library into an OSGi bundle. A stubborn one-to-one conversion process cannot incorporate that. It may depend on your requirements and preferences.</p>
<p>The process is not finished with generating manifests. Be aware that this can cause <a href="http://www.springsource.com/repository/app/search?query=lucene" target="_blank">broken bundles</a>. Those issues are <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=260034" target="_blank">fixable</a>. But this example shows that every library requires careful attention.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagenknecht.org/blog/archives/2009/03/the-myth-of-osgi-fying-3rd-party-libs.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>EPL != Popular License</title>
		<link>http://wagenknecht.org/blog/archives/2008/04/epl-not-popular.html</link>
		<comments>http://wagenknecht.org/blog/archives/2008/04/epl-not-popular.html#comments</comments>
		<pubDate>Tue, 29 Apr 2008 06:28:05 +0000</pubDate>
		<dc:creator>Gunnar Wagenknecht</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[EPL]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://wagenknecht.org/blog/?p=165</guid>
		<description><![CDATA[I&#8217;m hosting some projects over at Google Code. As part of the project setup you can select a license from a drop-down list. Apparently, the list is limited to eight licenses. The EPL is not it this list. The Google Help Center says: We&#8217;d like to see projects standardize on the most popular, time-tested ones. [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m hosting some projects over at Google Code. As part of the project setup you can select a license from a drop-down list. Apparently, the list is limited to eight licenses. The EPL is not it this list.</p>
<p>The Google Help Center <a title="Open Google Help Center" href="http://code.google.com/support/bin/answer.py?answer=56537" target="_blank">says</a>:</p>
<blockquote><p><em>We&#8217;d like to see projects standardize on the most popular, time-tested ones. The selected licenses offer diversity to meet most developer needs.</em></p></blockquote>
<p>The question to add EPL to that list came up a couple of times. In one of the <a title="Open discussion thread." href="http://groups.google.com/group/google-code-hosting/browse_thread/thread/5bdaa75aa424bd91/9f8de7f11af3604a" target="_blank">discussions</a> Greg Stein said:</p>
<blockquote><p><em>[...] the Eclipse Public License has not really been adopted by the wider open source community. It is mostly being used just by one smallish corner: projects based on or around Eclipse.</em></p></blockquote>
<p>That sucks, eh? But it gets worse.</p>
<p>I tried to make a reply using the web interface in that thread to make a comment about the license drop-down. For some reason it did not go to the list but directly to Greg. His response shocked me a little bit.</p>
<blockquote><p><em>We only allow those eight licenses. If we find projects that are not licensed as described by the dropdown, then we will remove them.</em></p></blockquote>
<p>Ok, back to SourceForge I guess. <img src='http://wagenknecht.org/blog/wp-includes/images/smilies/icon_neutral.gif' alt=':|' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://wagenknecht.org/blog/archives/2008/04/epl-not-popular.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>How relevant is Bugzilla voting?</title>
		<link>http://wagenknecht.org/blog/archives/2007/11/how-relevant-is-bugzilla-voting.html</link>
		<comments>http://wagenknecht.org/blog/archives/2007/11/how-relevant-is-bugzilla-voting.html#comments</comments>
		<pubDate>Wed, 21 Nov 2007 16:41:38 +0000</pubDate>
		<dc:creator>Gunnar Wagenknecht</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://wagenknecht.org/blog/archives/2007/11/how-relevant-is-bugzilla-voting.html</guid>
		<description><![CDATA[Recently, an interesting question came up in bug 35973. Do Bugzilla votes really reflect the real interest of the broader community in a single feature? From my experience the voting system is only one side. You also need to look at a flipside of a coin. Bugzilla votes are positive votes. They do not reflect [...]]]></description>
			<content:encoded><![CDATA[<p>Recently, an interesting question came up in <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=35973#c99" title="Open bug 35973 - [resources] Better project organization." target="_blank">bug 35973</a>. Do Bugzilla votes really reflect the real interest of the broader community in a single feature? <span id="more-150"></span></p>
<p>From my experience the voting system is only one side. You also need to look at a flipside of a coin. Bugzilla votes are positive votes. They do not reflect ranking. It depends on many factors. For example, a smaller community can become more involved and push any Bugzilla issue up to the top. Even I used <a href="http://wagenknecht.org/blog/archives/2005/07/do-you-want-firefox-as-embedded-browser-in-eclipse.html" title="Open my blog to push Firefox as browser in Eclipse." target="_blank">blogging</a> in the past to push Bugzilla votes. But this doesn&#8217;t mean that Bugzilla votes are useless. They still help to classify the importance of a feature within certain parameters.</p>
<p>For this particular bug I also have a comment. The discussion about efforts, resource consumptions and openness in it is a good point. Everybody is allowed to sponsor an implementation of any feature and contribute it to Eclipse.org. Frankly, if I would sponsor a bunch of developers to implement features in Eclipse this would probably be number 10,001 on <em><strong>my </strong></em>list of 10,000 items. But this doesn&#8217;t mean that it will never happen. Get involved and start hacking. You&#8217;ll love it!</p>
]]></content:encoded>
			<wfw:commentRss>http://wagenknecht.org/blog/archives/2007/11/how-relevant-is-bugzilla-voting.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Persisting Data</title>
		<link>http://wagenknecht.org/blog/archives/2007/10/persisting-data.html</link>
		<comments>http://wagenknecht.org/blog/archives/2007/10/persisting-data.html#comments</comments>
		<pubDate>Tue, 09 Oct 2007 06:14:44 +0000</pubDate>
		<dc:creator>Gunnar Wagenknecht</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[J2EE]]></category>
		<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://wagenknecht.org/blog/archives/2007/10/persisting-data.html</guid>
		<description><![CDATA[Why do people always want to tell you that persisting a &#8220;domain model&#8221; is a many month spanning work item if you can&#8217;t generate the code? Sorry folks, with all due respect to model driven software engineering, but that&#8217;s totally non-sense. It&#8217;s all about developer productivity. The first object is always the hardest. But if [...]]]></description>
			<content:encoded><![CDATA[<p>Why do people always want to <a href="http://sureshkrishna.wordpress.com/2007/10/09/persist-your-emf-objects-with-teneo/" title="Open post from Suresh Krishna" target="_blank">tell you</a> that persisting a &#8220;domain model&#8221; is a many month spanning work item if you can&#8217;t generate the code?</p>
<p>Sorry folks, with all due respect to model driven software engineering, but that&#8217;s totally non-sense. It&#8217;s all about developer productivity. The first object is always the hardest. But if you follow the right approach and build good APIs and use <a href="http://www.eclipse.org/jdt/" title="The best Java Tooling ever." target="_blank">the right tools</a> than it&#8217;s just a matter of minutes for <em>every </em>other domain object.</p>
<p>Don&#8217;t get me wrong. I also use EMF and I love it. But some statements are just plain wrong.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagenknecht.org/blog/archives/2007/10/persisting-data.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>The Vista Experiment</title>
		<link>http://wagenknecht.org/blog/archives/2007/04/the-vista-experiment.html</link>
		<comments>http://wagenknecht.org/blog/archives/2007/04/the-vista-experiment.html#comments</comments>
		<pubDate>Thu, 05 Apr 2007 09:30:04 +0000</pubDate>
		<dc:creator>Gunnar Wagenknecht</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://wagenknecht.org/blog/archives/2007/04/the-vista-experiment.html</guid>
		<description><![CDATA[Last week I received the Windows Vista Upgrade DVD that was part of my T60 which I got right after Christmas from my employer. So I was eager to see Eclipse running on it and decided to do the upgrade and see how it goes. Well, the upgrade went really fine. I started it on [...]]]></description>
			<content:encoded><![CDATA[<p>Last week I received the Windows Vista Upgrade DVD that was part of my <a href="http://www5.pc.ibm.com/europe/products.nsf/$wwwpartnumlookup/_UT0FUxx?open&amp;sourcesite=cema" title="Lenovo ThinkPad T60 2007-FUG" target="_blank">T60</a> which I got right after Christmas from my employer. <img src='http://wagenknecht.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  So I was eager to see Eclipse running on it and decided to do the upgrade and see how it goes.</p>
<p>Well, the upgrade went really fine. I started it on Friday night, went to bed and woke up on Saturday with the update being done and successful. However, a lot of the ThinkPad software, although claiming to support Vista, stopped working. I could solve this mostly by just reinstalling it.</p>
<p>A few hours later I started the Eclipse WPF port. Unfortunately, I was much slower than the regular Eclipse Win32 version. Why? Well, I think it&#8217;s really an early access preview with the first goal of get everything working. Optimization can happen later and that&#8217;s ok. However, it doesn&#8217;t matter because Eclipse 3.3 M6 really exposes all the nice Vista features. <img src='http://wagenknecht.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Great job SWT team!!! I love your toolkit!</p>
<p>Anyway, after working for a couple of days with it I had to restore my XP image yesterday night. <img src='http://wagenknecht.org/blog/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  Sometimes it is really just one <a href="http://forum.thinkpads.com/viewtopic.php?t=40286" title="Cannot apply presentation scheme when docking." target="_blank">small</a> issue or a combination of a few that influences your workflow in a way that you simply don&#8217;t want to go.</p>
<p>What makes this even worse is that it&#8217;s really closed development. I really wanted to report this, to make the people aware of the problem and to help debugging it. But other than a somewhat useless support form there is no way to inform the developers. The form is IMHO useless because after a few weeks (it were actually three weeks the last time I tried it) you get a replay that software support is only available during the first four weeks after purchase.</p>
<p>This is closed development &#8211; be stuck to your problems and wait for a future release that happens eventually. I wish companies would start learning from <strike>themselves</strike> each other. It really doesn&#8217;t have to be that way.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagenknecht.org/blog/archives/2007/04/the-vista-experiment.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Swing/AWT Sucks</title>
		<link>http://wagenknecht.org/blog/archives/2006/05/swingawt-sucks.html</link>
		<comments>http://wagenknecht.org/blog/archives/2006/05/swingawt-sucks.html#comments</comments>
		<pubDate>Thu, 11 May 2006 13:14:48 +0000</pubDate>
		<dc:creator>Gunnar Wagenknecht</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://wagenknecht.org/blog/archives/2006/05/swingawt-sucks.html</guid>
		<description><![CDATA[Honestly, I don&#8217;t want to jump onto the latest Swing/SWT discussions. But look at the screenshot taken 5 minutes ago on my desktop. I just wanted to try a Java Web Start application. I had this blank windows problem before on another machine and it was a Swing/AWT application too. In fact, it&#8217;s a real [...]]]></description>
			<content:encoded><![CDATA[<p>Honestly, I don&#8217;t want to <a href="http://mea-bloga.blogspot.com/2006/05/i-declare-shenanigans.html">jump onto</a> the latest Swing/SWT discussions. But look at the screenshot taken 5 minutes ago on my desktop. I just wanted to try a Java Web Start application. <img src='http://wagenknecht.org/blog/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p><img id="image90" alt="Empty Swing Windows" title="Empty Swing Windows" src="http://wagenknecht.org/blog/wp-content/uploads/2006/05/empty-windows.png" /></p>
<p>I had this blank windows problem before on another machine and it was a Swing/AWT application too. In fact, it&#8217;s a real pain and it only happens to Swing applications. Some weird thing the Sun JVM is doing with the graphics driver probably. Who knows. In such cases I honestly prefer SWT over everything else. It just works.</p>
<pre>C:>java -version
java version "1.5.0_06" Java(TM) 2 Runtime Environment,
Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Client VM
(build 1.5.0_06-b05, mixed mode)</pre>
<p>The last time, I could solve the problem by upgrading the graphic cards driver. But this time I&#8217;m already on the latest version.</p>
<p>So come on Sun guys. What to do? I already had an eight days email conversation with the Dell hotline. Maybe you can convince them to update the graphics driver for the Inspiron 6000 notebook. Or better, can you fix Swing?</p>
<p>BTW, I often read and hear in this discussion that SWT is not cross-platform. Come on guys, you can&#8217;t be serious. SWT is as cross-platform as Swing. Swing wouldn&#8217;t be possible without the native code that is integrated in every JVM and must be re-implemented on every platform the JVM supports. The same is true for SWT. The native part is just not hidden in the JVM.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagenknecht.org/blog/archives/2006/05/swingawt-sucks.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Isolated solutions</title>
		<link>http://wagenknecht.org/blog/archives/2006/04/isolated-solutions.html</link>
		<comments>http://wagenknecht.org/blog/archives/2006/04/isolated-solutions.html#comments</comments>
		<pubDate>Mon, 17 Apr 2006 13:32:18 +0000</pubDate>
		<dc:creator>Gunnar Wagenknecht</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[J2EE]]></category>
		<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://wagenknecht.org/blog/archives/2006/04/isolated-solutions.html</guid>
		<description><![CDATA[In this post Mike refers (and answers?) to a blog posting from John O’Shea. John is complaining about the architecture and interoperability of several Eclipse top level projects (named WTP, STP, TPTP, BIRT). A cursory look at the architectures of many of the top level projects (WTP, STP, TPTP, BIRT etc.) shows the lack of [...]]]></description>
			<content:encoded><![CDATA[<p>In <a target="_blank" title="Seeking a Balance" href="http://milinkovich.blogspot.com/2006/04/seeking-balance.html">this post</a> Mike refers (and answers?) to a <a target="_blank" title="JCP “rubberstamping” and Eclipse.org project disarray?" href="http://www.xlml.com/aehso/2006/03/14/jcp-rubberstamping-and-eclipseorg-project-disarray/">blog posting</a> from John O’Shea. John is complaining about the architecture and interoperability of several Eclipse top level projects (named WTP, STP, TPTP, BIRT).</p>
<blockquote><p><em>A cursory look at the architectures of many of the <a href="http://www.eclipse.org/projects/">top level projects</a> (WTP, STP, TPTP, BIRT etc.) shows the lack of intra-project cooperation is resulting in frameworks that simply don’t integrate with one another in they ways we all want them to.</em></p></blockquote>
<p>Honestly, I partly agree with John but more from a usability point of view. Ok, that&#8217;s another topic. <img src='http://wagenknecht.org/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  But I think we have to remember that all these projects are very young projects compared to the Eclipse top level project itself. You can&#8217;t expect to get everything done in release 1.0, 1.5 or even 2.0. AFAIK the first goal was to <em>successfully </em>establish the projects on Eclipse.org and to create a vital user, developer and adopter community. With <a target="_blank" title="The Callisto Release" href="http://www.eclipse.org/projects/callisto.php">Callisto</a> I&#8217;m expecting this goal marked as fixed.</p>
<p>I also agree that one of the next goals should be concentrating on areas where the projects can create more interoperability. But again, I have to remind that work on this topic has already started in the past. <span id="more-79"></span>It&#8217;s is an ongoing long term goal that can&#8217;t just be solver over night or with the next release. For example, the common navigator framework and the tabbed properties view are two good solutions that were contributed to Eclipse as part of the initial WTP contribution and are now integrated into Eclipse 3.2.</p>
<p>On the other side, there are indeed examples of projects creating their own solutions to a very common problem that is better solved at a platform level. I accidentally came across such an issue on the weekend when I was talking to a guy on IRC. He just asked a question about a problem registering selection listeners to workbench parts. Well, I&#8217;m a curious guy and I was wondering why someone is watching part activation and registering selection listeners to every single workbench part when there is the workbench&#8217;s selection service. So I just asked him and we had a very interesting talk. During this conversation it came out that one Eclipse.org project was trying to create there own data binding framework. Well, that&#8217;s crazy and definitely not along the line of Eclipse.</p>
<p><em>But how to avoid this in the future?</em></p>
<p>In my opinion it&#8217;s all about <em>communication</em>, <em>openness </em>and <em>transparency</em>. This is <em><strong>the </strong>great advantage</em> of open source development. But it can only be successful if it&#8217;s practiced by <em>all involved parties</em>. The issue above just turned out to be caused by a lack of openness and communication. They started developing their own data binding framework because they didn&#8217;t know about the <a title="JFace Data Binding" target="_blank" href="http://wiki.eclipse.org/index.php/JFace_Data_Binding">JFace data binding</a> framework. You now may ask why is this a problem of openness and communication? Let me explain.</p>
<p>Openness is not only about opening your software and your processes to a community. It&#8217;s also about opening yourself and your mind to the input from the community. The same goes for communication. Communication is not only about starting telling everybody what you are going to do but also about starting listening to the community what they do and what&#8217;s going on there.</p>
<p>Referring back to the post of John, he asks who is responsible for avoiding miss-interoperability at Eclipse. I think in the example above it&#8217;s hard to blame anybody. The project is really young and I bet due to the lack of communication the PMC didn&#8217;t know about this. I also don&#8217;t think that you ever can blame somebody specific for such issues. It&#8217;s the community including committers, leads, PMC members, Eclipse.org member companies and <a target="_blank" title="Eclipse Councils" href="http://www.eclipse.org/org/foundation/council.php">councils</a> that has to demonstrate and practice their openness, transparency and communication skills.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagenknecht.org/blog/archives/2006/04/isolated-solutions.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Hot Jazz vs. Cold Beans</title>
		<link>http://wagenknecht.org/blog/archives/2006/03/hot-jazz-vs-cold-beans.html</link>
		<comments>http://wagenknecht.org/blog/archives/2006/03/hot-jazz-vs-cold-beans.html#comments</comments>
		<pubDate>Wed, 22 Mar 2006 15:51:46 +0000</pubDate>
		<dc:creator>Gunnar Wagenknecht</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[EclipseCon]]></category>
		<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://wagenknecht.org/blog/archives/2006/03/hot-jazz-vs-cold-beans.html</guid>
		<description><![CDATA[Honestly, this title sounds offending but I&#8217;m definitely not a guy who likes to start a flame war. It&#8217;s just a funny title we came up with in a typical EclipseCon night. Well, I&#8217;m referring to the BOF yesterday held by John Wiegand, Erich Gamma and IBM Rational. Jazz is a technology that wires all [...]]]></description>
			<content:encoded><![CDATA[<p>Honestly, this title sounds offending but I&#8217;m definitely not a guy who likes to start a flame war. It&#8217;s just a funny title we came up with in a <a title="EclipseCon Nights" href="http://photos1.blogger.com/blogger/518/579/1600/MyPlan.jpg">typical</a> EclipseCon night. <img src='http://wagenknecht.org/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Well, I&#8217;m referring to the BOF yesterday held by John Wiegand, Erich Gamma and IBM Rational. Jazz is a technology that wires all the processes, artifacts, policies and systems involved in software development into Eclipse.</p>
<p>It really simplifies the whole process greatly. It also uses ECF technology to enable live communication between developers. Other technologies involved where Tomcat, Cloudscape, EMF, GEF (Draw2D) and CruiseControl. They also explained that they imported tasks/bugs from Bugzilla. However, it&#8217;s not tight to these technologies because Jazz is extensible and everybody &#8211; commercial software vendors as well as open source developers &#8211; are invited to extend it and to integrate it with their technologies.<span id="more-74"></span></p>
<p>IMHO this is one of the key features of Jazz. Jazz doesn&#8217;t force you to throw away your existing systems. The demo they gave showed that Jazz will solve many, many issued that the Eclipse Platform and JDT developers currently have. No need to manually edit and update a milestone plan anymore, reports of your project health inside Eclipse, no need to leave Eclipse for working with Bugzilla, always recognize what your team is working on and instant &#8220;blaming&#8221; and reporting when a build fails and a lot more stuff.</p>
<p>Unfortunately, I didn&#8217;t have a camera with me. It&#8217;s just too much to describe. But there is one feature that I also like to introduce. You ever had the cased when working on a feature in your workspace and a bug comes in? Sometimes you have changes that you can&#8217;t commit at this time. But your workspace is not clean. What to do?</p>
<p>Usually, I create a second workspace for this but now guess how Jazz is handling this. It allows you to <em>suspend</em> your work. If you suspend your changes they are moved out of your workspace and your workspace is back in a clean state. You can now work on the bug and resume to your changes after that. I don&#8217;t know how they&#8217;ve implemented it but I think it can be done using storing diffs in a database.</p>
<p>According to Kai-Uwe Maetzel they are already self-hosting. But we should really NOT expect anything before the end of this year. John Wiegand mentioned that there eventually can be a technical preview ready by the end of this year but we can not expect it.</p>
<p>Although it&#8217;s based on open source technologies it is IBM Rational technology. But no decision has been made yet how this is going to be released. Hopefully, we will be able to use it in open source communities without paying for it. But believe me or not. I think Jazz will greatly influence the way how we develop software collaborated in teams.</p>
<p><strong>Update (2006-03-23)<br />
</strong></p>
<p>I met Jean-Michel Lemieux at the Hyatt Bar. He is one of the Team CVS guys in Ottawa and clarified things a little bit. I&#8217;m very thankful for his comments and insights. Jazz comes with its own SCM and tracking system. However, the demonstration showed that it comes with a clean migration path for existing technologies like Bugzilla and CVS.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagenknecht.org/blog/archives/2006/03/hot-jazz-vs-cold-beans.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>I hate provisional API</title>
		<link>http://wagenknecht.org/blog/archives/2006/03/i-hate-provisional-api.html</link>
		<comments>http://wagenknecht.org/blog/archives/2006/03/i-hate-provisional-api.html#comments</comments>
		<pubDate>Thu, 09 Mar 2006 19:22:15 +0000</pubDate>
		<dc:creator>Gunnar Wagenknecht</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://wagenknecht.org/blog/archives/2006/03/i-hate-provisional-api.html</guid>
		<description><![CDATA[Eclipse puts provisional API into internal packages. I think this is really distracting. Why? Well, provisional API should encourage early adopters to support upcoming features. Great. But what do they get from adopting an API that will be moved to some other package in a later point of time? Right, their adoption breaks and the [...]]]></description>
			<content:encoded><![CDATA[<p>Eclipse puts provisional API into <code>internal</code> packages. I think this is really distracting. Why? Well, provisional API should encourage early adopters to support upcoming features. Great. But what do they get from adopting an API that will be moved to some other package in a later point of time? Right, their adoption breaks and the users of their plug-ins are stuck to an older Eclipse release.</p>
<p>This now happened to me with the Borland StarTeam integration. The developers adopted to the ResourceMapping support introduced in Eclipse 3.1. Actually this should bring the plug-in some benefits in handling model objects that are backed by multiple resources. That&#8217;s a great idea but now I&#8217;m stuck to Eclipse 3.1 and can&#8217;t use 3.2 M5 anymore because the package name of the Resource mapping support changed and the plug-ins can&#8217;t be started anymore due to a <code>java.lang.NoClassDefFoundError: org...<em>internal</em>...mapping.ResourceMapping</code>. This reduces the intendence of the adoption to absurdity. Even a <code>match="greaterOrEqual"</code> won&#8217;t help in this case.</p>
<p>Unfortunately, the StarTeam integration is closed source. Thus, I can&#8217;t go an fix this stupid error myself. I probably have to wait till long after Eclipse 3.2 has been released to get an updated. <img src='http://wagenknecht.org/blog/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p>And at the end? Nobody will get any benifits. Users are stuck to an older technology or need to drop the Team integration completely. The adopters appologize and may consider not adopting next time. And the developer will get no feedback about his API because there won&#8217;t be any volunteers anymore. <img src='http://wagenknecht.org/blog/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p><strong>Update 2006-08-17:</strong></p>
<p>I&#8217;ve written a plug-in for Polarion&#8217;s SVNImporter. It allows you the migrate from StarTeam to Subversion. The code is available <a target="_blank" title="Polarion SVNImporter Repository" href="http://svn.polarion.org/repos/community/svnimporter/trunk/org.polarion.svnimporter.stprovider/">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagenknecht.org/blog/archives/2006/03/i-hate-provisional-api.html/feed</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>The Trac Project</title>
		<link>http://wagenknecht.org/blog/archives/2005/06/the-trac-project.html</link>
		<comments>http://wagenknecht.org/blog/archives/2005/06/the-trac-project.html#comments</comments>
		<pubDate>Mon, 06 Jun 2005 05:55:06 +0000</pubDate>
		<dc:creator>Gunnar Wagenknecht</dc:creator>
				<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://wagenknecht.org/blog/?p=18</guid>
		<description><![CDATA[Today I came across the Trac Project. Trac is an enhanced wiki and issue tracking system for software development projects. Trac uses a minimalistic approach to web-based software project management. I only had a quick look but this software is fascinating. It integrates software like Bugzilla and ViewCVS into a Wiki system. This allows one [...]]]></description>
			<content:encoded><![CDATA[<p>Today I came across the <a href="http://projects.edgewall.com/trac/">Trac Project</a>.</p>
<p><em>Trac is an enhanced wiki and issue tracking system for software development projects. Trac uses a minimalistic approach to web-based software project management.</em></p>
<p>I only had a quick look but this software is fascinating. <span id="more-18"></span>It integrates software like Bugzilla and ViewCVS into a Wiki system. This allows one to use Wiki formattings, WikiWords and bug numbers inside commit comments. These commits are displayed as nice changesets (<a href="http://projects.edgewall.com/trac/changeset/1230">see example</a>) including inlide diff. A roadmap is generated automatically from the ticket system with a nice progress bar (see <a href="http://projects.edgewall.com/trac/roadmap">here</a> for an example).</p>
<p>Is great to see such software evolving. It allows you to focus on development and reduces the project management documentation overhead. Roadmaps, changelists and timelines are generated automatically. You don&#8217;t need to waste your time on formatting status reports.</p>
]]></content:encoded>
			<wfw:commentRss>http://wagenknecht.org/blog/archives/2005/06/the-trac-project.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
