<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:planet="http://planet.intertwingly.net/" xmlns:indexing="urn:atom-extension:indexing" indexing:index="no"><access:restriction xmlns:access="http://www.bloglines.com/about/specs/fac-1.0" relationship="deny"/>
  <title>Planet Eclipse</title>
  <updated>2012-02-04T04:53:19Z</updated>
  <generator uri="http://intertwingly.net/code/venus/">Venus</generator>
  <author>
    <name>Planet Eclipse Admins</name>
    <email>webmaster@eclipse.org</email>
  </author>
  <id>http://planeteclipse.org/planet/rss20.xml</id>
  <link href="http://planeteclipse.org/planet/rss20.xml" rel="self" type="application/rss+xml"/>
  <link href="http://planeteclipse.org/planet/" rel="alternate"/>

  <entry>
    <id>tag:blogger.com,1999:blog-16474715.post-1376781600201794359</id>
    <link href="http://cdtdoug.blogspot.com/feeds/1376781600201794359/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://cdtdoug.blogspot.com/2012/02/eclipse-cc-ide-reaches-750000-downloads.html#comment-form" rel="replies" title="0 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/16474715/posts/default/1376781600201794359" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/16474715/posts/default/1376781600201794359" rel="self" type="application/atom+xml"/>
    <link href="http://cdtdoug.blogspot.com/2012/02/eclipse-cc-ide-reaches-750000-downloads.html" rel="alternate" title="Eclipse C/C++ IDE reaches 750,000 downloads for Indigo-SR1" type="text/html"/>
    <title>Eclipse C/C++ IDE reaches 750,000 downloads for Indigo-SR1</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><blockquote class="twitter-tweet"><p>Wow! The Eclipse C/C++ IDE, including the Linux variant, has passed 750,000 downloads for Indigo SR-1, in only 4 months.</p>— Doug Schaefer (@dougschaefer) <a href="https://twitter.com/dougschaefer/status/165471965900058625">February 3, 2012</a></blockquote><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/16474715-1376781600201794359?l=cdtdoug.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-02-03T18:29:10Z</updated>
    <published>2012-02-03T18:29:00Z</published>
    <author>
      <name>Doug Schaefer</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/14088309262879705593</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-16474715</id>
      <category term="mobile"/>
      <category term="linux"/>
      <category term="wind river"/>
      <category term="android"/>
      <category term="eclipse"/>
      <category term="None"/>
      <author>
        <name>Doug Schaefer</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/14088309262879705593</uri>
      </author>
      <link href="http://cdtdoug.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/16474715/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://cdtdoug.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/16474715/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>Hey all. This blog records my thoughts of the day about my life on the Eclipse CDT project. I will occasionally give opinions and news regarding the Eclipse CDT - the project and its ecosystem - and on open source in general. Please feel free to comment on anything I say. I appreciate it when people are honest with me. And, please, please, consider all of these opinions mine, not of my employer.</subtitle>
      <title>Doug on the Eclipse CDT</title>
      <updated>2012-02-03T18:29:10Z</updated>
    </source>
  </entry>

  <entry>
    <id>https://community.jboss.org/community/tools/blog/2012/02/03/m2eclipse-wtp-0150-new-noteworthy</id>
    <link href="https://community.jboss.org/community/tools/blog/2012/02/03/m2eclipse-wtp-0150-new-noteworthy" rel="alternate" type="text/html"/>
    <title>m2e(clipse)-wtp 0.15.0 : New &amp; Noteworthy</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div class="jive-rendered-content"><p>Maven Integration for Eclipse WTP 0.15.0, a.k.a m2eclipse-wtp, a.k.a m2e-wtp is available.</p><p>This release contains mostly bug fixes, but a few improvements managed to slip in. The complete release notes are available <a class="jive-link-external-small" href="https://issues.sonatype.org/secure/ReleaseNote.jspa?projectId=10310&amp;version=11420">here</a>.</p><p style="height: 8pt; padding: 0px;"> </p><p>m2e-wtp 0.15.0 is compatible with the JavaEE distributions of Eclipse Helios and Indigo, requires at least m2e 1.0 (works with 1.1) and mavenarchiver plugin &gt;= 0.14.0 (0.15.0 should be automatically installed).</p><p>As usual, m2e-wtp can be installed from :</p><p><span style="color: #555555; font-size: 12px; font-family: 'Lucida Sans', 'Lucida Sans Unicode', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif;"><br/></span></p><ul><li>the Maven Discovery mechanism, for new installations : Window &gt; Preferences &gt; Maven &gt; Discovery &gt; Open catalog</li><li>the <a class="jive-link-external-small" href="http://marketplace.eclipse.org/content/maven-integration-eclipse-wtp" style="color: #355491;">Eclipse Marketplace</a> : Help &gt; Eclipse Marketplace</li><li>the update site : <strong><a class="jive-link-external-small" href="http://download.jboss.org/jbosstools/updates/m2eclipse-wtp/" style="color: #355491;">http://download.jboss.org/jbosstools/updates/m2eclipse-wtp/</a></strong></li></ul><p style="height: 8pt; padding: 0px;"> </p><p>So let's see what are the highlights of this new release :</p><p style="height: 8pt; padding: 0px;"> </p><h3><span style="color: #666699;">Packaging inclusion/exclusion support improvements</span></h3><p>For war project, previous m2e-wtp versions used to use &lt;packagingIncludes&gt; and &lt;packagingExcludes&gt; attributes from the maven-war-plugin config to enable (or not) the deployment of project dependencies to WTP servers. In 0.15.0, the same level of support has been added to EAR projects using maven-ear-plugin 2.7+. However, the problem with this approach is, other resources (web pages, classes ...) are not properly excluded (using the &lt;*SourceInclude&gt; and &lt;*SourceExclude&gt; attributes). </p><p style="height: 8pt; padding: 0px;"> </p><p>In order to address this problem, <a class="jive-link-profile-small" href="https://community.jboss.org/people/rob.stryker">Rob Stryker</a>, committer on WTP and lead of JBoss AS tooling in JBoss Tools, provided an implementation for JBoss AS servers that might be generalized to other WTP server adapters (if they decide to do so). Basically, some new metadata is added to the project's .settings/org.eclipse.wst.common.component like : </p><p style="height: 8pt; padding: 0px;"> </p><pre class="jive-pre"><code class="jive-code jive-xml"><span class="jive-xml-tag">&lt;?xml version="1.0" encoding="UTF-8"?&gt;</span>
<span class="jive-xml-tag">&lt;project-modules id="moduleCoreId" project-version="1.5.0"&gt;</span>
    <span class="jive-xml-tag">&lt;wb-module deploy-name="webOrEar"&gt;</span>
         ...
        <span class="jive-xml-tag">&lt;property name="component.inclusion.patterns" value="pattern1,pattern2"/&gt;</span>
        <span class="jive-xml-tag">&lt;property name="component.exclusion.patterns" value="pattern3,pattern4"/&gt;</span>
    <span class="jive-xml-tag">&lt;/wb-module&gt;</span>
<span class="jive-xml-tag">&lt;/project-modules&gt;</span>
</code></pre><p style="height: 8pt; padding: 0px;"> </p><p>The patterns are separated with a comma and exclusions take precedence over inclusions : resources matching one of the exclusion patterns are not deployed, even if they match one of the inclusion patterns. That solution is not maven-bound so any other kind of project can benefit from it.</p><p>Now all m2e-wtp 0.15.0 does is map the maven patterns to their equivalent component metadata. This gives : </p><p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/38-4510-17915/component_patterns.png"><img alt="component_patterns.png" class="jive-image-thumbnail jive-image" height="209" src="https://community.jboss.org/servlet/JiveServlet/downloadImage/38-4510-17915/450-209/component_patterns.png" width="450"/></a></p><p>In the example above, a warning is displayed as both &lt;warSourceIncludes&gt; and &lt;packagingIncludes&gt; are defined. Since both patterns could overlap, it might lead to some weird behavior where WTP would actually deploy more files than a maven CLI build. In order to minimize (we can not totally solve) that potential discrepancy we only keep the packaging patterns in the component files and recommend using &lt;packagingIncludes&gt; only. </p><p style="height: 8pt; padding: 0px;"> </p><p>Currently, this feature only works in combination with the JBoss AS Tools from JBoss Tools 3.3.0.Beta1 (nightly builds available from<a class="jive-link-external-small" href="http://download.jboss.org/jbosstools/updates/nightly/trunk/"> http://download.jboss.org/jbosstools/updates/nightly/trunk/</a>), but we'll try to make other WTP Server adapter vendors support it in the future (as part of WTP core API).</p><p style="height: 8pt; padding: 0px;"> </p><h3><span style="color: #666699;">Warnings added when unsupported dependency types are detected</span></h3><p>As of today, if a project depends on another workspace project of type ejb-client or test-jar,  that specific dependency will not be packaged properly by WTP, as Maven would do in command line. Moreover, you'll experience some class leakage on the compilation and test classpaths in Eclipse (ex: non client classes being visible). The only known workarounds to this issue are to disable workspace resolution, or close the dependent project and rely on the dependencies from the local maven repository.</p><p>Ideally, in order to make the deployment part work, we would need to introduce new WTP components, but the current WTP API <a class="jive-link-external-small" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=330894">doesn't support it, yet</a>. So, until this is fixed, warning markers are added whenever a project depends on such "unsupported" types. That should hopefully give users an idea of the problem and how to circumvent it. </p><p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/38-4510-17913/unsupported-dependency-type.png"><img alt="unsupported-dependency-type.png" class="jive-image-thumbnail jive-image" height="267" src="https://community.jboss.org/servlet/JiveServlet/downloadImage/38-4510-17913/450-267/unsupported-dependency-type.png" width="450"/></a></p><h3><span style="color: #666699;">Better handling of dependencies in war projects</span></h3><p>Previous m2e-wtp versions had, in some use cases, some outstanding issues with regard to dependency management of war projects. In particular, </p><ul><li>when 2 dependencies of the same artifact, but having a different classifier were added to a web project, only one would show up on the classpath. This has been properly fixed.</li><li>in some cases, the timestamped version of a SNAPSHOT dependencies from the local repository, would be copied under the target/ folder, causing some jar locking issues in windows. The rationale behind this behavior is, maven-war-plugin packages snapshot dependencies using the timestamp identifier. Since the name of file in the maven classpath library needs to match the one deployed by WTP, a copy was performed. To fix this problem, the default file pattern matching used for dependency deployment has been changed to @{artifactId}@-@{baseVersion}@@{dashClassifier?}@.@{extension}@. This means that, by default in m2e-wtp, SNAPSHOT dependencies are now deployed using the SNAPSHOT suffix instead of the timestamp. If you need to force the use of timestamped artifacts, then you need to explicitely decalre the following in your pom.xml :</li></ul><p style="height: 8pt; padding: 0px;"> </p><pre class="jive-pre"><code class="jive-code jive-xml"><span class="jive-xml-tag">&lt;plugin&gt;</span>
  <span class="jive-xml-tag">&lt;groupId&gt;</span>org.apache.maven.plugins<span class="jive-xml-tag">&lt;/groupId&gt;</span>
  <span class="jive-xml-tag">&lt;artifactId&gt;</span>maven-war-plugin<span class="jive-xml-tag">&lt;/artifactId&gt;</span>
  <span class="jive-xml-tag">&lt;version&gt;</span>2.2<span class="jive-xml-tag">&lt;/version&gt;</span>
  <span class="jive-xml-tag">&lt;configuration&gt;</span>
    <span class="jive-xml-tag">&lt;outputFileNameMapping&gt;</span>@{artifactId}@-@{version}@@{dashClassifier?}@.@{extension}@<span class="jive-xml-tag">&lt;/outputFileNameMapping&gt;</span>
  <span class="jive-xml-tag">&lt;/configuration&gt;</span>
<span class="jive-xml-tag">&lt;/plugin&gt;</span>
</code></pre><p style="height: 8pt; padding: 0px;"> </p><h3><span style="color: #666699;">Removal of conflicting facets on packaging change<br/></span></h3><p>If you had a java utility project, that you wanted to upgrade to an EJB project for example, a constraint violation would be raised upon project configuration update (EJB and Utility facets can't be both installed).</p><p>This has been fixed by removing all conflicting facets when you change the packaging of a Java EE project, making that conversion completely transparent.</p><p style="height: 8pt; padding: 0px;"> </p><h3><span style="color: #666699;">What's next?<br/></span></h3><p>m2e 1.1 introduces a new Eclipse to Maven project <a class="jive-link-external-small" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=359340">conversion API</a>. It means that, in m2e-wtp.next, we will be able to automatically convert existing WTP project configuration to maven's. Dependencies will still need to be set/translated manually but that's a pretty good start IMHO. </p><h3><span style="color: #666699;"><br/>Finally ...<br/></span></h3><p>I would like to thank the m2e-wtp community at large for their support and contributions, that's what make this project move forward and make it <a class="jive-link-external-small" href="http://marketplace.eclipse.org/metrics/installs/last30days">one of the most popular projects</a> on the eclipse marketplace. </p><p>Contributions can take the form of : </p><ul><li>patches/pull requests (source is available on <a class="jive-link-external-small" href="https://github.com/sonatype/m2eclipse-wtp/">https://github.com/sonatype/m2eclipse-wtp/)</a>, as Laszlo Varadi did to<a class="jive-link-external-small" href="https://issues.sonatype.org/browse/MECLIPSEWTP-201"> fix some overlay issue in windows</a>, </li><li>bug reports (at <a class="jive-link-external-small" href="https://issues.sonatype.org/browse/MECLIPSEWTP">https://issues.sonatype.org/browse/MECLIPSEWTP</a>) </li><li>help on the documentation in the <a class="jive-link-external-small" href="https://github.com/sonatype/m2eclipse-wtp/wiki">wiki</a>.</li><li>answering questions on the <a class="jive-link-external-small" href="https://dev.eclipse.org/mailman/listinfo/m2e-users">m2e mailing list</a></li></ul><p style="height: 8pt; padding: 0px;"> </p><p>Keep it up.</p><p style="height: 8pt; padding: 0px;"> </p><p style="height: 8pt; padding: 0px;"> </p><p>Fred.</p><p><a class="jive-link-external-small" href="https://twitter.com/#!/fbricon" target="_blank">https://twitter.com/#!/fbricon</a></p></div></div>
    </summary>
    <updated>2012-02-03T18:01:36Z</updated>
    <published>2012-02-03T17:55:31Z</published>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="jbosstools"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="eclipse"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="maven"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="wtp"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="helios"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="m2e"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="server_adapter"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="indigo"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="m2e-wtp"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="jbosscentral"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="exclusion_patterns"/>
    <author>
      <name>Fred Bricon</name>
      <email>do-not-reply@jboss.com</email>
      <uri>https://community.jboss.org/people/fbricon</uri>
    </author>
    <source>
      <id>https://community.jboss.org/community/tools/blog</id>
      <link href="https://community.jboss.org/community/tools/blog" rel="alternate" type="text/html"/>
      <link href="http://community.jboss.org/en/tools/blog/feeds/posts" rel="self" type="application/atom+xml"/>
      <subtitle>How to install and use the JBoss Tools modules.</subtitle>
      <title>JBoss Tools</title>
      <updated>2012-02-03T18:01:36Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://eclipsesource.com/blogs/?p=7034</id>
    <link href="http://eclipsesource.com/blogs/2012/02/03/eclipse-epp-juno-m5/" rel="alternate" type="text/html"/>
    <title>Eclipse Juno M5 and Indigo SR2 RC2</title>
    <summary>Two releases of the Eclipse EPP packages today: The packages for Indigo SR2 RC2 (the second release candidate for the second service release of the Indigo release, based on Eclipse Platform 3.7.2) and the packages for this year’s Simultaneous Release Juno M5 (the 5th milestone based on Eclipse Platform 4.2) are available: http://www.eclipse.org/downloads/index-developer.php Please test [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Two releases of the Eclipse EPP packages today:</p>
<p>The packages for <a href="http://www.eclipse.org/downloads/packages/release/indigo/sr2-rc2" target="_blank"><strong>Indigo SR2 RC2</strong></a> (the <em>second release candidate</em> for the <em>second service release</em> of the Indigo release, based on Eclipse Platform 3.7.2) and the packages for this year’s Simultaneous Release <a href="http://www.eclipse.org/downloads/packages/release/juno/m5" target="_blank"><strong>Juno M5</strong></a> (the <em>5th milestone</em> based on Eclipse Platform 4.2) are available:</p>
<p><a href="http://www.eclipse.org/downloads/index-developer.php" target="_blank">http://www.eclipse.org/downloads/index-developer.php</a></p>
<p>Please test and report any issues in <a href="https://bugs.eclipse.org/bugs/" target="_blank">Bugzilla</a>. Especially the Eclipse 4.x team needs your help! The sooner bugs are found, the sooner they can be fixed!</p>
<p>One of the changes is the addition of <a href="http://www.eclipse.org/recommenders/" target="_blank">Eclipse Code Recommenders</a> to the <a href="http://www.eclipse.org/downloads/packages/eclipse-rcp-and-rap-developers/junom5" target="_blank">Eclipse for RCP and RAP Developers package</a>.</p></div>
    </content>
    <updated>2012-02-03T17:54:04Z</updated>
    <category term="eclipse"/>
    <category term="syndicate"/>
    <author>
      <name>Markus Knauer</name>
    </author>
    <source>
      <id>http://eclipsesource.com/blogs</id>
      <link href="http://eclipsesource.com/blogs/author/mknauer/feed/?category=syndicate" rel="self" type="application/rss+xml"/>
      <link href="http://eclipsesource.com/blogs" rel="alternate" type="text/html"/>
      <subtitle>Eclipse Equinox OSGi</subtitle>
      <title>EclipseSource Blog » Markus Knauer</title>
      <updated>2012-02-04T04:50:31Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-15140216.post-6907268417218262055</id>
    <link href="http://eclipsewebmaster.blogspot.com/feeds/6907268417218262055/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=15140216&amp;postID=6907268417218262055" rel="replies" title="3 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/15140216/posts/default/6907268417218262055" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/15140216/posts/default/6907268417218262055" rel="self" type="application/atom+xml"/>
    <link href="http://eclipsewebmaster.blogspot.com/2012/02/eclipsecon-poll-what-do-you-think-of.html" rel="alternate" title="EclipseCon Poll: What do you think of the location change?" type="text/html"/>
    <title>EclipseCon Poll: What do you think of the location change?</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">I haven't done a whacky poll in a long time, so there's no better time than now.<br/><br/>You all know that this year, our <a href="http://www.eclipsecon.org/2012/">favourite Eclipse gathering</a> is <a href="http://www.eclipsecon.org/2012/venue">moving to a new location</a>.  After so many years in California, what do you think of this move?<br/><br/>Cast your vote by clickety-clicking the links below.  I'll post up the results tomorrow.<br/><br/><a href="http://eclipsecon.org/the-weather-better-be-warm-and-the-beer-cold.wbmstr">http://eclipsecon.org/the-weather-better-be-warm-and-the-beer-cold.wbmstr</a><br/><br/><a href="http://eclipsecon.org/yay-less-time-on-an-airplane.wbmstr">http://eclipsecon.org/yay-less-time-on-an-airplane.wbmstr</a><br/><br/><a href="http://eclipsecon.org/oh-no-more-time-on-an-airplane.wbmstr">http://eclipsecon.org/oh-no-more-time-on-an-airplane.wbmstr</a><br/><br/><a href="http://eclipsecon.org/if-its-not-in-california-im-not-going.wbmstr">http://eclipsecon.org/if-its-not-in-california-im-not-going.wbmstr</a><br/><br/><a href="http://eclipsecon.org/no-matter-where-eclipsecon-is-webmasters-will-still-buy-us-beer-right.wbmstr">http://eclipsecon.org/no-matter-where-eclipsecon-is-webmasters-will-still-buy-us-beer-right.wbmstr</a><br/><br/><a href="http://eclipsecon.org/why-not-do-eclipsecon-in-%28insert-tropical-exotic-location-here%29.wbmstr">http://eclipsecon.org/why-not-do-eclipsecon-in-(insert-tropical-exotic-location-here).wbmstr</a><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/15140216-6907268417218262055?l=eclipsewebmaster.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-02-02T21:39:29Z</updated>
    <published>2012-02-02T21:28:00Z</published>
    <author>
      <name>Denis Roy</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/01676734059820252000</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-15140216</id>
      <category term="wiki"/>
      <category term="transclusion"/>
      <author>
        <name>Denis Roy</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/01676734059820252000</uri>
      </author>
      <link href="http://eclipsewebmaster.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/15140216/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://eclipsewebmaster.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/15140216/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>Keeping the lights blinking @eclipse.org</subtitle>
      <title>Denis Roy | Eclipse Webmaster</title>
      <updated>2012-02-03T17:31:19Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://www.vogella.de/blog/?p=4885</id>
    <link href="http://www.vogella.de/blog/2012/02/02/eclipse-community-awards-voting-open-please-vote/" rel="alternate" type="text/html"/>
    <title>Eclipse Community Awards voting open. Please vote</title>
    <summary>Just a small reminder, the Eclipse Community Awards is currently open for voting. Please vote: http://eclipse.org/org/press-release/20120130_awardsvote.php

I'm also nominated, as Eclipse Top Newcomer Evangelist :)</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Just a small reminder, the <a href="http://eclipse.org/org/press-release/20120130_awardsvote.php">Eclipse Community Awards</a> is currently open for voting. Please vote: <a href="http://eclipse.org/org/press-release/20120130_awardsvote.php">http://eclipse.org/org/press-release/20120130_awardsvote.php</a></p>
<p>I’m also nominated, as <a href="http://marketplace.eclipse.org/nominations/top-newcomer-evangelist">Eclipse Top Newcomer Evangelist</a> <img alt=":)" class="wp-smiley" src="http://www.vogella.de/blog/wp-includes/images/smilies/icon_smile.gif"/> </p>
<p class="wp-flattr-button"/> <p><a href="http://www.vogella.de/blog/?flattrss_redirect&amp;id=4885&amp;md5=944f71948c3029522b501cceea5bc213" target="_blank" title="Flattr"><img alt="flattr this!" src="http://www.vogella.de/blog/wp-content/plugins/flattr/img/flattr-badge-large.png"/></a></p></div>
    </content>
    <updated>2012-02-02T13:02:56Z</updated>
    <category term="Eclipse"/>
    <category term="community"/>
    <author>
      <name>Lars Vogel</name>
    </author>
    <source>
      <id>http://www.vogella.de/blog</id>
      <link href="http://www.vogella.de/blog/category/eclipse/feed" rel="self" type="application/rss+xml"/>
      <link href="http://www.vogella.de/blog" rel="alternate" type="text/html"/>
      <subtitle>Tips around Eclipse and Android programming</subtitle>
      <title>Developer Papercuts » Eclipse</title>
      <updated>2012-02-02T13:03:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://eclipsesource.com/blogs/?p=7028</id>
    <link href="http://eclipsesource.com/blogs/2012/02/02/modeling-symposium-submission-deadline/" rel="alternate" type="text/html"/>
    <title>Modeling Symposium Submission Deadline</title>
    <summary>Hi, Ed and I are organizing the Modeling Symposium for EclipseCon North America (see here). Thank you for all the interesting submissions so far. To notify people early enough about the acceptance of their submission, we need to set a final deadline to February 8th. Please make sure to send me your submission before this [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Hi,<br/>
Ed and I are organizing the Modeling Symposium for EclipseCon North  America (<a href="http://eclipsesource.com/blogs/2012/01/05/modeling-symposium/">see here</a>). Thank you for all the interesting submissions so far. To notify people  early enough about the acceptance of their submission, we need to set a  final deadline to February 8th. Please make sure to send me your  submission before this deadline.<br/>
Looking forward to your submissions!<br/>
Jonas</p></div>
    </content>
    <updated>2012-02-02T09:49:21Z</updated>
    <category term="eclipse"/>
    <category term="syndicate"/>
    <author>
      <name>Jonas Helming</name>
    </author>
    <source>
      <id>http://eclipsesource.com/blogs</id>
      <link href="http://eclipsesource.com/blogs/author/jhelming/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://eclipsesource.com/blogs" rel="alternate" type="text/html"/>
      <subtitle>Eclipse Equinox OSGi</subtitle>
      <title>EclipseSource Blog » Jonas Helming</title>
      <updated>2012-02-04T04:51:25Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-1710464868724994296.post-8599949856087965975</id>
    <link href="http://blog.bdoughan.com/feeds/8599949856087965975/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://blog.bdoughan.com/2012/01/jaxb-and-inhertiance-using-xmladapter.html#comment-form" rel="replies" title="0 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/1710464868724994296/posts/default/8599949856087965975" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/1710464868724994296/posts/default/8599949856087965975" rel="self" type="application/atom+xml"/>
    <link href="http://blog.bdoughan.com/2012/01/jaxb-and-inhertiance-using-xmladapter.html" rel="alternate" title="JAXB and Inheritance - Using XmlAdapter" type="text/html"/>
    <title>JAXB and Inheritance - Using XmlAdapter</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;">In previous posts I have covered how to map inheritance relationships in JAXB.  This can be done by <a href="http://blog.bdoughan.com/2010/11/jaxb-and-inheritance-using-substitution.html" target="">element name</a> (via @XmlElementRef), by the <a href="http://blog.bdoughan.com/2010/11/jaxb-and-inheritance-using-xsitype.html">xsi:type attribute</a>, or in <a href="http://www.eclipse.org/eclipselink/moxy.php" target="_blank">EclipseLink MOXy</a> using <a href="http://blog.bdoughan.com/2010/11/jaxb-and-inheritance-moxy-extension.html">another XML attribute</a> (via @XmlDescriminatorNode/@XmlDescriminatorValue).  In this post the type indicator will be an XML attribute/element unique to that type, and we will leverage an XmlAdapter to implement this behaviour.</span><br/><br/><a href="http://blog.bdoughan.com/2012/01/jaxb-and-inhertiance-using-xmladapter.html#more">Read more »</a><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/1710464868724994296-8599949856087965975?l=blog.bdoughan.com" width="1"/></div></div>
    </content>
    <updated>2012-02-02T09:46:41Z</updated>
    <published>2012-01-25T11:09:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="Inheritance"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="JAXB"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="XmlAdapter"/>
    <author>
      <name>Blaise Doughan</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/02016807982653343777</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-1710464868724994296</id>
      <category term="XmlAdapter"/>
      <category term="Atom"/>
      <category term="DTD"/>
      <category term="Marshaller"/>
      <category term="Twitter"/>
      <category term="JPA"/>
      <category term="Attachment"/>
      <category term="StAX"/>
      <category term="CDATA"/>
      <category term="XmlPath"/>
      <category term="Unmarshaller.Listener"/>
      <category term="Release"/>
      <category term="XmlInlineBinaryData"/>
      <category term="Multi-Tenant"/>
      <category term="Comparison"/>
      <category term="XmlTransient"/>
      <category term="XmlRootElement"/>
      <category term="MOXy"/>
      <category term="XmlID"/>
      <category term="XmlMimeType"/>
      <category term="Binder"/>
      <category term="JAX-RS"/>
      <category term="Interface"/>
      <category term="XmlType"/>
      <category term="Date/Time"/>
      <category term="JavaOne"/>
      <category term="Unmarshaller"/>
      <category term="XmlElementRef"/>
      <category term="&quot;Immutable Object&quot;"/>
      <category term="EJB"/>
      <category term="XmlNs"/>
      <category term="XmlAccessType"/>
      <category term="XmlAccessorType"/>
      <category term="JAXB"/>
      <category term="Jettison"/>
      <category term="JAX-WS"/>
      <category term="XmlEnum"/>
      <category term="XmlIDREF"/>
      <category term="jaxb.properties"/>
      <category term="JSON"/>
      <category term="XmlValue"/>
      <category term="XmlEnumValue"/>
      <category term="Choice"/>
      <category term="XmlVirtualAccessMethods"/>
      <category term="Inheritance"/>
      <category term="XmlSchema"/>
      <category term="&quot;EclipseLink 2.3&quot;"/>
      <category term="XmlElements"/>
      <category term="JAXBSource"/>
      <category term="XmlAnyElement"/>
      <category term="TopLink"/>
      <category term="REST"/>
      <category term="XmlSchemaType"/>
      <category term="UnmarshallerHandler"/>
      <category term="Extension"/>
      <category term="XmlList"/>
      <category term="XmlElementWrapper"/>
      <category term="SDO"/>
      <category term="&quot;Collection Property&quot;"/>
      <category term="XmlTransformation"/>
      <category term="XmlElement"/>
      <category term="&quot;XML Schema&quot;"/>
      <category term="&quot;XML Infoset&quot;"/>
      <category term="Geocode"/>
      <category term="&quot;EclipseLink 2.4&quot;"/>
      <category term="&quot;Bindings File&quot;"/>
      <category term="&quot;Case Insensitivity&quot;"/>
      <category term="Database"/>
      <category term="EclipseLink"/>
      <category term="&quot;Mapping File&quot;"/>
      <category term="Validation"/>
      <category term="Specification"/>
      <category term="XJC"/>
      <category term="Predicate"/>
      <category term="JAXBElement"/>
      <category term="XmlInverseReference"/>
      <category term="Enum"/>
      <category term="MetadataSource"/>
      <category term="Namespaces"/>
      <author>
        <name>Blaise Doughan</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/02016807982653343777</uri>
      </author>
      <link href="http://blog.bdoughan.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/1710464868724994296/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://blog.bdoughan.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/1710464868724994296/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>Object-to-XML and object-to-JSON mapping using JAXB and EclipseLink MOXy.</subtitle>
      <title>Java XML &amp; JSON Binding</title>
      <updated>2012-02-03T21:50:35Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-36941363.post-7775158270730858284</id>
    <link href="http://ganoro.blogspot.com/feeds/7775158270730858284/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=36941363&amp;postID=7775158270730858284" rel="replies" title="0 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/36941363/posts/default/7775158270730858284" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/36941363/posts/default/7775158270730858284" rel="self" type="application/atom+xml"/>
    <link href="http://ganoro.blogspot.com/2012/02/how-my-wife-drives-technology-world.html" rel="alternate" title="How My Wife Drives the Technology World" type="text/html"/>
    <title>How My Wife Drives the Technology World</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">ok, maybe a better name would be "<b>Cloud</b>-based <b>Social</b>-enabled <b>Service</b>-oriented <b>Mobile</b>-apps development", but that's a long and exhausting name especially for my "Thursday blogging day" :)<br/><br/>It started last week as a small-talk between my wife and me about sheattending so many shifts and medical sessions. According to my wife, she usuallytakes 4-5 shifts a month where the actual number is doubled (!). At that momentI had no tools to prove my point and here comes the requirements to build asmall mobile app for her to report shifts and sessions while being able towrite short notes about it (ok, she was asking this a longtime ago). In addition she usually posts some info on Facebook during her shifts so I had to connectthese reports somehow to her Facebook account. By the end of the month she hand a report about her shifts to the managers so this if the app could also print a summary it will be a big value for her.<br/><br/>Before I share some thoughts about some aspects of this app development, here is how this app looks like on Android and iOS:<br/><br/><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/--niAQIRpNC8/TymbRb_j1-I/AAAAAAAAHss/uPmThvPQCaU/s1600/android.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="http://3.bp.blogspot.com/--niAQIRpNC8/TymbRb_j1-I/AAAAAAAAHss/uPmThvPQCaU/s320/android.png" width="192"/></a><a href="http://1.bp.blogspot.com/-_CS9rg8VigI/TymbTCsYWCI/AAAAAAAAHs0/9syNs15k85Q/s1600/ios.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="http://1.bp.blogspot.com/-_CS9rg8VigI/TymbTCsYWCI/AAAAAAAAHs0/9syNs15k85Q/s320/ios.PNG" width="213"/></a></div><br/><b><u>Mobile App</u></b><br/><a href="http://jquerymobile.com/" target="_blank">jQueryMobile</a> (version 1.0) is really handy for creating cross-platform mobile interface, it provides easy to use APIs and is really covered well with lots of <a href="http://jquerymobile.com/demos/1.0.1/" target="_blank">great examples</a>. I had to use several other libraries like <a href="https://github.com/allmarkedup/jQuery-URL-Parser" target="_blank">jQueryUrl</a>, <a href="http://momentjs.com/">Moment.js</a>, <a href="http://mustache.github.com/" target="_blank">Mustache</a>, <a href="http://requirejs.org/" target="_blank">requireJS</a> and <a href="http://code.google.com/p/jspdf/" target="_blank">jsPDF</a>. With so many "out-of-the-box" libraries it is super easy to build robust solution on for client side in minutes(!!!)<br/><br/><u><b>Social-enabled</b></u>:<br/><a href="http://developers.facebook.com/docs/reference/javascript/" target="_blank">Facebook JavaScript SDK</a> helped me with giving a more "social look and feel" after creating  a  <a href="https://developers.facebook.com/apps" target="_blank">Facebook application</a>. I also used <a href="http://developers.facebook.com/docs/authentication/" target="_blank">Facebook's OAth service</a> authentication and <a href="http://developers.facebook.com/docs/opengraph/" target="_blank">Open Graph</a> integration so users notify their friends about their activities with the "My Doctor Shifts" application.<br/><br/><u><b>Service-oriented (and Data-centric)</b></u><br/><a href="http://framework.zend.com/" target="_blank">Zend Framework</a> provides nice (lightweight) models representation and the MVC was useful to create the HTML view and services.<br/><br/><u><b>Cloud-based</b></u><br/>Using  <a href="http://www.phpcloud.com/" target="_blank">phpCloud</a> was easy as always with plenty of slick workflows helping me to easily deploy my application and push updates to staging and testing targets. This way I always kept two versions that represent my Work in Progress and Done apps. I also got packages ready for deployed in case I want to deploy it to another <a href="http://www.phpcloud.com/develop" target="_blank">Zend Application Fabric</a> instance.<br/><br/>The application is available on <a href="https://github.com/ganoro/shifts" target="_blank">github</a>.<br/><br/><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/36941363-7775158270730858284?l=ganoro.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-02-02T07:36:14Z</updated>
    <published>2012-02-02T07:36:00Z</published>
    <author>
      <name>Roy Ganor</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/10470159818677369634</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-36941363</id>
      <category term="&quot;end of line&quot; java"/>
      <category term="zend phpcloud studio developer cloud"/>
      <category term="phpcloud zend webapi"/>
      <category term="webtop webtops operating systems future roy ganor"/>
      <category term="Enterprise2.0 zportal"/>
      <category term="phpcloud eclipse zend sdk pdt"/>
      <category term="eclipse test framework"/>
      <category term="facebook app development phpcloud"/>
      <category term="eclipse flash adobe"/>
      <category term="zend studio server php"/>
      <category term="zend developer cloud platform sdk"/>
      <category term="git github zend sdk server"/>
      <category term="zend studio ajax php"/>
      <category term="eclipse democamp telaviv zend"/>
      <category term="phpcloud zend studio cloud best practices development"/>
      <author>
        <name>Roy Ganor</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/10470159818677369634</uri>
      </author>
      <link href="http://ganoro.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/36941363/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://ganoro.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/36941363/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>Ganor's Blog</title>
      <updated>2012-02-02T11:27:09Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://eclipsesource.com/blogs/?p=7006</id>
    <link href="http://eclipsesource.com/blogs/2012/02/02/accessing-a-very-large-data-set-with-mobile-devices/" rel="alternate" type="text/html"/>
    <title>Accessing a very large data set with mobile devices</title>
    <summary>A few months ago my colleague, Ralf Sternberg, wrote an article on “how to access a huge dataset with the web browser“.  Now, if it’s possible to access very large datasets with a browser, wouldn’t it be really cool to access it in the same way with mobile devices? As you may have heard, we [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>A few months ago my colleague, Ralf Sternberg, wrote an article on “<a href="http://eclipsesource.com/blogs/2011/08/15/accessing-a-huge-data-set-with-the-web-browser/">how to access a huge dataset with the web browser</a>“.  Now, if it’s possible to access very large datasets with a browser, wouldn’t it be really cool to access it in the same way with mobile devices?</p>
<p>As you may have heard, we launched <a href="http://rapmobile.eclipsesource.com">RAP mobile</a> two days ago. And, we did just that. With RAP mobile you can access exactly the same dataset with exactly the same code as in Ralf’s post. The dataset contains over 500,000 emails totaling over 2GB of space. Check out the <a href="http://vimeo.com/36021442">screencast below</a> and the <a href="https://github.com/eclipsesource/rap-mobile-demos/blob/master/com.eclipsesource.rap.mobile.demos/src/com/eclipsesource/rap/mobile/demos/entrypoints/VirtualTreeDemo.java">source code on github</a>.</p>
<p>What I find intriguing about this framework is that it is fast. There is no data on the phone. The information displayed in the UI is retrieved asynchronously from the server while the user is scrolling through this enormous set of data. The native iOS client takes care of the proper preloading, caching and memory management.</p>
<p style="text-align: center;"> </p></div>
    </content>
    <updated>2012-02-02T06:58:34Z</updated>
    <category term="news"/>
    <category term="syndicate"/>
    <category term="android"/>
    <category term="enron"/>
    <category term="iOS"/>
    <category term="rap"/>
    <category term="rap mobile"/>
    <author>
      <name>jordi</name>
    </author>
    <source>
      <id>http://eclipsesource.com/blogs</id>
      <link href="http://eclipsesource.com/blogs/author/jordi/feed/?category=syndicate" rel="self" type="application/rss+xml"/>
      <link href="http://eclipsesource.com/blogs" rel="alternate" type="text/html"/>
      <subtitle>Eclipse Equinox OSGi</subtitle>
      <title>EclipseSource Blog » jordi</title>
      <updated>2012-02-04T04:52:05Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://planetorion.org/news/?p=187</id>
    <link href="http://planetorion.org/news/2012/02/orion-features-in-firefox-10-and-11/" rel="alternate" type="text/html"/>
    <title>Orion Features in Firefox 10 and 11</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Firefox 10 was released yesterday, and the release announcement highlighted developer tools such as the Orion-based Scratchpad as key features in the release. At the same time, Firefox 11 moved into their Beta channel. The Mozilla developer tools team released … <a href="http://planetorion.org/news/2012/02/orion-features-in-firefox-10-and-11/">Continue reading <span class="meta-nav">→</span></a></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Firefox 10 was released yesterday, and the <a href="http://blog.mozilla.com/blog/2012/01/31/firefox-adds-powerful-new-developer-tools/">release announcement</a> highlighted developer tools such as the Orion-based Scratchpad as key features in the release. At the same time, Firefox 11 moved into their <a href="http://www.mozilla.org/en-US/firefox/channel/">Beta channel</a>. The Mozilla developer tools team released a <a href="http://blog.mozilla.com/devtools/2012/01/23/firefox-11-aurora-developer-tools-screencast/">cool video</a> last week showing upcoming features in Firefox 11, such as a 3D Page Inspector, and a new Orion-based Style Editor. Scratchpad and Style Editor are the result of many months of close collaboration between the Mozilla dev tools team and the <a href="http://orioneditor.blogspot.com/">Orion Editor</a> team. Congrats to <a href="http://www.robodesign.ro/mihai/blog">Mihai</a>, <a href="http://www.blueskyonmars.com/">Kevin</a>, and the rest of the Firefox team on another great release!</p></div>
    </content>
    <updated>2012-02-01T14:58:33Z</updated>
    <category term="Announcements"/>
    <author>
      <name>John Arthorne</name>
    </author>
    <source>
      <id>http://planetorion.org/news</id>
      <link href="http://planetorion.org/news/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://planetorion.org/news" rel="alternate" type="text/html"/>
      <subtitle>News for the Eclipse Orion project</subtitle>
      <title>Orion News</title>
      <updated>2012-02-01T15:01:42Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-4884093826755448868.post-4827126749025072667</id>
    <link href="http://jevopisdeveloperblog.blogspot.com/feeds/4827126749025072667/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=4884093826755448868&amp;postID=4827126749025072667" rel="replies" title="12 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/4884093826755448868/posts/default/4827126749025072667" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/4884093826755448868/posts/default/4827126749025072667" rel="self" type="application/atom+xml"/>
    <link href="http://jevopisdeveloperblog.blogspot.com/2012/02/dreaming-of-eclipse-plugin-store.html" rel="alternate" title="Dreaming of an Eclipse Plugin-Store..." type="text/html"/>
    <title>Dreaming of an Eclipse Plugin-Store...</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><b><i>or how to sell little tools for little money...</i></b><br/>
<br/>
A while ago, I wrote a little tool for exporting UML-like diagrams for Java classes and packages to OmniGraffle. I <a href="http://jevopisdeveloperblog.blogspot.com/2011/08/java-to-omnigraffle.html">blogged</a> about that tool and, from my statistics, it got downloaded over 100 times. I also announced that the tool will stop working in 2012, which it actually did. As I wrote in the announcement of the tool, based on the feedback I wanted to decide whether to continue developing the tool or not.<br/>
<br/>
So, what is the feedback after almost six months? There were a few comments, and about 150 downloads according to my logs. Although I installed a donate and Flatter button on my blog, I received no money at all. The natural consequence would be to stop developing (and providing) the tool.<br/>
<br/>
Today, someone posted a comment as the tool has stopped working (just as announced). The commenter also wrote that he needs the tool to create some diagrams for him. Hmm... As I'm trying to be a good guy, I published an update of the tool working until June 2012.<br/>
<br/>
I won't complain about people not giving any feedback or money voluntary. Instead I'm wondering how to make the tool available for a small amount of money. Actually, I don't know about any Eclipse tools to be sold for a couple of dollars/euros, except <a href="http://log4e.jayefem.de/">Log4E</a>. Most tools are either freely available, or they are really expensive. <a href="http://log4e.jayefem.de/">Log4E</a> comes in two versions: A free community edition and a so called "Pro" version for only €7,50. I have purchased that tool a long time ago, rather to support the author than urgently needing the additional features of the Pro version. However, due to the lack of Eclipse supporting this kind of "business model", it is rather complicated to install the license key (and keep it up to date with new Eclipse installations), and I figure managing licenses and payments to be time-consuming for the author as well.<br/>
<br/>
Apple, and also Google, have successfully created systems enabling authors of software to make (little) money by selling there products very easily. Although I don't like the Apple way of approving software, I'm wondering if some kind of "Eclipse PluginStore" would be a good idea. People spend a lot of money on "apps", including a lot of small games. If buying a commercial Eclipse plugin would be as simple as purchasing an iPhone/Android app, would people do that? And how many programmers would publish their tools then? Maybe combining that kind of store with a BugStore (see "<a href="http://jaxenter.com/should-we-pay-for-eclipse-bug-fixes-11008.html">Should We Pay for Eclipse Bug Fixes?</a>" for a summary of a discussion taken place in April 2010) would be a good idea as well...<br/>
<br/>
As long as there is no Eclipse PluginStore available: How do you sell your tools?<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/4884093826755448868-4827126749025072667?l=jevopisdeveloperblog.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-02-01T11:29:25Z</updated>
    <published>2012-02-01T11:29:00Z</published>
    <author>
      <name>Jens v.P.</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/14089732885850015120</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-4884093826755448868</id>
      <category term="Code"/>
      <category term="Xtext"/>
      <category term="3D"/>
      <category term="MDD"/>
      <category term="Eclipse"/>
      <category term="EMF"/>
      <category term="Mac OS X"/>
      <category term="transformation"/>
      <category term="Logging"/>
      <category term="Xtend"/>
      <category term="UML"/>
      <category term="Events"/>
      <category term="Java"/>
      <category term="OCL"/>
      <category term="GEF3D"/>
      <category term="e4"/>
      <category term="CIB"/>
      <author>
        <name>Jens v.P.</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/14089732885850015120</uri>
      </author>
      <link href="http://jevopisdeveloperblog.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/4884093826755448868/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://jevopisdeveloperblog.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/4884093826755448868/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>If the meaning of the blog isn't clear, there really should be more of a description here...</subtitle>
      <title>Jevopi's Developer Blog</title>
      <updated>2012-02-03T10:05:35Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://overholt.ca/wp/?p=332</id>
    <link href="http://overholt.ca/wp/?p=332" rel="alternate" type="text/html"/>
    <title>Eclipse at FOSDEM</title>
    <summary>This coming weekend is FOSDEM in Brussels, Belgium. It will be my first FOSDEM and I’m really looking forward to it. Lots of my fellow Red Hat, JBoss, and Fedora colleagues will be there, too (list of talks by Red Hatters as a PDF and as HTML). Eclipse content this year includes: an Eclipse stand [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>This coming weekend is <a href="http://fosdem.org/2012/">FOSDEM</a> in Brussels, Belgium.  It will be my first <a href="http://en.wikipedia.org/wiki/Fosdem">FOSDEM</a> and I’m really looking forward to it.  Lots of my fellow Red Hat, JBoss, and Fedora colleagues will be there, too (list of talks by Red Hatters as a <a href="http://people.redhat.com/duffy/fosdem/redhat-fosdem_2012.pdf">PDF</a> and as <a href="http://planet.jboss.org/post/jboss_fedora_and_more_from_red_hat_at_fosdem_2012">HTML</a>).  Eclipse content this year includes:</p>
<ul>
<li><a href="http://fosdem.org/2012/stands">an Eclipse stand</a> (K building, first level)</li>
<li><a href="http://www.fosdem.org/2012/schedule/event/how_eclipse_works">a talk by Mike Milinkovich entitled “How Eclipse Works”</a> (12:00-12:30 Sunday in the <a href="http://www.fosdem.org/2012/schedule/track/free_java_devroom">Free Java Devroom</a>, <a href="http://www.fosdem.org/2012/schedule/room/k4401">K.4.401</a>)</li>
<li><a href="http://fosdem.org/2012/schedule/event/eclipsert">a lightning talk by Gunnar Wagenknect entitled “An introduction to EclipseRT”</a> (10:40-10:55 Sunday in the <a href="http://fosdem.org/2012/schedule/room/ferrer">Ferrer</a> room)</li>
<li><a href="http://fosdem.org/2012/schedule/event/cdt">a lightning talk by yours truly entitled “Powerful tools for Linux C/C++ developers based on Eclipse”</a> (11:00-11:15 Sunday in the <a href="http://fosdem.org/2012/schedule/room/ferrer">Ferrer</a> room)</li>
<li><a href="http://fosdem.org/2012/schedule/event/wazaabi">a lightning talk by Gregoire de Hemptinne entitled “Wazaabi – Model your UI … live”</a> (based on <a href="http://eclipse.org/modeling/emf/">EMF</a>) (18:40-18:55 Saturday in the <a href="http://fosdem.org/2012/schedule/room/ferrer">Ferrer</a> room)</li>
</ul>
<p>“FOSDEM is the biggest free and non-commercial event organized by and for the community.”  There’s no registration required, so if you’re in the area, swing by!  There are a <strong>lot</strong> of people that I’m looking forward to seeing and having a beer with this weekend but I’m especially looking forward to seeing the ever-awesome <a href="http://akurtakov.blogspot.com">Alex Kurtakov</a> again and to meeting my new teammate <a href="http://eclipseandlinux.blogspot.com/">Krzysztof Daniel</a> in person for the first time.</p>
<p>Safe travels and see you in Brussels!</p>
<p><a href="http://www.fosdem.org"><img alt="I'm going to FOSDEM, the Free and Open Source Software Developers' European Meeting" src="http://www.fosdem.org/promo/going-to"/></a></p>
<p><strong>Update:</strong>  Gregoire de Hemptinne pointed out his talk on an EMF-based declaritive UI system, Wazaabi.</p></div>
    </content>
    <updated>2012-01-31T19:59:29Z</updated>
    <category term="Eclipse"/>
    <category term="FOSS"/>
    <author>
      <name>Andrew Overholt</name>
    </author>
    <source>
      <id>http://overholt.ca/wp</id>
      <link href="http://overholt.ca/wp/?feed=rss2&amp;cat=6" rel="self" type="application/rss+xml"/>
      <link href="http://overholt.ca/wp" rel="alternate" type="text/html"/>
      <subtitle>Eclipse, FOSS, Linux, Free Java</subtitle>
      <title>Andrew's blog » Eclipse</title>
      <updated>2012-02-01T14:49:50Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://tomsondev.wordpress.com/?p=2864</id>
    <link href="http://tomsondev.bestsolution.at/2012/01/31/efxclipse-0-0-12-released/" rel="alternate" type="text/html"/>
    <title>e(fx)clipse 0.0.12 released</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">A little bit later than scheduled here’s the next release. This time the number of new features is smaller than in previous releases but there still some small nice additions. Let’s look into it. Update to latest upstream modules The new release comes with Eclipse 4.2M5. I also looked into up-dating the subclipse integration but [...]<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=tomsondev.bestsolution.at&amp;blog=7995503&amp;post=2864&amp;subd=tomsondev&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>A little bit later than scheduled here’s the next release. This time the number of new features is smaller than in previous releases but there still some small nice additions. Let’s look into it.</p>
<h2>Update to latest upstream modules</h2>
<p>The new release comes with Eclipse 4.2M5. I also looked into up-dating the subclipse integration but at the moment the newest version is only provided for win32/64 and so I’m waiting until I can consume it from upstream. All other components (xtext, egit and mercurial) are unchanged.</p>
<h2>Linux Support</h2>
<p>As promised since the beginning. At the very moment the JavaFX 2.0 team provides builds for Linux e(fx)clipse will provide all in one downloads (one was able to install from the p2-site since the beginning). The JavaFX 2.0 Linux build provided is for 32bit and so is the e(fx)clipse all in one version you can <a href="http://www.efxclipse.org/install.html">download</a>.</p>
<p><a href="http://tomsondev.files.wordpress.com/2012/01/onlinux.png"><img alt="" class="alignnone size-full wp-image-2892" height="367" src="http://tomsondev.files.wordpress.com/2012/01/onlinux.png?w=588&amp;h=367" title="onlinux" width="588"/></a></p>
<p>The linux support though is still a bit limited – the live preview (JavaFX-SWT-Integration) crashed my Eclipse instance.</p>
<h2>CSS</h2>
<h3>Support for CSS 3 Selectors</h3>
<p>I’ve added support for CSS 3 selectors as the screenshot below shows:<br/>
<a href="http://tomsondev.files.wordpress.com/2012/01/css3_support.png"><img alt="" class="alignnone size-full wp-image-2866" height="251" src="http://tomsondev.files.wordpress.com/2012/01/css3_support.png?w=588&amp;h=251" title="css3_support" width="588"/></a></p>
<h3>Support for LCD Text</h3>
<p>I’ve added support for the newly introduced <a href="http://fxexperience.com/2012/01/lcd-text-support-in-javafx-2-1-developer-preview/">LCD Text</a> support which is done in CSS using “-fx-font-smoothing-type”</p>
<p>It’s not really easy to follow which CSS-Attributes are added and sometimes the docs are not correct so if you encounter an attribute you definately know is working but the CSS-Editor marks it as an error file me a <a href="http://efxclipse.org/trac">ticket</a>.</p>
<h3>Colors in CSS</h3>
<p>I’ve added 2 things when it comes to colors inside the CSS-Editor. You can use a color picker instead of entering the rgb-value manually:<br/>
<a href="http://tomsondev.files.wordpress.com/2012/01/color_pick1.png"><img alt="" class="alignnone size-full wp-image-2868" src="http://tomsondev.files.wordpress.com/2012/01/color_pick1.png?w=588" title="color_pick1"/></a><br/>
<a href="http://tomsondev.files.wordpress.com/2012/01/color_pick2.png"><img alt="" class="alignnone size-full wp-image-2869" height="486" src="http://tomsondev.files.wordpress.com/2012/01/color_pick2.png?w=588&amp;h=486" title="color_pick2" width="588"/></a></p>
<p>Thanks to <a href="http://zarnekow.blogspot.com/2011/06/customizing-content-assist-with-xtext.html">Sebastian Zarnekow’s blog</a> this was a piece of cake. </p>
<p>And for already existing colors the hover will display it:<br/>
<a href="http://tomsondev.files.wordpress.com/2012/01/color_hover.png"><img alt="" class="alignnone size-full wp-image-2871" src="http://tomsondev.files.wordpress.com/2012/01/color_hover.png?w=588" title="color_hover"/></a></p>
<h2>FXGraph</h2>
<h3>Support for @DefaultProperty</h3>
<p>Elements who mark one for their properties as the @DefaultProperty are now respected and you can omit the attribute-name for them making your the file more readable in many situations – whether you make use of this feature is up to you.</p>
<p><a href="http://tomsondev.files.wordpress.com/2012/01/default_attributes.png"><img alt="" class="alignnone size-full wp-image-2873" src="http://tomsondev.files.wordpress.com/2012/01/default_attributes.png?w=588" title="default_attributes"/></a></p>
<h3>Support for Script-Value references</h3>
<p>The syntax has been expanded to allow referencing of script values:<br/>
<a href="http://tomsondev.files.wordpress.com/2012/01/script_value.png"><img alt="" class="alignnone size-full wp-image-2875" src="http://tomsondev.files.wordpress.com/2012/01/script_value.png?w=588" title="script_value"/></a></p>
<h2>FXML</h2>
<p>In this release it only received bugfixes. If you want to help with it file bugs, send me patches, … . </p>
<h2>Converters</h2>
<p>I’ve started working on SVG and FXG to FXML-Converters as I already outline in <a href="http://tomsondev.bestsolution.at/2012/01/16/svg-for-fxml-conversion/">one my last posts</a> my plan was to add them to e(fx)clipse to allow you converting those external formats to JavaFX 2.0 representations. You should not expect a lot for it as of now because they are in a very very early stage and as outlined in the above post JavaFX 2.0/2.1 (at least for SVG which I looked a bit closer) won’t provide enough API to implement a fully compliant convert as of now.</p>
<p>The main purpose to add them already today into e(fx)clipse is to receive feedback from you on problems you encounter. I hope you share the source SVG and FXG drawings with me or even provide a patch?</p>
<p>An interesting sidenote on this is that technically I’m transforming the source formats into an EMF-Model (there’s a specific one for SVG and one for FXG) and then do the conversion using xtend (a Eclipse and Java-Developer should get started with xtend within 30 minutes because the tooling feels so similar to your JDT-Editor).</p>
<p><a href="http://tomsondev.files.wordpress.com/2012/01/svg_convert.png"><img alt="" class="alignnone size-full wp-image-2878" src="http://tomsondev.files.wordpress.com/2012/01/svg_convert.png?w=588" title="svg_convert"/></a></p>
<p>Just one final sentence on FXG: Adobe if <a href="http://opensource.adobe.com/wiki/display/flexsdk/FXG+2.0+Specification">this</a> is really the spec of a format I’m happy I never had work with your stuff – take a look at SVG-Spec on how I expect someone to define a (graphic) format.</p>
<h2>Community Support</h2>
<p>I’ve been receiving more and more mails to my private account and I’m always grateful to help but to not only put the burden on me I decided to open a google-group where people can ask questions, others can help too, … . I’ll try to update the fxgraph-reference as well but you know I’m doing this in my spare time and so things take time.</p>
<p>If e.g. you mastered the first steps in fxgraph and want to share your findings, don’t hesitate to send a message to above group. I’ll plan to add an extra page to <a href="http://efxclipse.org">http://efxclipse.org</a> so that people have a central place to find informations. I’m happy for reviews in blogs (even if there are things you don’t like about e(fx)clipse I want to know them). </p>
<p>You can find the new group at: <a href="http://groups.google.com/group/efxclipse">http://groups.google.com/group/efxclipse</a>. Come, join and bring up ideas to make e(fx)clipse a success.</p>
<h2>What’s cooking for the next releases</h2>
<ul>
<li>Bugfixes</li>
<li>Code improvements (make FXML and FXGraph use the same code base e.g. for content proposals)</li>
<li>EclipseCon preperation – If you haven’t seen <a href="http://www.eclipsecon.org/2012/sessions/eclipse-4-meets-cdo-now-you-see-it-and-so-do-they">this</a>. We are going to demonstrate a JavaFX-e4-Application which live snycs with an SWT-e4-Application</li>
<li>SVG-Path-Editor based on Xtext naturally (the grammer is already in the git-repo)</li>
</ul>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/tomsondev.wordpress.com/2864/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tomsondev.wordpress.com/2864/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/tomsondev.wordpress.com/2864/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tomsondev.wordpress.com/2864/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/tomsondev.wordpress.com/2864/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tomsondev.wordpress.com/2864/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/tomsondev.wordpress.com/2864/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tomsondev.wordpress.com/2864/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/tomsondev.wordpress.com/2864/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tomsondev.wordpress.com/2864/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/tomsondev.wordpress.com/2864/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tomsondev.wordpress.com/2864/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/tomsondev.wordpress.com/2864/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tomsondev.wordpress.com/2864/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=tomsondev.bestsolution.at&amp;blog=7995503&amp;post=2864&amp;subd=tomsondev&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-31T19:37:11Z</updated>
    <category term="e(fx)clipse"/>
    <author>
      <name>Tom Schindl</name>
    </author>
    <source>
      <id>http://tomsondev.bestsolution.at</id>
      <logo>http://0.gravatar.com/blavatar/293a1486b971639e6153cd953d1dbc9e?s=96&amp;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</logo>
      <link href="http://tomsondev.bestsolution.at/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://tomsondev.bestsolution.at" rel="alternate" type="text/html"/>
      <link href="http://tomsondev.bestsolution.at/osd.xml" rel="search" title="Tomsondev Blog" type="application/opensearchdescription+xml"/>
      <link href="http://tomsondev.bestsolution.at/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Tom's opensource development</subtitle>
      <title>Tomsondev Blog</title>
      <updated>2012-02-04T04:49:26Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://planetorion.org/news/?p=162</id>
    <link href="http://planetorion.org/news/2012/01/orion-0-4-m2-new-and-noteworthy/" rel="alternate" type="text/html"/>
    <title>Orion 0.4 M2 – New and Noteworthy</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">It has been another blockbuster milestone for the Orion project. This milestone brings extensive tooling improvements, including global search and replace, content assist for HTML, template completion for JavaScript, and CSS outline and error checking. The user interface has also … <a href="http://planetorion.org/news/2012/01/orion-0-4-m2-new-and-noteworthy/">Continue reading <span class="meta-nav">→</span></a></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>It has been another blockbuster milestone for the Orion project. This milestone brings extensive tooling improvements, including global search and replace, content assist for HTML, template completion for JavaScript, and CSS outline and error checking. The user interface has also had a major facelift with an eye toward giving more pixels to the most important content, and optimizing for mobile devices and touch displays. There is also a brand new user settings page, and a completely redesigned Git user interface. As always, you can give it a spin on <a href="http://orionhub.org/">OrionHub</a> (<a href="http://eclipse.org/orion/">sign up</a>), or <a href="http://download.eclipse.org/orion/drops/S-0.4M2-201201301209/index.html">download</a> your own copy. Read on below for more details.</p>
<h3 id="search-replace">Replace across multiple files</h3>
<p>You can now replace matches across multiple files from the <b>Search Results</b> page. After performing a search, click <b>Replace</b> to open a slideout where the replacement text is entered. After entering the text, click <b>Preview Changes</b> to open a preview of all the matches to be replaced. From this page you can check or uncheck individual files or matches, and use next/previous diff buttons in the compare editor to cycle through your changes. Finally, click <b>Commit</b> to perform the replace.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-search-replace.png"><img alt="" class="alignnone size-full wp-image-163" height="397" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-search-replace.png" title="04m2-search-replace" width="906"/></a></p>
<h3 id="search-navigation">Search results improvements</h3>
<p>You can now navigate through search results using the Up and Down arrow keys on your keyboard. Push Right arrow to open a popup showing additional lines surrounding the search result, and Left arrow to close the popup.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-search-highlight.png"><img alt="" class="alignnone size-full wp-image-164" height="284" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-search-highlight.png" title="04m2-search-highlight" width="622"/></a></p>
<h3 id="search-open-resource">Find File dialog improvements</h3>
<p>There have been several improvements to the <b>Find File</b> dialog, accessed via Ctrl+Shift+R in the editor or by pressing ‘t’ on other pages:</p>
<ul>
<li>When multiple matching files have the same name, the full path of each file is now shown to help you tell them apart.</li>
<li>Matching favorites now appear at the top of the list</li>
<li>You can navigate between search results using the Up and Down arrow keys</li>
<li>Matches are now sorted alphabetically</li>
</ul>
<p><a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-search-find-file.png"><img alt="" class="alignnone size-full wp-image-165" height="188" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-search-find-file.png" title="04m2-search-find-file" width="459"/></a></p>
<h3 id="tools-js-assist-templates">JavaScript content assist templates</h3>
<p>JavaScript content assist in Orion now provides templates for common control structures. Simply invoke content assist with Ctrl+Space, and select from among the available templates that match your current cursor position. Templates have been added for:</p>
<ul>
<li><tt>for...in</tt> iteration over object properties</li>
<li><tt>for</tt> loop over an array</li>
<li><tt>while</tt> and <tt>do/while</tt> loops</li>
<li><tt>if</tt> and <tt>if/else</tt> blocks</li>
<li><tt>try/catch</tt> and <tt>try/catch/finally</tt> blocks</li>
<li><tt>switch</tt> blocks</li>
</ul>
<p>Some templates require you to fill in certain variables such as conditions or other values. Use Tab to iterate through the fields to be completed, and Enter to finish the template.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-js-templates.png"><img alt="" class="alignnone size-full wp-image-166" height="153" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-js-templates.png" title="04m2-js-templates" width="791"/></a></p>
<h3 id="tools-js-assist-variables-args">JavaScript content assist variable and argument completion</h3>
<p>JavaScript content assist will now propose matching local variables and function arguments from all enclosing functions in the current script.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-js-var-completion.png"><img alt="" class="alignnone size-full wp-image-168" height="234" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-js-var-completion.png" title="04m2-js-var-completion" width="487"/></a></p>
<h3 id="tools-html-content-assist">HTML content assist</h3>
<p>Content assist has been added for HTML files. Invoking content assist in an empty file will produce a basic well-formed HTML 5 document. Completion is offered for all elements supported in HTML 5. Closing element tags are inserted where appropriate.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-html-assist1.png"><img alt="" class="alignnone size-full wp-image-169" height="155" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-html-assist1.png" title="04m2-html-assist1" width="769"/></a></p>
<p>For lists and tables, completion will also insert the first list item or table row for you:<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-html-assist2.png"><img alt="" class="alignnone size-full wp-image-170" height="152" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-html-assist2.png" title="04m2-html-assist2" width="772"/></a></p>
<h3 id="css-lint">CSS Lint plug-in</h3>
<p>Orion CSS Lint integration, previously available as a separate plugin, is now included by default in the set of plug-ins distributed with Orion. In addition, this plug-in now provides an outline view for CSS files.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-css-outline.png"><img alt="" class="alignnone size-full wp-image-171" height="295" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-css-outline.png" title="04m2-css-outline" width="529"/></a></p>
<h3 id="ui-settings-page">New settings page</h3>
<p>A new <b>Settings</b> page has been introduced. The <b>JavaScript Editor</b> tab allows customization of fonts and colors in the JavaScript editor. Note that changes take effect immediately across all editors you currently have open in the current browser.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-settings-editor.png"><img alt="" class="alignnone size-full wp-image-173" height="550" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-settings-editor.png" title="04m2-settings-editor" width="561"/></a></p>
<p>The <b>Plugins</b> tab shows the set of installed plugins, and supports adding and removing plugins. This page will evolve to show further details about each plugin as well.
</p>
<p><a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-settings-plugins.png"><img alt="" class="alignnone size-full wp-image-172" height="470" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-settings-plugins.png" title="04m2-settings-plugins" width="756"/></a></p>
<h3 id="ui-navigate-up">Navigator “Go up” command</h3>
<p>A new command has been added to the <b>Navigator</b> page, allowing you to quickly navigate up to the parent of the current folder. Simply click <b>Go Up</b>, or use Alt+Up on your keyboard.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-nav-up.png"><img alt="" class="alignnone size-full wp-image-174" height="244" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-nav-up.png" title="04m2-nav-up" width="377"/></a></p>
<h3 id="ui-progress">Background progress reporting</h3>
<p>Orion can now report progress on multiple background operations at once, and even report progress on operations occurring in other frames and pages. This sounds simple, but anyone who has tried to do this on the web will realize how amazing this is. Click the progress button in the top right corner of the page to drop down a list of current and recent operations. From this list you can also visit a separate page showing a longer operation history.</p>
<p><a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-progress.png"><img alt="" class="alignnone size-full wp-image-175" height="267" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-progress.png" title="04m2-progress" width="332"/></a></p>
<h3 id="ui-related-pages">Related pages menu</h3>
<p>A new <b>Related Pages</b> menu has been added to the page header. This allows you to quickly navigate between multiple pages that deal with the same file or folder you are currently viewing. For example, from the editor page you can now quickly jump to the <b>Git Log</b> page showing commits involving that file.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-related-pages.png"><img alt="" class="alignnone size-full wp-image-176" height="215" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-related-pages.png" title="04m2-related-pages" width="670"/></a></p>
<h3 id="ui-header-revamp">Revamped Orion header</h3>
<p>The header at the top of each Orion page has been overhauled and cleaned up. Highlights include:</p>
<ol>
<li>More static information has been moved to the top of the header, and dynamic information has moved down to be closer to the content.</li>
<li>The logo has been moved and shrunk to make more room for the header information you really care about.</li>
<li>More room has been created for additional navigation features such as the new <b>Related pages</b> menu.</li>
<li>Toolbars have been moved down out of the header into the most appropriate page area. For example the <b>Save</b> button and current line/column information is now in a bar directly above the editor rather than in the global header. One result of this change is that toolbars are still available when the header/footer are collapsed via Ctrl+Shift+M</li>
</ol>
<p><a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-header-revamp.png"><img alt="" class="alignnone size-full wp-image-177" height="180" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-header-revamp.png" title="04m2-header-revamp" width="806"/></a></p>
<p>
For more information on the Orion UI design philosophy and direction, see the <a href="http://wiki.eclipse.org/Orion/Page_Layout">Orion Page Layout</a> wiki page.
</p>
<h3 id="ui-tablet-layout">Customized tablet/mobile presentation</h3>
<p>Orion styling has been tweaked to work much better on mobile devices. When using a display of 1024 pixels or less, we now pad the checkbox and twistie icons with more hittable breathing room.It is now much easier to check/uncheck boxes and invoke commands on a small touch screen. In addition, an editor problem with automatic uppercasing introduced with a recent iOS update has been addressed. The Orion editor now functions well again on iPad.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-ipad.png"><img alt="" class="alignnone size-full wp-image-178" height="673" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-ipad.png" title="04m2-ipad" width="831"/></a></p>
<h3 id="fork-you">Fork me on Orion</h3>
<p>Orion now uses <a href="http://tools.ietf.org/html/draft-gregorio-uritemplate-08">URI templates</a> to invoke commands on an Orion page using a URI. These commands are limited to altering the page layout such as opening input fields and dialogs. For example, you can now create a URL to initiate a clone operation on a particular repository. To see this in action, click <a href="http://orionhub.org/git/git-repository.html?cloneGitRepository=http://git.eclipse.org/gitroot/orion/org.eclipse.orion.client.git">Fork me on OrionHub</a> to clone the Orion client code in your OrionHub account. Note you still need to manually click “Submit” after visiting the URL before the clone operation actually starts.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-fork-orion.png"><img alt="" class="alignnone size-full wp-image-179" height="223" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-fork-orion.png" title="04m2-fork-orion" width="690"/></a></p>
<h3 id="git-repository-page">New git repository page</h3>
<p>A completely new <b>Git Repositories</b> page has been introduced in this milestone. This replaces the previous deep tree structure with a flatter, more web-like presentation. Most basic commands are available at a glance without having to drill down, making the page much easier to use on touch and mobile devices. The <b>Working Directory</b> section shows at a glance what changes you have made that require staging or committing. The <b>Commits</b> sections shows all incoming commits that require merging, and all outgoing commits that have not been pushed to the current branch’s remote repository. There are further sections listing all branches, tags, and remotes for the current repository.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-git-repository-page.png"><img alt="" class="alignnone size-full wp-image-180" height="541" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-git-repository-page.png" title="04m2-git-repository-page" width="1022"/></a></p>
<h3 id="git-commit-page">New git commit details page</h3>
<p>A new <b>Git Commit</b> page has been introduced to accompany the new repositories page. Simply click on any commit from either the <b>Repositories</b> or <b>Git Log</b> page to open the commit details page. From here you can see all information about the commit, including author/committer, link to parent commit, associated tags, and diffs of all files modified by the commit. You can also tag or cherry-picka commit from this page.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-git-commit-page.png"><img alt="" class="alignnone size-full wp-image-181" height="748" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-git-commit-page.png" title="04m2-git-commit-page" width="677"/></a></p>
<h3 id="git-save-patch">Save and apply Git patches</h3>
<p>You can now save unstaged changes as a patch to be reapplied later. From the <b>Git Status</b> page, simply select the files to be saved, and click <b>Save Patch</b>.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-git-save-patch.png"><img alt="" class="alignnone size-full wp-image-182" height="194" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-git-save-patch.png" title="04m2-git-save-patch" width="506"/></a></p>
<p>Saved patches can be applied later, or by another user, by clicking <b>Apply Patch</b> on the <b>Git Repositories</b> page. A patch can be applied either from an uploaded file, or from a URL (such as a bugzilla attachment).<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-git-apply-patch.png"><img alt="" class="alignnone size-full wp-image-183" height="390" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-git-apply-patch.png" title="04m2-git-apply-patch" width="964"/></a></p>
<h3 id="git-remove-tag">Remove git tags</h3>
<p>Git tags can now be removed. From the <b>Git Repositories</b> page, find the tag you want to remove and click <b>Delete</b>. Tag deletions can be pushed to a remote repository using the <b>Push All</b> command on the same page.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-git-delete-tag.png"><img alt="" class="alignnone size-full wp-image-184" height="329" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-git-delete-tag.png" title="04m2-git-delete-tag" width="1013"/></a></p>
<h3 id="server-password-reset">Automatic password reset</h3>
<p>You can now associate an email address with your Orion account from your <b>Profile</b> page. Once the address is confirmed, it can be used to automatically reset your Orion password if you forget it in the future.<br/>
<a href="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-password-reset.png"><img alt="" class="alignnone size-full wp-image-185" height="383" src="http://planetorion.org/news/wp-content/uploads/2012/01/04m2-password-reset.png" title="04m2-password-reset" width="447"/></a></p>
<h3 id="server-jetty">Server running Jetty 8</h3>
<p>We have upgraded the neolithic Jetty version we previously shipped with the Orion Server. We are now running and delivering the most recent Jetty 8.1 from eclipse.org.</p>
<p>Enjoy!</p></div>
    </content>
    <updated>2012-01-31T16:13:52Z</updated>
    <category term="New &amp; Noteworthy"/>
    <author>
      <name>John Arthorne</name>
    </author>
    <source>
      <id>http://planetorion.org/news</id>
      <link href="http://planetorion.org/news/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://planetorion.org/news" rel="alternate" type="text/html"/>
      <subtitle>News for the Eclipse Orion project</subtitle>
      <title>Orion News</title>
      <updated>2012-02-01T15:01:42Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://mickaelistria.wordpress.com/?p=311</id>
    <link href="http://mickaelistria.wordpress.com/2012/01/31/goodbye-petalslink-hello-jbossred-hat/" rel="alternate" type="text/html"/>
    <title>Goodbye PetalsLink, hello JBoss|Red Hat !</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Today is my last day working for PetalsLink. Working for PetalsLink was a quite interesting experience: On the technical side, I enjoyed moving all the XML-based tooling of PetalsStudio to a more powerful EMF-based approach for Petals JBI editor – for those who don’t know JBI, it is a standard that allows to define SOA [...]<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=mickaelistria.wordpress.com&amp;blog=22721041&amp;post=311&amp;subd=mickaelistria&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Today is my last day working for PetalsLink.</p>
<p><img alt="" class="aligncenter" height="84" src="http://www.petalslink.com/themes/bluemarine/logo.png" title="PetalsLink" width="240"/></p>
<p>Working for PetalsLink was a quite interesting experience:</p>
<p>On the technical side, I enjoyed moving all the XML-based tooling of <a href="http://www.petalslink.com/produits/petals-studio">PetalsStudio</a> to a more powerful EMF-based approach for Petals JBI editor – for those who don’t know <a href="http://www.jcp.org/en/jsr/detail?id=208">JBI</a>, it is a standard that allows to define SOA artifacts in your ESB. Moving to EMF allowed us to provide better tooling faster, because most of the complexity in manipulating JBI can be removed with very few efforts leveraging <a href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.5.0/org/eclipse/emf/ecore/util/ExtendedMetaData.html">EMF ExtendedMetaData</a>. That was the first time I faced this part of EMF, and I got pretty impressed of how well it works (working with EMF always gives this impression of “being well”). I also improved the ability to plug new JBI components into the Studio, which is a critical point when you have to deal with connectors for almost everything – Mail, SFTP, Talend, XSLT…. So that was an interesting challenge in term of conception and development.<br/>
Petals Studio was also the pretext to start using <a href="http://git.petalslink.com/">Git</a>, <a href="https://github.com/petalslink/petals-studio">GitHub</a> and <a href="http://www.sonarsource.org/">Sonar</a>. I am pretty happy to have learnt these 3 tools that clearly improved the way I work.</p>
<p>Also, I had the great opportunity to work closely to several Eclipse projects:</p>
<ul>
<li>I could contribute the Tycho build of GMF Tooling, put it on <a href="https://hudson.eclipse.org/hudson/job/tycho-gmp.gmf.tooling/">Hudson</a>, get source moved to <a href="https://git.eclipse.org/c/gmf-tooling/org.eclipse.gmf-tooling.git">Git</a>/mirrored to <a href="https://github.com/eclipse/gmf-tooling">GitHub</a>, improve <a href="http://wiki.eclipse.org/Graphical_Modeling_Framework">wiki</a>… GMF Tooling is a project I’ve used for 3 years now and I often saw in it some critical organization points to improve to make it more dynamic in term of development. Working at PetalsLink gave me the opportunity to do what I think was necessary to keep the project healthy. With the help of Michael Golubev, I now think this was an real success.</li>
<li>I could contribute to Nebula the <a href="http://www.eclipse.org/nebula/widgets/treemapper/treemapper.php">TreeMapper</a> widget, which will probably have some very interesting use-cases soon. As I became a committer, I also helped in improving Tycho build and <a href="https://hudson.eclipse.org/hudson/job/nebula.nebula/">CI</a>, nad it seems like the project liked it if we look at the <a href="http://www.eclipse.org/nebula/downloads.php">new p2 update-sites</a>.</li>
<li>I contributed some small improvements to Eclipse BPEL designer, tried (unsuccessfully) to make SWTBot use Tycho, and developed a <a href="http://marketplace.eclipse.org/content/draw2d-preview">useful extension for Draw2d</a>.</li>
</ul>
<p>The only thing I wish I would be able to do here is to push ahead the usage of <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=360935">Sonar at Eclipse</a>, at least for GMF Tooling and Nebula.</p>
<p>But I probably learnt even more things from PetalsLink by discovering another company organisation that is very different from what I could experiment before (<a href="http://www.openwide.fr/">OpenWide</a> and <a href="http://www.bonitasoft.com/">BonitaSoft</a>): PetalsLink is focused on the Research about SOA and agility of Systems of Information. It is a wide topic! Petals products are quite good compared to other alternatives in the SOA landscape, but they don’t meet the success they deserve, it was a bit frustrating for a developer.</p>
<p>I enjoyed working for PetalsLink, all the expectations are fulfilled, so it is time for me to go ahead, to find a new experience, a new team, new challenges, new issues… I love discovering new things!</p>
<p>That’s why I’ll start working for JBoss|Red Hat tomorrow, as part of the team developing <a href="http://www.jboss.org/tools">JBoss Tools</a> and <a href="http://www.jboss.com/products/devstudio/">JBoss Developer Studio</a>.</p>
<p style="text-align: left;"><a href="http://mickaelistria.files.wordpress.com/2012/01/jboss_logo.png"><img alt="" class="aligncenter  wp-image-316" height="144" src="http://mickaelistria.files.wordpress.com/2012/01/jboss_logo.png?w=253&amp;h=144" title="jboss_logo" width="253"/></a></p>
<p style="text-align: left;">I’ll have the opportunity to work with a great team! My main occupation for the next monthes will be to assist <a href="http://divby0.blogspot.com/">Nick Boldt</a> in making JBoss Tools CI and build infrastructure better and better. I’d also like to open the road towards efficient QA for JBoss Tools, including -among other- usage of Jacoco and Sonar. Then I’ll also work on developing nice stuff for some JBoss Tools modules, most probably on the SOA/BPM part.</p>
<p style="text-align: left;">That’s gonna be a lot of fun! I’m eager to be tomorrow and actually get started for this new team/employer/project/product/users.</p>
<p style="text-align: left;">Let’s keep in touch via this blog and <a href="https://twitter.com/#!/mickaelistria">twitter</a> <img alt=";)" class="wp-smiley" src="http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif"/> </p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/mickaelistria.wordpress.com/311/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mickaelistria.wordpress.com/311/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/mickaelistria.wordpress.com/311/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mickaelistria.wordpress.com/311/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/mickaelistria.wordpress.com/311/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mickaelistria.wordpress.com/311/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/mickaelistria.wordpress.com/311/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mickaelistria.wordpress.com/311/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/mickaelistria.wordpress.com/311/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mickaelistria.wordpress.com/311/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/mickaelistria.wordpress.com/311/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mickaelistria.wordpress.com/311/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/mickaelistria.wordpress.com/311/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mickaelistria.wordpress.com/311/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=mickaelistria.wordpress.com&amp;blog=22721041&amp;post=311&amp;subd=mickaelistria&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-31T14:54:55Z</updated>
    <category term="Eclipse"/>
    <category term="Uncategorized"/>
    <author>
      <name>Mickael Istria</name>
    </author>
    <source>
      <id>http://mickaelistria.wordpress.com</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://mickaelistria.wordpress.com/category/eclipse/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://mickaelistria.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://mickaelistria.wordpress.com/osd.xml" rel="search" title="Some Eclipse stuff" type="application/opensearchdescription+xml"/>
      <link href="http://mickaelistria.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Eclipse, agility, and software development in general</subtitle>
      <title>Some Eclipse stuff » Eclipse</title>
      <updated>2012-02-01T10:49:51Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-9210566578097047576.post-5252015812880795499</id>
    <link href="http://coderthoughts.blogspot.com/feeds/5252015812880795499/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=9210566578097047576&amp;postID=5252015812880795499" rel="replies" title="4 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/9210566578097047576/posts/default/5252015812880795499" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/9210566578097047576/posts/default/5252015812880795499" rel="self" type="application/atom+xml"/>
    <link href="http://coderthoughts.blogspot.com/2012/01/backing-up-through-ftp-on-mac.html" rel="alternate" title="Backing up through FTP on a Mac" type="text/html"/>
    <title>Backing up through FTP on a Mac</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">It's been a little over half a year now that I made the transition to mac. I was more or less forced into it by Dell because they didn't make the 1920x1200 high-res laptops any more that I like working with.<br/>But I have to say, the Apple hardware is second to none - I haven't experienced any mysterious crashes since.<br/><br/>However I had to find Mac alternatives for all the software that I was using, and I managed to find most of what I was looking for quite quickly...<br/><ul><li>For viewing zip archives I currently use <a href="http://www.zipeg.com/">Zipeg</a>, it only does extraction but that's good enough more most cases.</li><li>I really like <a href="http://www.autumnapps.com/breeze/">Breeze</a> for keyboard-based window alignment, similar to what Windows 7 has.</li><li>And I started using <a href="http://www.boastr.de/">BetterTouchTool</a> to map a keystroke the mousebuttons (saves me from having to press the touchpad all the time, which I don't really like).</li><li>I'm still undecided about iTunes, I don't really like it (e.g. it's missing a feature that shows what you're playing in the dock or something like that) but it kinda does what it needs to do and there doesn't seem to be anything better on the Mac, strangely enough...</li><li>Most other applications that I had been using before have Mac versions, except for...</li></ul><div>... a backup solution! I was always using <a href="http://www.areca-backup.org/">Areca</a> in the past which works great and had both Windows and Linux versions available. I guess everybody on Mac simply buys a Time Machine but I wanted to use my existing network storage drive for my backups.</div><div><br/></div><div>I found <a href="http://www.grapefruit.ch/iBackup/">iBackup</a> and used it for about half a year. It was seemingly able to do the work over a Samba mount to my network drive, although I did notice that I was getting many failure runs, in fact over half of the runs were failures. It might have been caused by the SMB implementation on my NAS drive, I don't really know but I noticed that it was having issues with relatively large files (over a couple of megs).</div><div>I started looking at using FTP to do the backups instead (my NAS drive supports FTP) but iBackup doesn't support that.</div><div><br/></div><div>After looking around for a while I couldn't find any freely available backup option for Mac that uses FTP. I might have missed one or two, but in the end I started writing a little shell script to do the job. One of the things that I was worried about was the backup speed. My script logs in and out for every directory recursively so I was concerned that it would take much longer to complete than the SMB option. I was very surprised that for my data it took 9 minutes to complete, where the SMB-based option took several hours if it completed at all.</div><div><br/></div><div>So here it is, a simple little bash script to backup any directory on your mac using FTP, I invoke it like this</div><div>example..</div><div><blockquote class="tr_bq"><span style="font-family: 'Courier New', Courier, monospace; font-size: small;">ftp-bku.sh ~/bin ~/docs ~/etc ~/utils</span></blockquote></div><div>Note that I have my FTP credential in my ~/.netrc file so that I don't need to provide them in the script itself...</div><div><br/></div><div>For those who are interested, you can find the script below (btw one thing that isn't completely reliable yet is the return code of the ftp program. It's 0 in some cases when there actually is a problem. Not sure if this can be fixed, although I could grep the output for error messages...)<br/><br/></div><pre>FTPURL=ftp://User@192.168.1.24:2121<br/>FTPBASEDIR=MyDir<br/>TIMESTAMP=$(date +"%d%m%y-%H%M%S")<br/>BACKUPDIR=backup_`hostname`_$TIMESTAMP<br/># Perform the actual FTP backup<br/>function backup {<br/>    PNAME="$1"<br/>    DNAME="$2"<br/>    ftp -i -V $FTPURL&lt;&lt;EOF<br/>    bin<br/>    cd "$FTPBASEDIR"<br/>    mkdir "$BACKUPDIR"<br/>    cd "$BACKUPDIR"<br/>    lcd "$PNAME"<br/>    mkdir "$DNAME"<br/>    cd "$DNAME"<br/>    mput *<br/>    quit<br/>EOF<br/>    if [ "$?" == "0" ]; then<br/>        echo Backup succeeded: "$BACKUPDIR"<br/>    else<br/>        echo Backup failed: "$BACKUPDIR"<br/>    fi<br/>}<br/># Backup the directory specified as $2 recursively where the base directory is $1<br/># So to backup /Users/david/etc/tmp as etc/tmp you pass in <br/>#  /Users/david/etc/tmp etc/tmp</pre><pre>function backup-dir {<br/>    cd "$1"<br/>    if [ -d "$2" ]; then<br/>        BASE="$1"<br/>        DIR="$2"<br/>        BASELEN="${#BASE}"<br/>        SUBDIR="${DIR:BASELEN}"<br/>        TARGET="`basename "$1"`$SUBDIR"<br/>        backup "$2" "$TARGET"<br/>    fi<br/>    cd "$2"<br/>    for dir in *<br/>    do<br/>        if [ -d "$2/$dir" ]; then<br/>            backup-dir "$1" "$2/$dir"<br/>        fi<br/>    done<br/>}<br/># Staring point, backup all directories specified on the command line<br/>for directory in "$@"<br/>do<br/>    backup-dir "$directory" "$directory"<br/>done<br/></pre><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/9210566578097047576-5252015812880795499?l=coderthoughts.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-31T11:59:55Z</updated>
    <published>2012-01-31T11:59:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="mac unix"/>
    <author>
      <name>davidb</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/13786738766478890804</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-9210566578097047576</id>
      <category term="OSGi"/>
      <category term="rfc 119"/>
      <category term="java"/>
      <category term="distributed osgi"/>
      <category term="ServiceLoader"/>
      <category term="ajax"/>
      <category term="ServiceMix"/>
      <category term="RFC 167"/>
      <category term="JSR311"/>
      <category term="JAX-RS"/>
      <category term="EMF Java text adventure"/>
      <category term="Apache Camel"/>
      <category term="apache cxf"/>
      <category term="java.util.ServiceLoader"/>
      <category term="Equinox"/>
      <category term="IRC"/>
      <category term="jboss"/>
      <category term="GMF"/>
      <category term="services"/>
      <category term="mac unix"/>
      <category term="OSGi Java cardgame Eclipse Equinox"/>
      <category term="eclipse EMF"/>
      <category term="Jersey"/>
      <category term="Spring-DM"/>
      <category term="google calendar"/>
      <category term="c905"/>
      <author>
        <name>davidb</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/13786738766478890804</uri>
      </author>
      <link href="http://coderthoughts.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/9210566578097047576/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://coderthoughts.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <title>&lt;coderthoughts /&gt;</title>
      <updated>2012-02-01T15:04:47Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://www.sigasi.com/1431 at http://www.sigasi.com</id>
    <link href="http://www.sigasi.com/content/xtext-resource-caching-loading-resources-5-times-faster" rel="alternate" type="text/html"/>
    <title>Xtext resource caching: loading resources 5 times faster</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><cite>Those who cannot remember the past are condemned to repeat it</cite>  (<a class="external-link" href="http://en.wikipedia.org/wiki/George_Santayana">George Santayana</a>).  I've always felt ambivalent about that quote.  History never ever repeats itself exactly.  In computer science on the other hand, it applies very well.  In all our collective software applications, we recalculate the same results time and time again and are therefore faced with constant question to remember or not to remember.   In this blog series, I'm going to talk about a cache for Xtext resources that we've developed over the past year.</p><p><a href="http://www.sigasi.com/content/xtext-resource-caching-loading-resources-5-times-faster" target="_blank">read more</a></p></div>
    </summary>
    <updated>2012-01-31T09:54:27Z</updated>
    <category scheme="http://www.sigasi.com/blog" term="Blog"/>
    <category scheme="http://www.sigasi.com/tag/emf" term="emf"/>
    <category scheme="http://www.sigasi.com/planeteclipse" term="planeteclipse"/>
    <category scheme="http://www.sigasi.com/xtext" term="Xtext"/>
    <author>
      <name>mark.christiaens</name>
    </author>
    <source>
      <id>http://www.sigasi.com/taxonomy/term/45/0</id>
      <link href="http://www.sigasi.com/taxonomy/term/45/0" rel="alternate" type="text/html"/>
      <link href="http://www.sigasi.com/taxonomy/term/45/0/feed" rel="self" type="application/rss+xml"/>
      <title>Sigasi - planeteclipse</title>
      <updated>2012-02-04T04:51:13Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://openchrom.wordpress.com/?p=181</id>
    <link href="http://openchrom.wordpress.com/2012/01/31/more-than-500-openchrom-downloads-this-month/" rel="alternate" type="text/html"/>
    <title>More than 500 OpenChrom downloads this month!</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">OpenChrom breaks the 500 download mark today! It’s the first time that OpenChrom has been downloaded more than 500 times in a month since its start in April 2010. Jippie!<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=openchrom.wordpress.com&amp;blog=25006439&amp;post=181&amp;subd=openchrom&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://www.openchrom.net" target="_blank" title="OpenChrom">OpenChrom</a> breaks the 500 download mark today! It’s the first time that OpenChrom has been <a href="http://sourceforge.net/projects/openchrom/files/stats/timeline?dates=2010-04-12+to+2012-01-31" target="_blank" title="downloaded more than 500 times">downloaded more than 500 times</a> in a month since its start in April 2010. Jippie!</p>
<p><a href="http://openchrom.files.wordpress.com/2012/01/openchrom-download-statistics.png"><img alt="" class="alignnone size-full wp-image-182" height="203" src="http://openchrom.files.wordpress.com/2012/01/openchrom-download-statistics.png?w=640&amp;h=203" title="OpenChrom Download Statistics January 2012" width="640"/></a></p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/openchrom.wordpress.com/181/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/openchrom.wordpress.com/181/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/openchrom.wordpress.com/181/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/openchrom.wordpress.com/181/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/openchrom.wordpress.com/181/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/openchrom.wordpress.com/181/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/openchrom.wordpress.com/181/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/openchrom.wordpress.com/181/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/openchrom.wordpress.com/181/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/openchrom.wordpress.com/181/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/openchrom.wordpress.com/181/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/openchrom.wordpress.com/181/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/openchrom.wordpress.com/181/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/openchrom.wordpress.com/181/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=openchrom.wordpress.com&amp;blog=25006439&amp;post=181&amp;subd=openchrom&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-31T07:25:36Z</updated>
    <category term="Uncategorized"/>
    <author>
      <name>eselmeister</name>
    </author>
    <source>
      <id>http://openchrom.wordpress.com</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://openchrom.wordpress.com/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://openchrom.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://openchrom.wordpress.com/osd.xml" rel="search" title="OpenChrom" type="application/opensearchdescription+xml"/>
      <link href="http://openchrom.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>open source software for chromatography and mass spectrometry</subtitle>
      <title>OpenChrom</title>
      <updated>2012-02-04T04:49:40Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-16474715.post-5785768230507440953</id>
    <link href="http://cdtdoug.blogspot.com/feeds/5785768230507440953/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://cdtdoug.blogspot.com/2012/01/change-sometimes-it-just-happens.html#comment-form" rel="replies" title="8 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/16474715/posts/default/5785768230507440953" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/16474715/posts/default/5785768230507440953" rel="self" type="application/atom+xml"/>
    <link href="http://cdtdoug.blogspot.com/2012/01/change-sometimes-it-just-happens.html" rel="alternate" title="Change, sometimes it just happens." type="text/html"/>
    <title>Change, sometimes it just happens.</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Well, it's been almost two weeks since my previous employer decided it was time for me to make a career change. Of course there's more to it than that but that's all I'm going to say about that. "It is what it is," and I'm actually pretty excited to see where my career takes me next.<br/><br/>While I'm an independent developer (which sounds much better than unemployed, no?), I have a few things I want to work on. Writing again in this blog is definitely one of them. It's been way too long and I've gotten used to spewing things in Twitter which is very handy but doesn't stay around long enough and isn't long enough to capture my thoughts in time. I have lots of opinions on things and it's good therapy for me to write them down.<br/><br/>The main technical area I continue to be very interested is, of course, Eclipse and the CDT. I've spent a lot of time over the last few months learning and thinking about usability and the importance of design and user experience. Pretending to be a newbie CDT user and walking through normal day-to-day activities shows me a few areas that need to be addressed. And since I'm still a CDT committer, I have the power to fix them.<br/><br/>I continue to be fixated with mobile and the new world that mobile UI and application architectures brings us. There's a reason these devices are flying off the shelves at your local phone and electronic store. They're so easy for the regular consumers to learn and use, and so powerful. It's that kind of user experience I'd like to see brought over to the desktop as well. I continue to follow the progress of Qt 5, which I believe can be a great framework not just for new desktop paradigms, but for mobile as well. It still seems to have a ways to go before it's stable, but I'm going to start experimenting with it as soon as I can get a build that works on my laptop.<br/><br/>The third area is a new one for me that I started chewing on in my spare time over the last few months, and that's web app development. Node.js has caught my eye as it has with numerous other developers. It's asynchronous programming model is very similar to the way we often program in embedded to produce scalable systems that react to events in the real world. While JavaScript is the cool thing in the web world these days, I have wondered whether we could provide similar APIs in a type-safe world, say using Java. People use Java on servers, no? And the convergence of server-side apps and mobile clients and embedded devices is a natural. It's the "Internet of Things".<br/><br/>So stay tuned for more over the upcoming days. As I mentioned, writing is good therapy, whether it be text in a blog or code in the exciting new world of mobile/web.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/16474715-5785768230507440953?l=cdtdoug.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-31T07:03:22Z</updated>
    <published>2012-01-31T00:43:00Z</published>
    <author>
      <name>Doug Schaefer</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/14088309262879705593</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-16474715</id>
      <category term="mobile"/>
      <category term="linux"/>
      <category term="wind river"/>
      <category term="android"/>
      <category term="eclipse"/>
      <category term="None"/>
      <author>
        <name>Doug Schaefer</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/14088309262879705593</uri>
      </author>
      <link href="http://cdtdoug.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/16474715/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://cdtdoug.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/16474715/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>Hey all. This blog records my thoughts of the day about my life on the Eclipse CDT project. I will occasionally give opinions and news regarding the Eclipse CDT - the project and its ecosystem - and on open source in general. Please feel free to comment on anything I say. I appreciate it when people are honest with me. And, please, please, consider all of these opinions mine, not of my employer.</subtitle>
      <title>Doug on the Eclipse CDT</title>
      <updated>2012-02-03T18:29:10Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://ianskerrett.wordpress.com/?p=2258</id>
    <link href="http://feedproxy.google.com/~r/IanSkerrett/~3/VxKzbjtvRy8/" rel="alternate" type="text/html"/>
    <title>Creating a build you can trust</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">‘The build is broken’ is something I’ve heard too many times in my software development career.  Concepts like continuous delivery and devops make it all that more important to have a build that you can trust.   In the Agile ALM Connect session, Build Trust in Your Build to Deployment Flow ,Yoav Landman, founder of Artifactory, [...]<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=ianskerrett.wordpress.com&amp;blog=405862&amp;post=2258&amp;subd=ianskerrett&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>‘The build is broken’ is something I’ve heard too many times in my software development career.  Concepts like continuous delivery and devops make it all that more important to have a build that you can trust.   In the Agile ALM Connect session, <a href="http://www.eclipsecon.org/2012/sessions/build-trust-your-build-deployment-flow">Build Trust in Your Build to Deployment Flow</a> ,Yoav Landman, founder of Artifactory, is going to demonstrate some of the techniques for using tools like Maven, Gradle and Artifactory to automate builds that release applications which are fully traceable, managed and trusted!</p>
<p>Yoav has also participated in my <a href="http://www.eclipsecon.org/2012/">Agile ALM Connect</a> speaker Q&amp;A series.  He answers my questions about Artifactory and his company JFrog.</p>
<p><strong>1. You are the founder of the <a href="http://www.jfrog.com/products.php">Artifactory</a> open source project.   Why did you decide to create Artifactory?</strong></p>
<p>I started Artifactory in 2006. I was working as a consultant at the time and migrated a couple of large client projects from Ant to Maven 2. I was frustrated by the absence of good options to manage dependencies and hosting artifacts in house. There were a couple of tools out there, but they all lacked basic features such as searching and artifact uploading and were basically very immature, since the whole domain of Binary Repository Managers, didn’t exist yet.<br/>
In an effort to fill this gap I decided to go and write my own tool as an open source project and created Artifactory. The quick adoption of Artifactory lead me to create JFrog around it. Actually, the final straw that pushed me to start the project was a complete outage of the Codehaus server for a couple of days, which left some of my clients in the dark as they depended on artifacts from the Codehaus repository which they removed from their local caches.</p>
<p><strong>2. We hear a lot about continuous delivery and devops.   How is this effecting the build process and what issues do you think need to be considered?</strong></p>
<p>We are dealing a lot with continuous delivery in JFrog as part of our Artifactory on the cloud service, Artifactory Online. For us, the main effect on the build process is that artifacts are deployed much more frequently, which makes good binary management critical.</p>
<p>Artifactory, as a repository manager is not just the target to which build results are deployed for usage by dependent builds, but also the source from which applications are deployed to production, and even where RPMs are installed from to newly provisioned machines. We are using the properties feature of Artifactory to tag artifacts that were moved to production so that they can be easily identified. Another important aspect is that snapshots can often be treated as releases, and so traditional staging/release workflows no longer fit the requirements of continuous deployment.</p>
<p><strong>3. If someone wanted to get started with Artifactory where would you suggest they start?</strong></p>
<p>I think the best starting point would be downloading Artifactory from <a href="http://jfrog.com/">jfrog.com</a> and watching this <a href="http://www.youtube.com/watch?v=2FGHwZSAqog">one-minute setup screencast</a>. For someone who has never used a binary repository and wants to understand the benefits of using a tool like Artifactory, I’d suggest looking at this <a href="http://www.youtube.com/watch?v=aa4YBDUDWy0">short intro</a>. Other than that, Artifactory is real easy to set up and get up to speed with, and the online help in the UI makes it really useful to understand how to get around. Finally, there is of course the <a href="http://wiki.jfrog.org/confluence/display/RTF/Welcome+to+Artifactory%21">user guide</a> and the <a href="http://forums.jfrog.org/Artifactory-Users-f2377369.html">users forum</a> for getting more help.</p>
<p> </p>
<p><a href="http://www.eclipsecon.org/2012/"><img alt="" class="aligncenter" height="100" src="http://www.eclipsecon.org/2012/sites/eclipsecon.org.2012/files/econ-agile130x100_speaking.gif?1315863548" width="130"/></a></p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/ianskerrett.wordpress.com/2258/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ianskerrett.wordpress.com/2258/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/ianskerrett.wordpress.com/2258/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ianskerrett.wordpress.com/2258/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/ianskerrett.wordpress.com/2258/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ianskerrett.wordpress.com/2258/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/ianskerrett.wordpress.com/2258/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ianskerrett.wordpress.com/2258/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/ianskerrett.wordpress.com/2258/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ianskerrett.wordpress.com/2258/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/ianskerrett.wordpress.com/2258/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ianskerrett.wordpress.com/2258/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/ianskerrett.wordpress.com/2258/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ianskerrett.wordpress.com/2258/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=ianskerrett.wordpress.com&amp;blog=405862&amp;post=2258&amp;subd=ianskerrett&amp;ref=&amp;feed=1" width="1"/><img height="1" src="http://feeds.feedburner.com/~r/IanSkerrett/~4/VxKzbjtvRy8" width="1"/></div>
    </content>
    <updated>2012-01-31T04:29:58Z</updated>
    <category term="eclipse"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://ianskerrett.wordpress.com/2012/01/31/creating-a-build-you-can-trust/</feedburner:origLink>
    <author>
      <name>Ian Skerrett</name>
    </author>
    <source>
      <id>http://ianskerrett.wordpress.com</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://ianskerrett.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://ianskerrett.wordpress.com/osd.xml" rel="search" title="Ian Skerrett" type="application/opensearchdescription+xml"/>
      <link href="http://feeds.feedburner.com/IanSkerrett" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://ianskerrett.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Marketing at Eclipse</subtitle>
      <title>Ian Skerrett</title>
      <updated>2012-01-31T07:04:05Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://waynebeaton.wordpress.com/?p=1824</id>
    <link href="http://waynebeaton.wordpress.com/2012/01/30/vendor-neutrality-in-an-open-project/" rel="alternate" type="text/html"/>
    <title>Vendor Neutrality in an Open Project</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Imagine that you want to contribute to an open source project. You visit the project to browse the information provided by the project team and make your way to the downloads page. There, you discover that the downloads are hosted … <a href="http://waynebeaton.wordpress.com/2012/01/30/vendor-neutrality-in-an-open-project/">Continue reading <span class="meta-nav">→</span></a><img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=waynebeaton.wordpress.com&amp;blog=19425814&amp;post=1824&amp;subd=waynebeaton&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Imagine that you want to contribute to an open source project. You visit the project to browse the information provided by the project team and make your way to the downloads page. There, you discover that the downloads are hosted at a separate site owned and maintained by one of the project’s contributing organizations. Let’s say that the organization is a competitor of your own employer. Would you still want to contribute to that project? Would you feel invited to join? Would you feel that the project is open to your ideas?</p>
<p>Vendor neutrality is a tricky thing to balance. Organizations that contribute to open source deserve some recognition, but if you cross the line from recognition to vendor bias, you may end up turning away potential contributors and their contributions.</p>
<p>Splashing a few logos on a project page is a great way to provide recognition. Committer email addresses can very often also provide some amount of recognition. The trick is to stay on the right side of the line that separates “interesting; company X contributes a lot to this project” and “company X obviously owns and runs this project”. It can be very difficult to manage perception.</p>
<p>Vendor neutrality is a requirement that’s baked right into the <a href="http://www.eclipse.org/org/documents/Eclipse%20BYLAWS%202011_08_15%20Final.pdf">Eclipse Bylaws</a>:</p>
<blockquote><p>The Eclipse technology is a <em>vendor-neutral</em>, open development<br/>
platform supplying frameworks and exemplary, extensible tools (the “Eclipse Platform”). </p></blockquote>
<p>It’s something that we take very seriously. It’s not something, however, for which we have very many hard-and-fast rules. Managing vendor neutrality tends to be a subjective matter that is highly-dependent on perception. </p>
<p>For example, it’s generally acceptable for a project to include a link or two on their download page to software that is hosted elsewhere. Some projects do this to provide more complete packages that contain the project code along with value-add software. There’s nothing wrong with doing this, provided that:</p>
<ul>
<li>the project code is accessible directly from the vendor-neutral eclipse.org download server;</li>
<li>the eclipse.org-based downloads are the prominent choice; and</li>
<li>there is a means for other organizations provide similar links to their project-related downloads.</li>
</ul>
<p>Similarly, providing links to services related to a project can be helpful for the adopter community. Again, there’s nothing wrong with doing this, provided that the playing field is level. If a project chooses to provide links to services, it must be done in a vendor-neutral manner: other providers of similar project-related services must have a means of having their links included. It’s often enough to just document a reasonable set of conditions that must be met for another organization to list their services. Or you can just outsource the problem completely and include a link to services listed in the <a href="http://marketplace.eclipse.org">Eclipse Marketplace</a>.</p>
<p>The Eclipse wiki provides further guidance concerning <a href="http://wiki.eclipse.org/Links_to_non-eclipse.org_content">links to non-eclipse.org content</a>.</p>
<p>Vendor neutrality is a big and important part of project diversity. If you are an Eclipse project, you have to care about project diversity. By extension, you have to care about vendor neutrality.</p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/waynebeaton.wordpress.com/1824/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/waynebeaton.wordpress.com/1824/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/waynebeaton.wordpress.com/1824/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/waynebeaton.wordpress.com/1824/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/waynebeaton.wordpress.com/1824/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/waynebeaton.wordpress.com/1824/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/waynebeaton.wordpress.com/1824/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/waynebeaton.wordpress.com/1824/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/waynebeaton.wordpress.com/1824/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/waynebeaton.wordpress.com/1824/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/waynebeaton.wordpress.com/1824/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/waynebeaton.wordpress.com/1824/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/waynebeaton.wordpress.com/1824/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/waynebeaton.wordpress.com/1824/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=waynebeaton.wordpress.com&amp;blog=19425814&amp;post=1824&amp;subd=waynebeaton&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-30T19:32:21Z</updated>
    <category term="Community"/>
    <category term="EDP"/>
    <author>
      <name>waynebeaton</name>
    </author>
    <source>
      <id>http://waynebeaton.wordpress.com</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://waynebeaton.wordpress.com/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://waynebeaton.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://waynebeaton.wordpress.com/osd.xml" rel="search" title="Eclipse Hints, Tips, and Random Musings" type="application/opensearchdescription+xml"/>
      <link href="http://waynebeaton.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Wayne's Eclipse Blog</subtitle>
      <title>Eclipse Hints, Tips, and Random Musings</title>
      <updated>2012-02-04T04:49:02Z</updated>
    </source>
  </entry>

  <entry>
    <id>http://feedproxy.google.com/~r/eclipse/fnews/~3/6jIBvx0KtPw/20120130_awardsvote.php</id>
    <link href="http://feedproxy.google.com/~r/eclipse/fnews/~3/6jIBvx0KtPw/20120130_awardsvote.php" rel="alternate" type="text/html"/>
    <title>Voting is Open for the Eclipse Community Awards</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Nominations for the Eclipse Community Awards are complete and <a href="http://www.surveymonkey.com/s/eclipseawards2012" target="_blank">voting</a> has opened for the individual and project category nominees. Congratulations to all the worthy candidates! Show your appreciation to the people that have made Eclipse a stronger community by casting your vote.<img height="1" src="http://feeds.feedburner.com/~r/eclipse/fnews/~4/6jIBvx0KtPw" width="1"/></div>
    </summary>
    <updated>2012-01-30T17:08:59Z</updated>
    <category term="news"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://eclipse.org/org/press-release/20120130_awardsvote.php</feedburner:origLink>
    <source>
      <id>http://www.eclipse.org</id>
      <logo>http://www.eclipse.org/images/EclipseBannerPic.jpg</logo>
      <author>
        <name>Eclipse Announcements</name>
      </author>
      <link href="http://www.eclipse.org" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/eclipse/fnews" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Eclipse News</subtitle>
      <title>Eclipse News</title>
      <updated>2012-01-30T17:28:39Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-3356090267744964460.post-1421733848849289972</id>
    <link href="http://eclipseandlinux.blogspot.com/feeds/1421733848849289972/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://eclipseandlinux.blogspot.com/2012/01/life-saving-eclipse-functionality.html#comment-form" rel="replies" title="0 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/3356090267744964460/posts/default/1421733848849289972" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/3356090267744964460/posts/default/1421733848849289972" rel="self" type="application/atom+xml"/>
    <link href="http://eclipseandlinux.blogspot.com/2012/01/life-saving-eclipse-functionality.html" rel="alternate" title="Life-saving Eclipse functionality" type="text/html"/>
    <title>Life-saving Eclipse functionality</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">As you know, I am working on Eclipse Fedora Build. Eclipse 3.8 ("almost M5") will get soon into <a href="http://fedoraproject.org/wiki/Releases/Rawhide" target="_blank">Fedora Rawhide repository</a> very soon.<br/><br/>Testing the build involved running new Eclipse and a number of of older packages, which included egit, jgit and others. My  local git repository got quickly corrupted (not sure yet why), so I created a patch, copied it into a safe place overwriting the previous one, deleted the repository, and cloned it again.<br/><br/>When I tried to apply the patch, it turned out that it was empty, and last couple days of my work was gone (because I happily overwrote the old patch).<br/><br/>Fortunately, Eclipse has a feature that deals with that kind of situations:<br/><br/><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-hk9oyojP7lw/Tya3HzqwY3I/AAAAAAAACT0/zEejlDWMbr4/s1600/Workspace+3_008.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="http://2.bp.blogspot.com/-hk9oyojP7lw/Tya3HzqwY3I/AAAAAAAACT0/zEejlDWMbr4/s320/Workspace+3_008.png" width="260"/></a></div><br/>and then, a nice version selector appears:<br/><br/><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-wEZqRkDypBI/Tya3jratVeI/AAAAAAAACT8/dZQP7143_-8/s1600/Selection_009.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="228" src="http://3.bp.blogspot.com/-wEZqRkDypBI/Tya3jratVeI/AAAAAAAACT8/dZQP7143_-8/s320/Selection_009.png" width="320"/></a></div><br/><br/><br/><br/>My work was wonderfully resurrected!<br/><br/>Thank you, Eclipse!<br/><br/><br/><br/><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/3356090267744964460-1421733848849289972?l=eclipseandlinux.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-30T15:31:24Z</updated>
    <published>2012-01-30T15:31:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="tip"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="fedora"/>
    <author>
      <name>Christopher Daniel</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/02643339658259354232</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-3356090267744964460</id>
      <category term="linux"/>
      <category term="debug"/>
      <category term="jni"/>
      <category term="cdt"/>
      <category term="java"/>
      <category term="build"/>
      <category term="launcher"/>
      <category term="eclipse"/>
      <category term="fedora"/>
      <category term="statushandling"/>
      <category term="ubuntu"/>
      <category term="open source"/>
      <category term="eclipse-build"/>
      <category term="swt"/>
      <category term="errorhandling"/>
      <category term="tip"/>
      <category term="openjdk"/>
      <category term="unity"/>
      <category term="c"/>
      <author>
        <name>Christopher Daniel</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/02643339658259354232</uri>
      </author>
      <link href="http://eclipseandlinux.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/3356090267744964460/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://eclipseandlinux.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <title>Chris Daniel</title>
      <updated>2012-02-03T14:26:46Z</updated>
    </source>
  </entry>

  <entry>
    <id>https://community.jboss.org/community/tools/blog/2012/01/24/jboss-source-lookup</id>
    <link href="https://community.jboss.org/community/tools/blog/2012/01/24/jboss-source-lookup" rel="alternate" type="text/html"/>
    <title>JBoss Source Lookup</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div class="jive-rendered-content"><p>The JBoss Tools Source Lookup plugin automatically adds a source attachment when debugging JBoss AS servers. </p><p>The plugin has been tested with JBoss AS 7.x and JBoss AS 6.1. </p><p style="height: 8pt; padding: 0px;"> </p><h4>Installing the JBoss Source Lookup plugin</h4><p style="height: 8pt; padding: 0px;"> </p><ul><li>install JBoss Tools 3.3 as described in  <a class="jive-link-blog-small" href="https://community.jboss.org/community/tools/blog/2011/12/18/learn-java-ee-6-quickly-using-jboss-central">Learn Java EE 6 quickly using JBoss Central</a></li><li>call Help&gt;Install New Software..., click the Add button and enter the following update site: </li></ul><p><a class="jive-link-external-small" href="https://anonsvn.jboss.org/repos/jbosstools/workspace/snjeza/org.jboss.tools.as.sourcelookup.updatesite/">https://anonsvn.jboss.org/repos/jbosstools/workspace/snjeza/org.jboss.tools.as.sourcelookup.updatesite/</a></p><p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/38-4482-17822/lookupblog1.png"><img alt="lookupblog1.png" class="jive-image-thumbnail jive-image" height="382" src="https://community.jboss.org/servlet/JiveServlet/downloadImage/38-4482-17822/450-382/lookupblog1.png" width="450"/></a></p><p>Install the JBoss Tools Source Lookup category and restart Eclipse.</p><p style="height: 8pt; padding: 0px;"> </p><h4>Using the JBoss Source Lookup plugin</h4><p style="height: 8pt; padding: 0px;"> </p><ul><li>set up the central JBoss Maven repository as explained in: <a class="jive-link-wiki-small" href="https://community.jboss.org/docs/DOC-15169">Maven Getting Started - Users</a></li><li>create the jboss-as-helloworld project by following the instructions in <a class="jive-link-blog-small" href="https://community.jboss.org/community/tools/blog/2011/12/18/learn-java-ee-6-quickly-using-jboss-central">Learn Java EE 6 quickly using JBoss Central</a> </li><li>wait for Maven to refresh indexes </li></ul><p style="height: 8pt; padding: 0px;"> </p><p>The use and debugging of this plugin is demonstrated in the following screencast: <a class="jive-link-external-small" href="http://screencast.com/t/i6k9hzkjViOs">Debugging JBoss AS server</a>.</p><p style="height: 8pt; padding: 0px;"> </p><p>The JBoss Source Lookup plugin enhances source attachment in the following way: </p><p style="height: 8pt; padding: 0px;"> </p><ul><li>archive file doesn't have to be in the maven classpath</li><li>archive file doesn't have to be included in the classpath (jbossweb-*.jar, for instance). The JBoss Source Lookup plugin will find a class within a JBoss AS distribution and, if it is a Maven artifact, the plugin will attach the corresponding source.</li><li>archive file doesn't have to be in the m2e index (jbossjts-4.16.0.Final.jar, for instance)</li></ul><p style="height: 8pt; padding: 0px;"> </p><p>You don't have to add any JBoss AS Runtime to the classpath. I have added it in order to ensure the classes within the runtime are included in the Java Search and in order to be easier to add a breakpoint. </p><p style="height: 8pt; padding: 0px;"> </p><h4>Debugging Apache Tomcat and Glassfish servers</h4><p style="height: 8pt; padding: 0px;"> </p><p>The JBoss Source plugin can serve to debug other servers.</p><p>If a server includes mavenized archives, the JBoss Source container will find, download, and show source files. <br/>I have tested the Apache Tomcat 7.0.25 and Glassfish 3.1.1. </p><p style="height: 8pt; padding: 0px;"> </p><p>If you want to debug Apache Tomcat and/or Glassfish, you have to do the following: </p><p style="height: 8pt; padding: 0px;"> </p><ul><li>create some Apache Tomcat/Glassfish server<p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/38-4482-17852/lookupblog3.png"><img alt="lookupblog3.png" class="jive-image-thumbnail jive-image" height="71" src="https://community.jboss.org/servlet/JiveServlet/downloadImage/38-4482-17852/450-71/lookupblog3.png" width="450"/></a></p></li><li>open the server editor<p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/38-4482-17854/lookupblog4.png"><img alt="lookupblog4.png" class="jive-image-thumbnail jive-image" height="230" src="https://community.jboss.org/servlet/JiveServlet/downloadImage/38-4482-17854/450-230/lookupblog4.png" width="450"/></a></p></li><li>click <strong>Open launch configuration</strong> and select the <strong>Source</strong> tab<p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/38-4482-17855/lookupblog5.png"><img alt="lookupblog5.png" class="jive-image-thumbnail jive-image" height="404" src="https://community.jboss.org/servlet/JiveServlet/downloadImage/38-4482-17855/450-404/lookupblog5.png" width="450"/></a></p></li><li>click the <strong>Add</strong> button and select the <strong>JBoss AS Source Container</strong><p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/38-4482-17857/lookupblog6.png"><img alt="lookupblog6.png" class="jive-image" height="225" src="https://community.jboss.org/servlet/JiveServlet/downloadImage/38-4482-17857/310-225/lookupblog6.png" width="310"/></a></p></li><li>JBoss AS servers will be automatically recognized and you can choose them by clicking a server <br/>As to other servers, you need to click the <strong>Choose Home</strong> button, select all the directories in which the server's archives are placed. </li></ul><p>        If you debug Tomcat, you can choose $TOMCAT_HOME/lib.  When debugging Glassfish, you can choose $GLASSFISH_HOME/lib and $GLASSFISH_HOME/modules. <br/>        You can add as many JBoss AS Source containers as you want.</p><p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/38-4482-17858/lookupblog7.png"><img alt="lookupblog7.png" class="jive-image" height="295" src="https://community.jboss.org/servlet/JiveServlet/downloadImage/38-4482-17858/310-295/lookupblog7.png" width="310"/></a></p><p style="height: 8pt; padding: 0px;"> </p><ul><li>move a JBoss Source container(s) to the end (optional)<p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/38-4482-17859/lookupblog8.png"><img alt="lookupblog8.png" class="jive-image" height="369" src="https://community.jboss.org/servlet/JiveServlet/downloadImage/38-4482-17859/310-369/lookupblog8.png" width="310"/></a></p></li><li>you can add a Server Runtime container to the project's classpath (optional)<p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/38-4482-17860/lookupblog9.png"><img alt="lookupblog9.png" class="jive-image" height="211" src="https://community.jboss.org/servlet/JiveServlet/downloadImage/38-4482-17860/254-211/lookupblog9.png" width="254"/></a></p></li><li> start the server in the debug mode<p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/38-4482-17861/lookupblog10.png"><img alt="lookupblog10.png" class="jive-image-thumbnail jive-image" height="218" src="https://community.jboss.org/servlet/JiveServlet/downloadImage/38-4482-17861/450-218/lookupblog10.png" width="450"/></a></p><strong>StandardWrapper.java</strong> is placed in the glassfish's <strong>web-core.jar</strong>.   <br/>The Source Lookup plugin finds this archive's source and shows it in the editor. </li></ul><p style="height: 8pt; padding: 0px;"> </p><p>In a similar way you can debug Apache Tomcat server.</p><p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/38-4482-17862/lookupblog12.png"><img alt="lookupblog12.png" class="jive-image-thumbnail jive-image" height="217" src="https://community.jboss.org/servlet/JiveServlet/downloadImage/38-4482-17862/450-217/lookupblog12.png" width="450"/></a></p><p>The<strong> ApplicationFilterChain.java</strong> is placed in the Tomcat's <strong>catalina.jar</strong> archive. </p><p style="height: 8pt; padding: 0px;"> </p><p style="height: 8pt; padding: 0px;"> </p><p>The Source Lookup plugin finds source for a mavenized archive as follows: </p><p style="height: 8pt; padding: 0px;"> </p><ul><li>using the m2e API</li><li>using the archive's metadata (META-INF/maven)</li><li>using nexus repositories that can be defined using the Source Lookup preferences page<p><a href="https://community.jboss.org/servlet/JiveServlet/showImage/38-4482-17863/lookupblog11.png"><img alt="lookupblog11.png" class="jive-image-thumbnail jive-image" height="259" src="https://community.jboss.org/servlet/JiveServlet/downloadImage/38-4482-17863/450-259/lookupblog11.png" width="450"/></a></p></li></ul><p style="height: 8pt; padding: 0px;"> </p><p>The Source Lookup preferences page enables you to add/remove, enable/disable and/or change ordering of Nexus repositories. </p><p>You can see that the <strong>helloworld</strong> project I have used in this blog, <strong>is not a maven project</strong> (it doesn't contain the maven icon). <br/>JBoss Source Lookup plugin can be used to debug any Java project. </p><p style="height: 8pt; padding: 0px;"> </p><p>The plugin doesn't have to be used for debugging only. </p><p>It will find, download and open a source file for a mavenized archive included in the classpath when double-clicking a class file in the <strong>Package Explorer</strong> view, opening it using <strong>Navigate&gt;Open Type</strong> or some other way. </p><p style="height: 8pt; padding: 0px;"> </p><p>The JBoss Source Lookup plugin can be used for any Java project and any launch configuration. </p><p style="height: 8pt; padding: 0px;"> </p><p><strong>Note</strong>: When starting debugging the first time, it could take some time until m2e updates indexes and the JBoss Source lookup plugin scans the container's directory. </p></div></div>
    </summary>
    <updated>2012-01-30T13:16:03Z</updated>
    <published>2012-01-24T20:59:46Z</published>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="jbosstools"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="eclipse"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="maven"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="jbossas"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="debugging"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="jbossas7"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="m2e"/>
    <category scheme="https://community.jboss.org/community/tools/blog/tags" term="jbosscentral"/>
    <author>
      <name>Snjezana Peco</name>
      <email>do-not-reply@jboss.com</email>
      <uri>https://community.jboss.org/people/snjeza</uri>
    </author>
    <source>
      <id>https://community.jboss.org/community/tools/blog</id>
      <link href="https://community.jboss.org/community/tools/blog" rel="alternate" type="text/html"/>
      <link href="http://community.jboss.org/en/tools/blog/feeds/posts" rel="self" type="application/atom+xml"/>
      <subtitle>How to install and use the JBoss Tools modules.</subtitle>
      <title>JBoss Tools</title>
      <updated>2012-02-03T18:01:36Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-7116704192081983568.post-2126554097822376790</id>
    <link href="http://eclipseandjazz.blogspot.com/feeds/2126554097822376790/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://eclipseandjazz.blogspot.com/2012/01/null-analysis-for-fields-with-eclipse.html#comment-form" rel="replies" title="2 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/7116704192081983568/posts/default/2126554097822376790" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/7116704192081983568/posts/default/2126554097822376790" rel="self" type="application/atom+xml"/>
    <link href="http://eclipseandjazz.blogspot.com/2012/01/null-analysis-for-fields-with-eclipse.html" rel="alternate" title="Null Analysis for Fields with Eclipse JDT" type="text/html"/>
    <title>Null Analysis for Fields with Eclipse JDT</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div dir="ltr" style="text-align: left;">It is common knowledge that Eclipse has an intra-procedural null analysis capability, augmented recently with null annotations for inter-procedural analysis in Juno M4. However, a big flaw and pain point till now was that the anlsysis would only work for local variables/parameters, and NOT for fields! Strange, innit? Well, a bunch of problems with handling fields prevented the initial null analysis implementation to be generic enough to handle fields as well. Access from different threads, through different objects, initialization of even final fields in different constructors were some of the roadblocks because of which this work was put on the backburner. However, even though we haven't found a holy grail to tackle these problems, we've come out with atleast a basic implementation of null analysis for fields! Rejoice!<br/><br/><b>A. The Problem</b><br/>Prior to Juno M5, the following code snippet would raise null warnings only on the local variable, but not on the field.<br/><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-WAYG6Z5gP5w/TyZOmZmGxaI/AAAAAAAACLE/crkB4R3Ozm8/s1600/$148A72D2718D5D18.bmp" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://3.bp.blogspot.com/-WAYG6Z5gP5w/TyZOmZmGxaI/AAAAAAAACLE/crkB4R3Ozm8/s1600/$148A72D2718D5D18.bmp"/></a></div><br/><br/><b>B. The Solution</b><br/>See the <a href="http://download.eclipse.org/eclipse/downloads/drops4/S-4.2M5-201201271145/eclipse-news-M5.html">Juno M5 new and noteworthy page</a> for the new null analysis for fields.<br/>Note that for non-constant fields, we only raise "potential NPE" warnings even if the field has been assigned null or compared against null because we assume that there's always a chance of another thread modifying it between the assignment/comaparison and the actual reference. So consider the following snippet<br/><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-Z_n1Vv9wJEs/TyZPc7nOMkI/AAAAAAAACLM/_CGWY-U8shM/s1600/$7ACE762ED0458596.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="331" src="http://3.bp.blogspot.com/-Z_n1Vv9wJEs/TyZPc7nOMkI/AAAAAAAACLM/_CGWY-U8shM/s640/$7ACE762ED0458596.jpg" width="640"/></a></div><br/><br/><b>C. Not quite there yet?</b><br/>There are a few limitations with the current null analysis for fields:<br/><ul style="text-align: left;"><li>Yet to be done for final fields that are initialized at the time of declaration. This will be done with the fix for <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=237236">bug 237236</a> soon.</li><li>The analysis only works for non-static fields of the current object or static fields of the current type ONLY. That means, in the following code snippet. you get null warnings on direct access of field1 or access via "this", but not if field1 is accessed via another object 'test'.</li></ul><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">class Test{<br/>   public Object field1;</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">   void foo(Test test) {</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">      if (field1 == null) { </span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">         System.out.println( field1 .toString());  // "potential" NPE warning</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">     } else {</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">        // do something</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">     }</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">     System.out.println(field1.toString());  // Potential NPE warning here</span><br/><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">     if (this.field1 == null) { </span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">         System.out.println( this.field1 .toString());  // "potential" NPE warning</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">     } else {</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">        // do something</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">     }</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">     System.out.println(this.field1.toString());  // Potential NPE warning here</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">    // access through object 'test' will raise no warnings. See below</span><br/><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">     if (test.field1 == null) { </span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">         System.out.println( test.field1 .toString());  // no warning</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">     } else {</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">        // do something</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">     }</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">     System.out.println(test.field1.toString());  // no warning</span><br/><br/><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">  }</span><br/><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">}</span><br/><br/>This is a limitation of the current code analysis infrastructure and we hope to address this sometime soon. The soon to be released<a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=331649"> null annotations support for fields</a> will greatly assuage this problem in the short term.<br/><br/>Please do start using this new feature. Even with its limitations, its quite useful and we've found a long list of unsafe code patterns in the Eclipse SDK itself. <a href="http://blog.deepakazad.com/2012/01/weird-code-pattern-in-eclipse-sdk.html">Deepak's post here</a> presents one such example<br/><br/><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-dOp3pEh1YgM/TyGOfUB907I/AAAAAAAAAc0/qVI7xiHEuVw/s1600/weird-code-pattern.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://3.bp.blogspot.com/-dOp3pEh1YgM/TyGOfUB907I/AAAAAAAAAc0/qVI7xiHEuVw/s1600/weird-code-pattern.png"/></a></div><div class="separator" style="clear: both; text-align: center;"><br/></div><div class="separator" style="clear: both; text-align: left;">Apart from this, Juno M5 has more interesting items. See<a href="http://eclipseandjazz.blogspot.com/2012/01/faster-java-search-using-pre-built.html"> my previous post on pre-built indexes</a>, <a href="http://blog.objectteams.org/2012/01/help-the-jdt-compiler-helping-you-1-resource-leaks/">Stephan's post on Resource leak warnings</a> and the <a href="http://download.eclipse.org/eclipse/downloads/drops4/S-4.2M5-201201271145/eclipse-news-M5.html">Juno M5 new and noteworthy page</a> for more.</div><div class="separator" style="clear: both; text-align: left;"><br/></div><div class="separator" style="clear: both; text-align: left;">Stay tuned!</div><br/><br/><br/></div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/7116704192081983568-2126554097822376790?l=eclipseandjazz.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-30T08:06:57Z</updated>
    <published>2012-01-29T20:14:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="planeteclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="juno"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="fields"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="M5"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="null"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="jdt"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="static analysis"/>
    <author>
      <name>Aupsy-The cOOlest One!!</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/00978910362796816675</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-7116704192081983568</id>
      <category term="execution environment"/>
      <category term="jazz"/>
      <category term="rational"/>
      <category term="eclipsecon"/>
      <category term="fields"/>
      <category term="java 7"/>
      <category term="static analysis"/>
      <category term="rational rhapsody"/>
      <category term="collaboration"/>
      <category term="jazz.net"/>
      <category term="ADT"/>
      <category term="annotations"/>
      <category term="classpath"/>
      <category term="PDE"/>
      <category term="preferences"/>
      <category term="jdt"/>
      <category term="indigo"/>
      <category term="null"/>
      <category term="visual studio"/>
      <category term="rational team concert"/>
      <category term="android"/>
      <category term="ibm"/>
      <category term="mobile development"/>
      <category term="agile"/>
      <category term="plugin"/>
      <category term="planeteclipse"/>
      <category term="preferenceTransfer"/>
      <category term="diamond"/>
      <category term="Innovate"/>
      <category term="juno"/>
      <category term="search"/>
      <category term="compliance"/>
      <category term="index"/>
      <category term="application lifecycle management"/>
      <category term="phonegap"/>
      <category term="modeling"/>
      <category term="CLM"/>
      <category term="eclipse"/>
      <category term="eclipseday"/>
      <category term="rational ibm team concert phonegap android agile mobile software"/>
      <category term="API tooling"/>
      <category term="university"/>
      <category term="jazzhub"/>
      <category term="M5"/>
      <author>
        <name>Aupsy-The cOOlest One!!</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/00978910362796816675</uri>
      </author>
      <link href="http://eclipseandjazz.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/7116704192081983568/posts/default/-/planeteclipse" rel="self" type="application/atom+xml"/>
      <link href="http://eclipseandjazz.blogspot.com/search/label/planeteclipse" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>This blog is about the open world of Eclipse, Jazz and related technologies. Its about new stuff coming your way, old stuff you didn't know existed or simply stuff that we talk about as we enter a new era in software development. All this, straight from the horse's mouth!</subtitle>
      <title>Eclipse, Java and all that JAZZ!</title>
      <updated>2012-02-01T09:14:45Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://www.vogella.de/blog/?p=4873</id>
    <link href="http://www.vogella.de/blog/2012/01/30/eclipse-4-tutorial-available/" rel="alternate" type="text/html"/>
    <title>Eclipse 4 Application Tutorial available (for Eclipse 4.2 M5)</title>
    <summary>A while ago I published an Eclipse e4 tutorial. Things have been moving quite a bit in Eclipse 4 since then.

I'm pretty excited about the capabilities of Eclipse 4, therefore I re-wrote my tutorial to show the capabilities of Eclipse 4. 

This tutorial focuses on the application model and the dependency injection capabilities.

Eclipse 4 ...</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>A while ago I published an <a href="http://www.vogella.de/articles/Eclipse4RCP/article.html">Eclipse e4 tutorial</a>. Things have been moving quite a bit in Eclipse 4 since then.</p>
<p>I’m pretty excited about the capabilities of Eclipse 4, therefore I re-wrote my tutorial to show the capabilities of Eclipse 4. </p>
<p>This tutorial focuses on the application model and the dependency injection capabilities.</p>
<p><a href="http://www.vogella.de/articles/Eclipse4RCP/article.html">Eclipse 4 Tutorial</a>.</p>
<p><a href="http://www.vogella.de/eclipse.html">More Eclipse 4 tutorials</a> are available on <a href="http://www.vogella.de/eclipse.html">http://www.vogella.de/eclipse.html</a> in the category Eclipse 4 Development but I have not yet spend sufficient time to polish their content.</p>
<p>I hope you like it. It was a significant amount of work I invested into the description. Please let me know if you find errors. </p>
<p>I also would like to thank Brian de Alwis, Tom Schindl, Remy Suen, Paul Webster, John Arthorne and Eric Moffatt for answering my questions.</p>
<p class="wp-flattr-button"/> <p><a href="http://www.vogella.de/blog/?flattrss_redirect&amp;id=4873&amp;md5=c51ff3440cdbb4c0918ed7b99fcda7d6" target="_blank" title="Flattr"><img alt="flattr this!" src="http://www.vogella.de/blog/wp-content/plugins/flattr/img/flattr-badge-large.png"/></a></p></div>
    </content>
    <updated>2012-01-30T06:10:06Z</updated>
    <category term="Eclipse"/>
    <category term="Eclipse 4"/>
    <category term="Eclipse e4"/>
    <author>
      <name>Lars Vogel</name>
    </author>
    <source>
      <id>http://www.vogella.de/blog</id>
      <link href="http://www.vogella.de/blog/category/eclipse/feed" rel="self" type="application/rss+xml"/>
      <link href="http://www.vogella.de/blog" rel="alternate" type="text/html"/>
      <subtitle>Tips around Eclipse and Android programming</subtitle>
      <title>Developer Papercuts » Eclipse</title>
      <updated>2012-02-02T13:03:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>https://bryanhunt.wordpress.com/?p=635</id>
    <link href="http://bryanhunt.wordpress.com/2012/01/29/google-summer-of-code-2012-with-xtext-emf-and-mongodb/" rel="alternate" type="text/html"/>
    <title>Google Summer of Code 2012 with Xtext, EMF, and MongoDB</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">The Eclipse Google Summer of Code for 2012 will start coming to life soon, and I have an idea for a project involving Xtext, EMF, and MongoDB.  Ed Merks and I have created a project called MongoEMF that allows you to persist EMF objects to MongoDB.  MongoEMF has the ability to query objects based on [...]<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=bryanhunt.wordpress.com&amp;blog=7500940&amp;post=635&amp;subd=bryanhunt&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>The <a href="http://wiki.eclipse.org/Google_Summer_of_Code">Eclipse Google Summer of Code</a> for 2012 will start coming to life soon, and I have an idea for a project involving <a href="http://www.eclipse.org/Xtext/">Xtext</a>, <a href="http://www.eclipse.org/modeling/emf/">EMF</a>, and <a href="http://www.mongodb.org/">MongoDB</a>.  <a href="http://ed-merks.blogspot.com/">Ed Merks</a> and I have created a project called <a href="https://github.com/BryanHunt/mongo-emf/wiki">MongoEMF</a> that allows you to persist EMF objects to MongoDB.  MongoEMF has the ability to query objects based on attribute and reference values, but is lacking some functionality and robustness.  We think a re-write of the query engine using Xtext and EMF would make for a great Google Summer of Code project.  This project has a very well defined scope, is easily unit tested, and involves some pretty cool technology.</p>
<p>The project will consist of two major parts.  The first will be to define a query grammar (possibly re-using an existing grammar) using Xtext.  The result will be an EMF query model that can be serialized and de-serialized to a string.  The string will be used as the query portion of a URI, and must be human readable.  For example:  <strong>mongo://host/db/collection/?(tag == ‘java’ || tag == ‘JSON’) &amp;&amp; (category == ‘Eclipse’)</strong>.  Clients will be able to specify the query as string or EMF model.  The second part of the project will be to create a processing engine that builds a MongoDB query from the EMF query model.  The result will be a DBObject that can be sent to MongoDB as a query.</p>
<p>An example use-case is as follows:  A client constructs an EMF query model.  The query model is then serialized to a string and included in a URI.  The URI is sent to a server in a HTTP GET call.  The server extracts the query string from the URI and re-builds the EMF query model.  The query model is passed to the query engine and a DBObject is returned containing a MongoDB specific query.  The DBObject is sent to MongoDB resulting in some number of DBObjects returned.  The resulting DBObjects are converted into EMF objects and returned to the client.</p>
<p>The student is expected to develop extensive unit tests for his / her code as well as end-user documentation.  Documentation will be contributed to the <a href="https://github.com/BryanHunt/mongo-emf/wiki/User-Guide">UserGuide</a> on the MongoEMF wiki.  We also anticipate that the student will become a committer on MongoEMF, and will continue to provide bug fixes and enhancements after the project is complete.</p>
<p>We consider this to be an advanced Eclipse project.  The student should already be comfortable coding in Java and developing OSGi bundles with Eclipse.  A student with working knowledge of EMF will be preferred, but you are not required to already know Xtext or MongoDB.  If you are interested in this project, I would recommend forking the MongoEMF project on GitHub and experimenting with the latest code in the master branch.  Instructions for setting up your environment can be found on the <a href="https://github.com/BryanHunt/mongo-emf/wiki/Development">Development</a> wiki page.  If you have any questions, please comment on this post.</p>
<p>This project idea will be included on the Eclipse Google Summer of Code wiki soon.</p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/bryanhunt.wordpress.com/635/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bryanhunt.wordpress.com/635/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/bryanhunt.wordpress.com/635/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bryanhunt.wordpress.com/635/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/bryanhunt.wordpress.com/635/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bryanhunt.wordpress.com/635/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/bryanhunt.wordpress.com/635/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bryanhunt.wordpress.com/635/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/bryanhunt.wordpress.com/635/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bryanhunt.wordpress.com/635/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/bryanhunt.wordpress.com/635/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bryanhunt.wordpress.com/635/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/bryanhunt.wordpress.com/635/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bryanhunt.wordpress.com/635/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=bryanhunt.wordpress.com&amp;blog=7500940&amp;post=635&amp;subd=bryanhunt&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-30T04:54:45Z</updated>
    <category term="Eclipse"/>
    <author>
      <name>Bryan Hunt</name>
    </author>
    <source>
      <id>http://bryanhunt.wordpress.com</id>
      <logo>http://0.gravatar.com/blavatar/a7c516029012cd19a7bc8c7bc87bc02a?s=96&amp;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</logo>
      <link href="http://bryanhunt.wordpress.com/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://bryanhunt.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://bryanhunt.wordpress.com/osd.xml" rel="search" title="Miles To Code Before I Sleep" type="application/opensearchdescription+xml"/>
      <link href="http://bryanhunt.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>It's all about the code.</subtitle>
      <title>Miles To Code Before I Sleep</title>
      <updated>2012-02-04T04:49:29Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-2310191777550204104.post-267638086042212524</id>
    <link href="http://eclipseo.blogspot.com/feeds/267638086042212524/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=2310191777550204104&amp;postID=267638086042212524" rel="replies" title="0 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/2310191777550204104/posts/default/267638086042212524" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/2310191777550204104/posts/default/267638086042212524" rel="self" type="application/atom+xml"/>
    <link href="http://eclipseo.blogspot.com/2012/01/eclipse-spykit-v2-available.html" rel="alternate" title="Eclipse Spykit V2 Available" type="text/html"/>
    <title>Eclipse Spykit V2 Available</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Hey Guys<br/><br/>Thanks for all your support to Eclipse Spykit V1. <br/>Having had all the information on a tabular fashion, we thought as Architects, as Designers, as Code Reviewers ... you wouldnt want to get into details straight away. You would want to start from Summary, to breakup and then to details.<br/><br/>Eclipse Spykit V2, is an attempt to present the same data as in V1 in a more pictorial manner and zoom out to provide you with the summary of Startup Information.<br/><br/>Here is the screenshot of Eclipse Spykit V2.<br/><a href="http://2.bp.blogspot.com/-Zq4sUBA_a0A/TyXzmX_tGRI/AAAAAAAAAaA/AGkxlCZlz2A/s1600/ScreenShot%2B2.JPG"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5703232343736391954" src="http://2.bp.blogspot.com/-Zq4sUBA_a0A/TyXzmX_tGRI/AAAAAAAAAaA/AGkxlCZlz2A/s320/ScreenShot%2B2.JPG" style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; cursor: hand; width: 320px; height: 116px;"/></a><br/><br/>Please visit http://code.google.com/a/eclipselabs.org/p/eclipse-spykit/<br/>Code is available for Download on SVN.<br/>Binary is available for Download on Downloads Page.<br/><br/>Looking forward to get the same response as earlier and also this time more issues and bugs and enhancements and recommendations.<br/><br/>Regards<br/>Malai<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/2310191777550204104-267638086042212524?l=eclipseo.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-30T01:36:33Z</updated>
    <published>2012-01-30T01:31:00Z</published>
    <author>
      <name>Its_Me_Malai</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/04319454473329758815</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-2310191777550204104</id>
      <category term="Installing RAP Application"/>
      <category term="DemoCamp"/>
      <category term="Scroll Panel on Compartment Figure"/>
      <category term="Toolbar to the Section"/>
      <category term="IRC Chat"/>
      <category term="EMF"/>
      <category term="Installing And developing RAP Application"/>
      <category term="Ganymede"/>
      <category term="PDE TEST"/>
      <category term="Eclipse Demo Camp"/>
      <category term="E-Core Properties"/>
      <category term="Telnet"/>
      <category term="Eclipse Forum India 2008"/>
      <category term="Eclipse Developer Camp"/>
      <category term="Eclipse UI"/>
      <category term="FTP"/>
      <category term="Remote System Explorer"/>
      <category term="vertical scrolling"/>
      <category term="GEF..."/>
      <category term="JUnit Programmatically"/>
      <category term="Eclipse Plugin Developer"/>
      <category term="Eclipse GEF"/>
      <category term="Decoration"/>
      <category term="Extension Point"/>
      <category term="Eclipse Conference"/>
      <category term="GEF Editor Image"/>
      <category term="Modelling Training"/>
      <category term="connection without overlap in gef"/>
      <category term="Horizontal to Vertical"/>
      <category term="Eclipse PDE"/>
      <category term="RCP Training"/>
      <category term="SWTBOT"/>
      <category term="ecore properties"/>
      <category term="Modelling"/>
      <category term="label Grow Vertically"/>
      <category term="Setting text to the Section"/>
      <category term="java"/>
      <category term="E-Core Properties Unleashed"/>
      <category term="unoverlap connection in gef"/>
      <category term="Print your Gef Editor"/>
      <category term="Testing Eclipse Plugins"/>
      <category term="Eclipse India Summit"/>
      <category term="UI Tester"/>
      <category term="camp"/>
      <category term="GEF"/>
      <category term="MidpointLocator"/>
      <category term="RCP"/>
      <category term="View"/>
      <category term="horizontal scrolling"/>
      <category term="Eclipse"/>
      <category term="Section Creation"/>
      <category term="Code to print your Gef Editor"/>
      <category term="Makes Label to Grow Vertically"/>
      <category term="Run JUnit Programmatically"/>
      <category term="ActionSet"/>
      <category term="Ecore"/>
      <category term="Eclipse jobs"/>
      <category term="RAP Application"/>
      <category term="ancitconsulting"/>
      <category term="Print Gef Editor"/>
      <category term="State Persistence"/>
      <category term="ContentPane"/>
      <category term="Template Feature In Ganymede Edition..."/>
      <category term="PDE"/>
      <category term="Custom splash screen templates&#x2026;"/>
      <category term="Document Partitioning in TextEditor"/>
      <category term="Adding Palette Item's In GEF..."/>
      <category term="Background Image To GEF Editor"/>
      <category term="TextHover..."/>
      <category term="unoverlap figures in gef"/>
      <category term="Developing RAP Application"/>
      <category term="Spell Check"/>
      <category term="label to Connection Line"/>
      <category term="JUnit"/>
      <category term="UI Context"/>
      <category term="Scroll Panel"/>
      <category term="Multiple ContentPane"/>
      <category term="Public Classroom"/>
      <category term="ConnectionEndpointLocator"/>
      <category term="Sphinx"/>
      <category term="Jobs"/>
      <category term="Rules of Eclipse"/>
      <category term="Community Meeting"/>
      <category term="Command"/>
      <category term="DemoCamp09"/>
      <category term="Principles of Eclipse"/>
      <category term="horizontal and vertical scrolling"/>
      <category term="Eclipse Training"/>
      <category term="Control Decoration"/>
      <category term="ANT"/>
      <category term="ancit"/>
      <category term="PDE Build"/>
      <category term="Setting Background Image"/>
      <category term="Field Decoration"/>
      <category term="E-Core"/>
      <category term="GMF"/>
      <category term="Connection in GEF"/>
      <category term="Key Binding"/>
      <category term="Eclipse IDE"/>
      <category term="DirectEditing label"/>
      <author>
        <name>Its_Me_Malai</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/04319454473329758815</uri>
      </author>
      <link href="http://eclipseo.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/2310191777550204104/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://eclipseo.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/2310191777550204104/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>This blog site is a symbol of our Passion towards Eclipse and a contribution to the Eclipse Community ... Eclipse Team, ANCiT Consulting</subtitle>
      <title>Its Eclipse in Clips ...</title>
      <updated>2012-01-30T01:36:33Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-1495223311988358528.post-2977466277912342881</id>
    <link href="http://koehnlein.blogspot.com/feeds/2977466277912342881/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=1495223311988358528&amp;postID=2977466277912342881" rel="replies" title="13 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/1495223311988358528/posts/default/2977466277912342881" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/1495223311988358528/posts/default/2977466277912342881" rel="self" type="application/atom+xml"/>
    <link href="http://koehnlein.blogspot.com/2012/01/impressions-on-gef.html" rel="alternate" title="Impressions on GEF" type="text/html"/>
    <title>Impressions on GEF</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">For the <a href="https://github.com/JanKoehnlein/Generic-Graph-View">Generic Graphical View</a> project I've been digging deep into the <a href="http://www.eclipse.org/gef/">Graphical Editing Framework</a> (GEF) lately. GEF is the base technology below almost any graphical framework in the Eclipse environment. I wanted to keep the tool stack as low as possible and have the maximum control on everything so I decided to use GEF directly. Here are my impressions.<br/><br/>I really like GEF's base architecture: The separation between Draw2D and GEF, the concepts of <span style="font-family: arial;">Tools</span>, <span style="font-family: arial;">Requests</span>, <span style="font-family: arial;">EditParts</span> and <span style="font-family: arial;">EditPolicies</span>. It helps you to find the component to change in order to implement a new feature quickly. The pictures in the GEF online help really help<br/>understanding this.<span style="font-weight: bold;"><br/></span><h4><br/></h4><h4>Pecularities<br/></h4> In some areas GEF appears to be kind of rusty. A whole bunch of relevant commercial products has been relying on it for years. Long term backward API compatibility has taken its toll. Some things definitely need a serious overhaul and often a better naming. I am very happy to hear that a 3.0 version is planned. Here is my wishlist for improvements:<br/><ul><li>Make coordinates <span style="font-family: arial;">double</span> by default. Integer coordinates often result in rendering glitches due to rounding errors and are not well suited for scaling. </li><li>Add alpha channel (transparency) support.</li><li>Revise scaling of fonts: Sometimes a label's bounds don't match its text's extend.<br/></li><li>Rename methods of the update mechanism. I am often confused about the semantics <span style="font-family: arial;">validate()</span>, <span style="font-family: arial;">invalidate()</span>, <span style="font-family: arial;">invalidateTree()</span> or <span style="font-family: arial;">revalidate()</span>.</li><li>Rectangular bounds are not well suited for round things like ellipses. Similar to that, clipping child figures only makes sense for <span style="font-family: arial;">Viewports</span> but nothing else. The need of an invisible container figure for side affixed children is really an ugly workaround.<br/></li><li>Diagram layout does not take connection labels into account.</li><li>Add support for curve connections.</li><li>The feedback figures - the surrogates when a figure is moved or resized - seem to come from a time where hardware graphics acceleration was pure luxury. If you have nested edit parts you might have to reimplement the nested figure construction twice for nicer feedback.<br/></li><li>Using a bit less inheritance and more composition would be fine.<br/></li></ul><h4><br/></h4><h4>Mutable Geometric Primitives</h4>As many other graphics frameworks, GEF code tries to create as little new objects as possible. Geometrical primitives such as points, dimensions and rectangles are therefore mutable and reused often. There are even things as a static <span style="font-family: arial;">Rectangle.SINGLETON</span> for temporary calculation. This pretty much reminds me of good old C++. I am not sure whether such optimization is still necessary.  It results in pretty unreadable code:<br/><pre>Point p = figure.getLocation(); <br/>// p is the location in local coordinates<br/>p.getParent().transformToParent(p);<br/>// now p is in parent coordinates<br/>Point q = p.add(p).scale(2):<br/>// this will also modify p<br/></pre>You see: As the semantics of the variable changes, it is no surprise you cannot find a more expressive name than <span style="font-family: arial;">p</span>. In addition, you have to be very careful if you are dealing with a reference or a copy. Modifying a <span style="font-family: arial;">Translatable</span> (once again  bad name, as <span style="font-family: arial;">Dimension</span> also implements this interface) directly can also circumvent an event mechanism. This is really error prone. I'd strongly advise to introduce immutable primitives.<br/><h4><br/></h4><h4>Coordinate Transformations<br/></h4>The way transformation between local, global and parent coordinates are handled is somehow unsuggestive. I've used various 2D and 3D scenegraph-based frameworks but I never got as confused with coordinates as in GEF. For example, if you have a <span style="font-family: arial;">ScalableLayeredPane</span> showing some scaled content, its <span style="font-family: arial;">translateToAbsolute(Point)</span> method will not take the scaling into account while <span style="font-family: arial;">translateToParent(Point)</span> will.<br/><h4><br/></h4><h4>Some Hints<br/></h4> Starting with GEF from zero is hard. You will likely spend a serious amount of time debugging why your diagram doesn't show anything at all. Better copy some basic setup from one of the GEF examples. Here are my favorite pitfalls:<br/><ul><li>missing minimum size on figure - figure does not show up at all in some layouts</li><li>wrong coordinate system - figures don't appear where they should, somtimes in nirvana<br/></li><li>wrong layout manager, e.g. a plain <span style="font-family: arial;">XYLayout</span> on a <span style="font-family: arial;">FreeformFigure</span> - results in endless layout loop</li><li>reusing a geometry element instead of making a copy - completely unpredictable editor behavior<br/></li><li>the default <span style="font-family: arial;">ChangeBoundsRequest</span> does not take local coordinate systems into account</li></ul>For better diagram layout algorithms the <a href="http://trac.rtsys.informatik.uni-kiel.de/trac/kieler/wiki/WikiStart">KIELER project</a> offers a good choice.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/1495223311988358528-2977466277912342881?l=koehnlein.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-29T15:46:02Z</updated>
    <published>2012-01-18T18:30:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="Graphics"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="GEF"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Visualisation"/>
    <author>
      <name>Jan Köhnlein</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/02520748795681285494</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-1495223311988358528</id>
      <category term="MDSD conference oAW MDA"/>
      <category term="Ecore"/>
      <category term="MacOSX"/>
      <category term="ESE"/>
      <category term="MDSD MDA conference oAW Cambridge"/>
      <category term="JUG"/>
      <category term="Talk"/>
      <category term="Visualisation"/>
      <category term="EMF Index"/>
      <category term="Eclipse Xtext DSL"/>
      <category term="Webinar"/>
      <category term="GMFTools"/>
      <category term="EMF"/>
      <category term="Railroad Diagram"/>
      <category term="Xtend"/>
      <category term="Modeling"/>
      <category term="Eclipse Summit Europe"/>
      <category term="CodeGeneration"/>
      <category term="conference"/>
      <category term="ruhrjug"/>
      <category term="Java"/>
      <category term="Refactoring"/>
      <category term="GEF"/>
      <category term="Cambridge"/>
      <category term="Xbase"/>
      <category term="Xtext"/>
      <category term="iPhone"/>
      <category term="MDSD"/>
      <category term="Languages"/>
      <category term="JAX"/>
      <category term="Graphics"/>
      <category term="git"/>
      <category term="SharedEditingDomain"/>
      <category term="DSL"/>
      <category term="Eclipse"/>
      <category term="Expressions"/>
      <category term="GMF"/>
      <category term="Proposal"/>
      <category term="Interpreter"/>
      <category term="EMFatic"/>
      <category term="Android"/>
      <category term="NASA"/>
      <category term="bugzilla"/>
      <category term="EclipseCon"/>
      <author>
        <name>Jan Köhnlein</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/02520748795681285494</uri>
      </author>
      <link href="http://koehnlein.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/1495223311988358528/posts/default/-/Eclipse" rel="self" type="application/atom+xml"/>
      <link href="http://koehnlein.blogspot.com/search/label/Eclipse" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/1495223311988358528/posts/default/-/Eclipse/-/Eclipse?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>Jan's Blog</title>
      <updated>2012-01-31T13:16:46Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-7116704192081983568.post-7261531182909285288</id>
    <link href="http://eclipseandjazz.blogspot.com/feeds/7261531182909285288/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://eclipseandjazz.blogspot.com/2012/01/faster-java-search-using-pre-built.html#comment-form" rel="replies" title="0 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/7116704192081983568/posts/default/7261531182909285288" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/7116704192081983568/posts/default/7261531182909285288" rel="self" type="application/atom+xml"/>
    <link href="http://eclipseandjazz.blogspot.com/2012/01/faster-java-search-using-pre-built.html" rel="alternate" title="Faster Java search using pre-built indexes with Eclipse JDT" type="text/html"/>
    <title>Faster Java search using pre-built indexes with Eclipse JDT</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div dir="ltr" style="text-align: left;">JDT indexes referenced libraries (or JARs) in your projects for use in the Java search. However, in most cases these libraries seldom change, and the indexing may be costly and take time when you invoke search for the first time after adding the JAR on the buildpath.<br/><br/>From 3.8M5 onwards, you can avoid this redundant indexing by providing a pre-built index for each classpath entry in the classpath container. This feature was recently implemented in <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=356620">bug 356620</a>.<br/><br/>So how do you generate the indexes in the first place?<br/>1. Create the JAR<br/>2. Go to Run Configurations&gt;Eclipse Application. Give a name to the configuration, viz. indexer, and in 'Main' tab choose Run an application, and use the list to select org.eclipse.jdt.core.JavaIndexer<br/><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-qNoS6GY4guk/TyAP_ObmCFI/AAAAAAAACKw/akZjXdPVJDg/s1600/indexer1.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="279" src="http://2.bp.blogspot.com/-qNoS6GY4guk/TyAP_ObmCFI/AAAAAAAACKw/akZjXdPVJDg/s400/indexer1.jpg" width="400"/></a></div><br/>3. Go to the 'Arguments' tab and use the arguments -option &lt;indexFileLocation&gt; &lt;jarFileLocation&gt; in addition to the existing ones.<br/><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-7CSr_vJFr3g/TyAUQfHTTUI/AAAAAAAACK4/rp-1YZJp14g/s1600/indexer2.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="92" src="http://3.bp.blogspot.com/-7CSr_vJFr3g/TyAUQfHTTUI/AAAAAAAACK4/rp-1YZJp14g/s320/indexer2.jpg" width="320"/></a></div><div class="separator" style="clear: both; text-align: center;"><br/></div><div class="separator" style="clear: both; text-align: left;">4. The index file will be generated at the specified location.</div><div class="separator" style="clear: both; text-align: left;"><br/></div><div class="separator" style="clear: both; text-align: left;">Now when the JAR in question is being added to the build path of a project, the classpath containers can add the index location to classpath, which will look as follows:</div><div class="separator" style="clear: both; text-align: left;"><br/></div><div class="separator" style="clear: both; text-align: left;"/><div class="separator" style="clear: both;"><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">&lt;classpathentry kind="lib" path="C:/Users/IBM_ADMIN/Desktop/TestIndex.jar"&gt;</span></div><div class="separator" style="clear: both;"><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>&lt;attributes&gt;</span></div><div class="separator" style="clear: both;"><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;">  </span>&lt;attribute name="javadoc_location" value="file://C://abc"/&gt;</span></div><div class="separator" style="clear: both;"><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>&lt;/attributes&gt;</span></div><div class="separator" style="clear: both;"><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;">&lt;/classpathentry&gt;</span></div><div class="separator" style="clear: both;"><span style="font-family: 'Courier New', Courier, monospace; font-size: x-small;"><br/></span></div><div class="separator" style="clear: both;"><span style="font-family: Georgia, 'Times New Roman', serif;">Voila! JDT will no longer index the JAR and even the first search will be lightning fast!</span></div><br/><i>Note: This feature is mainly intended for plug-ins that implement their own classpath container, not for the end user.</i></div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/7116704192081983568-7261531182909285288?l=eclipseandjazz.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-28T13:18:32Z</updated>
    <published>2012-01-26T12:30:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="planeteclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="classpath"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="index"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="search"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="jdt"/>
    <author>
      <name>Aupsy-The cOOlest One!!</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/00978910362796816675</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-7116704192081983568</id>
      <category term="execution environment"/>
      <category term="jazz"/>
      <category term="rational"/>
      <category term="eclipsecon"/>
      <category term="fields"/>
      <category term="java 7"/>
      <category term="static analysis"/>
      <category term="rational rhapsody"/>
      <category term="collaboration"/>
      <category term="jazz.net"/>
      <category term="ADT"/>
      <category term="annotations"/>
      <category term="classpath"/>
      <category term="PDE"/>
      <category term="preferences"/>
      <category term="jdt"/>
      <category term="indigo"/>
      <category term="null"/>
      <category term="visual studio"/>
      <category term="rational team concert"/>
      <category term="android"/>
      <category term="ibm"/>
      <category term="mobile development"/>
      <category term="agile"/>
      <category term="plugin"/>
      <category term="planeteclipse"/>
      <category term="preferenceTransfer"/>
      <category term="diamond"/>
      <category term="Innovate"/>
      <category term="juno"/>
      <category term="search"/>
      <category term="compliance"/>
      <category term="index"/>
      <category term="application lifecycle management"/>
      <category term="phonegap"/>
      <category term="modeling"/>
      <category term="CLM"/>
      <category term="eclipse"/>
      <category term="eclipseday"/>
      <category term="rational ibm team concert phonegap android agile mobile software"/>
      <category term="API tooling"/>
      <category term="university"/>
      <category term="jazzhub"/>
      <category term="M5"/>
      <author>
        <name>Aupsy-The cOOlest One!!</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/00978910362796816675</uri>
      </author>
      <link href="http://eclipseandjazz.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/7116704192081983568/posts/default/-/planeteclipse" rel="self" type="application/atom+xml"/>
      <link href="http://eclipseandjazz.blogspot.com/search/label/planeteclipse" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>This blog is about the open world of Eclipse, Jazz and related technologies. Its about new stuff coming your way, old stuff you didn't know existed or simply stuff that we talk about as we enter a new era in software development. All this, straight from the horse's mouth!</subtitle>
      <title>Eclipse, Java and all that JAZZ!</title>
      <updated>2012-02-01T09:14:45Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://eclipsehowl.wordpress.com/?p=776</id>
    <link href="http://eclipsehowl.wordpress.com/2012/01/28/how-to-use-vex-as-a-widget-article-in-eclipse-magazine/" rel="alternate" type="text/html"/>
    <title>How to use Vex as a Widget – Article in Eclipse Magazine</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Florian’s article on how to use Vex as an editor widget has just been published in the German Eclipse Magazin 2.12. In a sample dialog Vex is used to enter Wiki text in the WYSIWYG way. Vex is a pure SWT widget and doesn’t require any web browser. It’s an alternative to the solution FCKEditor [...]<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=eclipsehowl.wordpress.com&amp;blog=11064764&amp;post=776&amp;subd=eclipsehowl&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><img alt="" class="alignnone size-full wp-image-777" height="225" src="http://eclipsehowl.files.wordpress.com/2012/01/neues_vom_vexxer1.jpg?w=450&amp;h=225" title="Neues vom Vexxer" width="450"/></p>
<p>Florian’s article on how to use <a href="http://eclipse.org/vex/">Vex</a> as an editor widget has just been published in the German <a href="http://it-republik.de/jaxenter/eclipse-magazin-ausgaben/Javascript-%26-Eclipse-000486.html">Eclipse Magazin 2.12</a>. In a <a href="https://github.com/ftl/vex-examples">sample dialog</a> Vex is used to enter Wiki text in the WYSIWYG way.</p>
<p>Vex is a pure SWT widget and doesn’t require any web browser. It’s an alternative to the solution <a href="http://www.thomaskratz.name/2012/01/richt-text-editor-for-eclipseswt.html">FCKEditor in a browser widget which Thomas Kratz recently described in his post</a>.</p>
<p>Vex is an acronym for <em>Visual Editor for XML</em>. With Florian’s WYSIWYG Wiki editor we have to rename Vex into Vest: <em>Visual Editor for structured text</em>. <img alt=";-)" class="wp-smiley" src="http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif"/> </p>
<p><a href="http://flattr.com/thing/52042/Eclipse-Howl" target="_blank"><br/>
<img alt="Flattr this" border="0" src="http://api.flattr.com/button/flattr-badge-large.png" title="Flattr this"/></a></p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/eclipsehowl.wordpress.com/776/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/eclipsehowl.wordpress.com/776/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/eclipsehowl.wordpress.com/776/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/eclipsehowl.wordpress.com/776/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/eclipsehowl.wordpress.com/776/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/eclipsehowl.wordpress.com/776/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/eclipsehowl.wordpress.com/776/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/eclipsehowl.wordpress.com/776/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/eclipsehowl.wordpress.com/776/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/eclipsehowl.wordpress.com/776/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/eclipsehowl.wordpress.com/776/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/eclipsehowl.wordpress.com/776/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/eclipsehowl.wordpress.com/776/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/eclipsehowl.wordpress.com/776/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=eclipsehowl.wordpress.com&amp;blog=11064764&amp;post=776&amp;subd=eclipsehowl&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-28T08:38:53Z</updated>
    <category term="Eclipse"/>
    <category term="Vex"/>
    <author>
      <name>howlger</name>
    </author>
    <source>
      <id>http://eclipsehowl.wordpress.com</id>
      <logo>http://1.gravatar.com/blavatar/563f1f0fd9329430c05856b0cc041857?s=96&amp;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</logo>
      <link href="http://eclipsehowl.wordpress.com/category/eclipse/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://eclipsehowl.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://eclipsehowl.wordpress.com/osd.xml" rel="search" title="eclipse howl" type="application/opensearchdescription+xml"/>
      <link href="http://eclipsehowl.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Lets howl at the things in the Eclipse universe and at software development in general</subtitle>
      <title>eclipse howl » Eclipse</title>
      <updated>2012-01-28T08:39:21Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://ekkescorner.wordpress.com/?p=3288</id>
    <link href="http://ekkescorner.wordpress.com/2012/01/27/mobile-development-my-next-sessions-events/" rel="alternate" type="text/html"/>
    <title>mobile development – my next sessions + events</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">here’s an overview of my upcoming sessions and events and I would be glad to meet you there: M-Days – Frankfurt, 2012-02-01: Location Based Services At the Mobile Days in Frankfurt I’m talking about Location Based Services. In many of my customer projects I’m using Location Based Services, have integrated Maps, track GPS etc. I’ll [...]<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=ekkescorner.wordpress.com&amp;blog=7691743&amp;post=3288&amp;subd=ekkescorner&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>here’s an overview of my upcoming sessions and events and I would be glad to meet you there:</p>
<h1>M-Days – Frankfurt, 2012-02-01: Location Based Services</h1>
<p><a href="http://t.co/sWNrqBOp"><img alt="" class="alignnone  wp-image-3293" height="200" src="http://ekkescorner.files.wordpress.com/2012/01/m_days_logo.jpg?w=240&amp;h=200" title="M_Days_logo" width="240"/></a></p>
<p>At the Mobile Days in Frankfurt I’m talking about Location Based Services. In many of my customer projects I’m using Location Based Services, have integrated Maps, track GPS etc. I’ll talk about good practices, tips and tricks and demonstrate some of my work. You’ll find me at Developer Stage 1 on Wednesday 2012-02-01 at 13:00.</p>
<p>In the night I’ll also attend the Mobile Media Night <img alt=";-)" class="wp-smiley" src="http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif"/> </p>
<p>At M-Days I’ll first time use my new <a href="http://camholder.org" target="_blank">Camholder</a> from Heiko Behrens (@HBehrens) – will later blog about my experiences with heikos awesome new product.</p>
<h1>BBDevCon Europe – Amsterdam, 2012-02-08: SuperApps</h1>
<p><a href="http://ekkescorner.files.wordpress.com/2012/01/devcon_banner_300x100_speaker.jpg"><img alt="" class="alignnone size-full wp-image-3295" height="100" src="http://ekkescorner.files.wordpress.com/2012/01/devcon_banner_300x100_speaker.jpg" title="DevCon_Banner_300x100_Speaker" width="300"/></a></p>
<p>Only some days later I’ll speak at BlackBerry Developer Conference about developing Super Apps. I’m happy to meet some friends again and looking forward to get the newest informations about BB10 – the future OS for BlackBerry.</p>
<h1>Mobile Developer Conference – HH, 2012-02-15: Push Services</h1>
<p><a href="http://ekkescorner.files.wordpress.com/2012/01/mdc-2012_speaker.jpg"><img alt="" class="alignnone size-full wp-image-3283" height="120" src="http://ekkescorner.files.wordpress.com/2012/01/mdc-2012_speaker.jpg" title="MDC 2012_Speaker" width="200"/></a></p>
<p>More and more mobile applications are using Push Services. Unfortunately there’s no common API and so you have to know the differences and what’s possible on the different platforms. I’ll talk about PushServices for Apple, Google, Microsoft and RIM.</p>
<h1>Mobile Tech Con 2012 – Munich 2012 – 2012-03-29: Power Workshop Cascades</h1>
<p><a href="http://mobiletechcon.de/2012spring/workshop/#session-20650"><img alt="" class="alignnone size-full wp-image-3284" height="128" src="http://ekkescorner.files.wordpress.com/2012/01/mtc2011_se_button_speaker.gif" title="MTC2011_SE_Button_Speaker" width="128"/></a></p>
<p>Next MobileTechCon is in Munich – not far from Rosenheim, where I work and live. I’ll present a full-day <a href="http://mobiletechcon.de/2012spring/workshop/#session-20650" target="_blank">Power Workshop about the new UI Framework Cascades</a> from RIM. With Cascades you can write great apps in a short timeframe with awesome animations. Designers and Developers can work hand-in-hand: a PlugIn for Photoshop allows you to easy move graphical work and drag it into your QML Editor. Cascades is one of te reasons why I as a developer am sure, that RIM will came back in 2012. Using Cascades you can develop Applications for PlayBook 2.x and also upcoming BB10.</p>
<h1>EclipseCon America 2012 <img alt=":(" class="wp-smiley" src="http://s0.wp.com/wp-includes/images/smilies/icon_sad.gif"/> </h1>
<p><a href="http://www.eclipsecon.org/2012/"><img alt="" class="alignnone  wp-image-3297" height="184" src="http://ekkescorner.files.wordpress.com/2012/01/econ_icon512x512.jpg?w=184&amp;h=184" title="econ_icon512x512" width="184"/></a></p>
<p>Unfortunately this time I cannot travel to EclipseCon America, because exactly same week there’s MobileTechCon in Munich.</p>
<p>But of course I’m <a href="https://ekkesapps.wordpress.com/blackberry-apps/eclipsecon-2011-conference-app/" target="_blank">developing the BlackBerry Conference App for EclipseCon 2012 </a>and hope that the timing is better next year.</p>
<p><a href="https://ekkesapps.wordpress.com/blackberry-apps/eclipsecon-2011-conference-app/"><img alt="" class="alignnone" height="509" src="http://ekkescorner.files.wordpress.com/2011/11/ece02.png?w=387&amp;h=509" title="conference2go" width="387"/></a></p>
<p>—————————————————————————————————————————</p>
<p><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.en"><img alt="" class="size-full wp-image-189 alignnone" height="20" src="http://redvoodo.files.wordpress.com/2011/05/cc-license-icons.png" title="cc-license BY-NC-SA 3.0" width="60"/></a></p>
<p><em>(c) 2012 <a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.en" title="Creative Commons License 3.0">Creative Commons License 3.0 (BY-NC-SA)</a> by  <a href="http://en.gravatar.com/ekkescorner" target="_blank" title="the author">ekkescorner</a> </em></p>
<br/>Filed under: <a href="http://ekkescorner.wordpress.com/category/blackberry/">Blackberry</a>, <a href="http://ekkescorner.wordpress.com/category/eclipsecon/">EclipseCon</a>, <a href="http://ekkescorner.wordpress.com/category/mobile/">mobile</a>  <a href="http://feeds.wordpress.com/1.0/gocomments/ekkescorner.wordpress.com/3288/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ekkescorner.wordpress.com/3288/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/ekkescorner.wordpress.com/3288/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ekkescorner.wordpress.com/3288/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/ekkescorner.wordpress.com/3288/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ekkescorner.wordpress.com/3288/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/ekkescorner.wordpress.com/3288/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ekkescorner.wordpress.com/3288/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/ekkescorner.wordpress.com/3288/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ekkescorner.wordpress.com/3288/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/ekkescorner.wordpress.com/3288/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ekkescorner.wordpress.com/3288/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/ekkescorner.wordpress.com/3288/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ekkescorner.wordpress.com/3288/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=ekkescorner.wordpress.com&amp;blog=7691743&amp;post=3288&amp;subd=ekkescorner&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-27T17:43:46Z</updated>
    <category term="Blackberry"/>
    <category term="EclipseCon"/>
    <category term="mobile"/><geo:lat xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">47.855939</geo:lat><geo:long xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">12.127960</geo:long>
    <author>
      <name>ekkescorner</name>
    </author>
    <source>
      <id>http://ekkescorner.wordpress.com</id>
      <logo>http://0.gravatar.com/blavatar/8582db0cc3f2a753d1517f8516a88ece?s=96&amp;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</logo>
      <link href="http://ekkescorner.wordpress.com/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://ekkescorner.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://ekkescorner.wordpress.com/osd.xml" rel="search" title="ekkes-corner: eclipse | osgi | mdsd | erp | mobile" type="application/opensearchdescription+xml"/>
      <link href="http://ekkescorner.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>open source and software architecture</subtitle>
      <title>ekkes-corner: eclipse | osgi | mdsd | erp | mobile</title>
      <updated>2012-02-04T04:50:34Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-14521551.post-6090395781931731760</id>
    <link href="http://birtworld.blogspot.com/feeds/6090395781931731760/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=14521551&amp;postID=6090395781931731760" rel="replies" title="2 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/14521551/posts/default/6090395781931731760" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/14521551/posts/default/6090395781931731760" rel="self" type="application/atom+xml"/>
    <link href="http://birtworld.blogspot.com/2012/01/birt-runtime-addition.html" rel="alternate" title="BIRT Runtime Addition" type="text/html"/>
    <title>BIRT Runtime Addition</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">As part of the 3.7 release BIRT now uses a BIRT POJO runtime.  This change was described in the <a href="http://www.eclipse.org/birt/phoenix/project/notable3.7.php">BIRT 3.7 New and Notable</a>.  If you are using a version of BIRT prior to 3.7 be sure to check out the <a href="http://wiki.eclipse.org/Birt_3.7_Migration_Guide">Migration Guide</a>.  As part of the 3.7.2 release of BIRT which will be released in a couple of weeks, the team has decided to release a second runtime that uses the OSGi runtime.  This new download will function similar to the BIRT runtime prior to BIRT 3.7 and is available on the full downloads page.  You can try out the 3.7.2 release candidate version of this download by selecting the release candidate on the <a href="http://download.eclipse.org/birt/downloads/build_list.php">recent builds page</a>.  <br/><br/><a href="http://3.bp.blogspot.com/-P3S8kkSbBJw/TyLJWacdv1I/AAAAAAAAAcA/BX83MWY4mso/s1600/osgibirtruntime.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5702341465097486162" src="http://3.bp.blogspot.com/-P3S8kkSbBJw/TyLJWacdv1I/AAAAAAAAAcA/BX83MWY4mso/s400/osgibirtruntime.png" style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; cursor: hand; width: 400px; height: 199px;"/></a><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/14521551-6090395781931731760?l=birtworld.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-27T15:57:33Z</updated>
    <published>2012-01-27T15:54:00Z</published>
    <author>
      <name>Jason Weathersby</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/13114050439576571984</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-14521551</id>
      <category term="Charts"/>
      <category term="format"/>
      <category term="scripts"/>
      <category term="Fonts"/>
      <author>
        <name>Scott Rosenbaum</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/17441053019711310813</uri>
      </author>
      <link href="http://birtworld.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/14521551/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://birtworld.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/14521551/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>The Eclipse Business Intelligence and Reporting Tools project is an open-source project focused on the development and delivery of framework tools for reporting and business intelligence within the Eclipse platform.</subtitle>
      <title>BIRT World</title>
      <updated>2012-01-31T12:24:13Z</updated>
    </source>
  </entry>

  <entry>
    <id>https://community.jboss.org/community/tools/blog/2012/01/27/getting-started-with-jboss-developer-studio-50m5-and-jboss-central--its-not-just-a-welcome-screen</id>
    <link href="https://community.jboss.org/community/tools/blog/2012/01/27/getting-started-with-jboss-developer-studio-50m5-and-jboss-central--its-not-just-a-welcome-screen" rel="alternate" type="text/html"/>
    <title>Getting Started with JBoss Developer Studio 5.0.M5 and JBoss Central - It's Not Just a Welcome Screen</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div class="jive-rendered-content"><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">One of the great advantages of working with open source software is the freedom of choice that it provides you. You aren't locked in by vendors or arcane licenses, you can choose the combinations of components that you want to work with. In doing so, however, you will likely have to invest time and effort in integrating these components to work together. Accomplishing these integration tasks can be difficult.</span></p><p style="height: 8pt; padding: 0px;"><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"> </span> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">But, luckily, with JBoss Developer Studio, this integration work is already done for you. In JBoss Developer Studio, you have access to a rich JEE development environment that leverages JBoss technologies. JBoss Developer Studio provides graphical editors, integrations with source control systems, and  the ability to configure servers and deploy applications to them, all from inside an eclipse-based environment. </span></p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"><br/></span></p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">In the past, managing all these integrations required you to use multiple tools and actions. You could, however, do all these tasks without shutting down or leaving JBoss Developer Studio. That’s an important point to keep in mind as one of the goals of an IDE is to provide you with an environment in which you can perform development without having to exit the IDE to perform other common tasks such as staying up-to-date with new developments affecting the software with which you are working.</span></p><p style="height: 8pt; padding: 0px;"> </p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">What was missing was a single utility to help you to access and stay up-to-date with JBoss technologies, news, examples and manage the specific plugins that you choose to install and use with JBoss Developer Studio. </span></p><p style="height: 8pt; padding: 0px;"><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"> </span> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">The recent M5 ("milestone 5") build for JBoss Developer Studio 5 includes an answer to this problem: </span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: italic;">JBoss Central.  </span></p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: italic;"><br/></span></p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: italic;">(Note: This post is written from a Developer Studio perspective. JBoss Central, however, is also included in JBoss Tools.)</span></p><p style="height: 8pt; padding: 0px;"><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"> </span> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">By default, JBoss Central is the first view that is displayed when you open JBoss Developer Studio. (OK, it’s really the second, after you get past a welcome view that has only one option - JBoss Central). But, JBoss Central is more than a welcome screen, it is a full featured "center of gravity" to assist you in both getting started with JBoss Developer Studio and in continuing and expanding your use of JBoss Developer Studio.</span></p><p style="height: 8pt; padding: 0px;"><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"> </span> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">How is JBoss Central different from a welcome screen? In three important ways:</span></p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"><br/></span></p><p style="height: 8pt; padding: 0px;"> </p><ul><li><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">First, JBoss Central is </span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: bold; font-style: normal;">dynamic</span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">, not </span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: bold; font-style: normal;">static</span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">. You can receive updated news and blog content automatically through JBoss Central. In addition to informational content changes, new quickstart examples, and new wizards to create applications are pushed to you without you having to manually update or reconfigure JBoss Developer Studio. </span></li></ul><p> <span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"> <br/></span></p><ul><li><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">Second, JBoss Central is </span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: bold; font-style: normal;">active</span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">, not </span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: bold; font-style: normal;">passive</span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">. JBoss Central can perform administrative tasks for you such as resolving dependencies and installing necessary plugins and runtimes.  </span></li></ul><p style="height: 8pt; padding: 0px;"><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"> </span> </p><ul><li><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">And third, unlike a welcome screen that you might only use once and then discard, JBoss Central is a </span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: bold; font-style: normal;">destination</span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">. It’s a place that you will return to frequently as you use JBoss Developer Studio to develop, debug, deploy, and test your applications.</span></li></ul><p style="height: 8pt; padding: 0px;"><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"> </span> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">Let’s take a quick tour of JBoss Central. JBoss Central is divided into two tabs: Getting Started and Software/Update</span></p><p style="height: 8pt; padding: 0px;"> </p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">The</span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: bold; font-style: normal;"> Getting Started</span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"> tab looks like this:</span></p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"><br/></span></p><p><a href="https://lh3.googleusercontent.com/iwD9-JXqXhVxx0JmlOvj4pik0N2-BFCi3faOhPB2BRJ9hIT19q-j_ZAvpgisgkQO4y0KugqEH8fR7wvaeVBOWRhkTmQsMFoURlIxD5-dUqcZiSFfgvE"><img height="352px;" src="https://lh3.googleusercontent.com/iwD9-JXqXhVxx0JmlOvj4pik0N2-BFCi3faOhPB2BRJ9hIT19q-j_ZAvpgisgkQO4y0KugqEH8fR7wvaeVBOWRhkTmQsMFoURlIxD5-dUqcZiSFfgvE" width="800px;"/></a></p><p style="height: 8pt; padding: 0px;"> </p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">and includes these options:</span></p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"><br/></span></p><p style="height: 8pt; padding: 0px;"> </p><ul><li><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">Create Projects - These wizards walk you through creating new projects. </span></li><li><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">Project Examples - The “quickstarts” are fully functioning applications. The goals of the quickstarts are to both illustrate technologies and features, and to provide you with working code that you can expand on to build your own applications. </span></li><li><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">Settings - These control how JBoss Central itself functions. Right now, there’s only one option here; whether JBoss Central is shown at startup. </span></li><li><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">News - This is a feature that can save you some time, as it enables you to access news from within JBDS and not have to access an external news reader.</span></li><li><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">Blogs - This serves as a good compliment to the News feature in that the combination of the information from these features can keep you up-to-date on new developments related to JBoss projects and technologies.</span></li></ul><p style="height: 8pt; padding: 0px;"> </p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">The other tab</span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: bold; font-style: normal;">, Software/Update,</span><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"> looks like this:</span></p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"><br/></span></p><p><a href="https://lh3.googleusercontent.com/nAFsrYUjaytTwHx3obFfLzCuC-jvhffXcdvjbQbIc8OpZvB2bf1XHLK5tquI3qzoxg-BSvy9vRz400-wHj69dHKpn7gFKgTn8XUL1yaAdua3tbUYhtc"><img height="378px;" src="https://lh3.googleusercontent.com/nAFsrYUjaytTwHx3obFfLzCuC-jvhffXcdvjbQbIc8OpZvB2bf1XHLK5tquI3qzoxg-BSvy9vRz400-wHj69dHKpn7gFKgTn8XUL1yaAdua3tbUYhtc" width="800px;"/></a></p><p style="height: 8pt; padding: 0px;"> </p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">As its name implies, Software/Update enables you to install features into JBoss Developer Studio and then update them. By default, JBoss Developer Studio, is configured to enable you to install and update features for source control, testing, and web development. It’s worth noting that while Eclipse does already include features to install software and keep it up-to-date, Software/Update is a more visual and easier to use.</span></p><p style="height: 8pt; padding: 0px;"> </p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">Now, let’s take a more detailed look at one way JBoss Central is more than a welcome screen. We’ll start by installing one of the quickstarts. We’ll use the simplest quickstart, helloworld:</span></p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"><br/></span></p><p><a href="https://lh6.googleusercontent.com/DOM0wVUomNmsPmoTGRlSU9jsYF-Z2SBj6OPsLGOTjWlnBcyc3uxqffIrSzMLUxgCKeSjKkwdMtSqo_zzSwAdmQgppdvBdEtYXG6en7enUuMoBGLZ4Qc"><img height="381px;" src="https://lh6.googleusercontent.com/DOM0wVUomNmsPmoTGRlSU9jsYF-Z2SBj6OPsLGOTjWlnBcyc3uxqffIrSzMLUxgCKeSjKkwdMtSqo_zzSwAdmQgppdvBdEtYXG6en7enUuMoBGLZ4Qc" width="800px;"/></a></p><p style="height: 8pt; padding: 0px;"> </p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"><span>And, here’s where JBoss Central becomes an active helper, and not a passive bystander. Instead of failing to install the quickstart because of the lack of an installed server runtime, JBoss Central determines which runtime is missing, and will download and install it for us. Note that these quickstarts illustrate features suported by JBoss’ new AS7 server (</span><a class="jive-link-external-small" href="http://www.jboss.org/as7" target="_blank">http://www.jboss.org/as7</a><span>).</span></span></p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"><br/></span></p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">So, let’s be lazy and let JBoss Central downlaod and install the server for us:</span></p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"><br/></span></p><p><a href="https://lh6.googleusercontent.com/7UaQcaMc8yRxRsUWAhB1QZmv-G9I2wrMmOxqeBF9efFnZDqEIHxW8Cmq6MesOumsSpKvW7Hch2fJctSflqrkOWTl8hnrIPmOy1XBTa3JccHjusWs4VQ"><img height="378px;" src="https://lh6.googleusercontent.com/7UaQcaMc8yRxRsUWAhB1QZmv-G9I2wrMmOxqeBF9efFnZDqEIHxW8Cmq6MesOumsSpKvW7Hch2fJctSflqrkOWTl8hnrIPmOy1XBTa3JccHjusWs4VQ" width="800px;"/></a></p><p style="height: 8pt; padding: 0px;"> </p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">Now, it’s a simple matter to deploy and run the quickstart:</span></p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"><br/></span></p><p><a href="https://lh5.googleusercontent.com/yUiuGrzpKSDEmAMvHqk4JSShmOPq4RtCMETjwndOP8463m4zkiGyEB2lvI42x7RmdG_csHu_eJL_oVjX7ERzu2Du71ODyvlqmo8kViTYz-pLGYMXc5o"><img height="380px;" src="https://lh5.googleusercontent.com/yUiuGrzpKSDEmAMvHqk4JSShmOPq4RtCMETjwndOP8463m4zkiGyEB2lvI42x7RmdG_csHu_eJL_oVjX7ERzu2Du71ODyvlqmo8kViTYz-pLGYMXc5o" width="800px;"/></a></p><p style="height: 8pt; padding: 0px;"> </p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">We’ll do it through Maven:</span></p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"><br/></span></p><p><a href="https://lh5.googleusercontent.com/eQPkE6cWtE033n1r9JWP84MEkPBUvnpQDE61kGCgV7VoK-p4xiZLeE4G3Z865OVOHqiZcltRwOWSiCAgv23o_mMcBFLB2PIzewpOzsym8J0cd0oZq4U"><img height="450px;" src="https://lh5.googleusercontent.com/eQPkE6cWtE033n1r9JWP84MEkPBUvnpQDE61kGCgV7VoK-p4xiZLeE4G3Z865OVOHqiZcltRwOWSiCAgv23o_mMcBFLB2PIzewpOzsym8J0cd0oZq4U" width="800px;"/></a></p><p style="height: 8pt; padding: 0px;"> </p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">Once the quickstart is installed, we start the server, deploy the quickstart, and, in the tradition of all helloworld applications, here’s the minimalist output:</span></p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"><br/></span></p><p><a href="https://lh6.googleusercontent.com/Rd-cJ7LNGjYwuFzzEgCEM5tkmUFbIw4TsrHYbwaFK5kdLfrwJY18SbehqIVBo6onsMou7zWICFS3YzHGpXVQWTyDBSR3Pnr0xtiD-R-HO007OhbD2Og"><img height="405px;" src="https://lh6.googleusercontent.com/Rd-cJ7LNGjYwuFzzEgCEM5tkmUFbIw4TsrHYbwaFK5kdLfrwJY18SbehqIVBo6onsMou7zWICFS3YzHGpXVQWTyDBSR3Pnr0xtiD-R-HO007OhbD2Og" width="800px;"/></a></p><p style="height: 8pt; padding: 0px;"> </p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;">To sum it up, while it’s still a work in progress, JBoss Central is more than a welcome screen or an “on-ramp,” it’s an active and dynamic center of gravity for JBoss Developer Studio and a place that you will want to return to again and again as you use JBoss Developer Studio.</span></p><p style="height: 8pt; padding: 0px;"><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: normal; font-style: normal;"> </span> </p><p><span style="font-size: 15px; font-family: Arial; color: #000000; font-weight: bold; font-style: normal;">References:</span></p><p style="height: 8pt; padding: 0px;"> </p><p><a class="jive-link-external-small" href="http://docs.jboss.org/tools/whatsnew/central/central-news-1.0.0.M4.html"><span style="font-size: 15px; font-family: Arial; color: #000099; font-weight: normal; font-style: normal; text-decoration: underline;">http://docs.jboss.org/tools/whatsnew/central/central-news-1.0.0.M4.html</span></a></p><p style="height: 8pt; padding: 0px;"> </p><p><a class="jive-link-wiki-small" href="https://community.jboss.org/docs/DOC-17371"><span style="font-size: 15px; font-family: Arial; color: #000099; font-weight: normal; font-style: normal; text-decoration: underline;">https://community.jboss.org/wiki/EasyPluginInstallationFromJBossCentral</span></a></p><p style="height: 8pt; padding: 0px;"> </p><p><span style="font-size: 12pt;"><a class="jive-link-blog-small" href="https://community.jboss.org/community/tools/blog/2011/12/18/learn-java-ee-6-quickly-using-jboss-central">https://community.jboss.org/community/tools/blog/2011/12/18/learn-java-ee-6-quickly-using-jboss-central</a></span></p></div></div>
    </summary>
    <updated>2012-01-27T15:17:30Z</updated>
    <published>2012-01-27T14:19:49Z</published>
    <author>
      <name>Len DiMaggio</name>
      <email>do-not-reply@jboss.com</email>
      <uri>https://community.jboss.org/people/ldimaggio</uri>
    </author>
    <source>
      <id>https://community.jboss.org/community/tools/blog</id>
      <link href="https://community.jboss.org/community/tools/blog" rel="alternate" type="text/html"/>
      <link href="http://community.jboss.org/en/tools/blog/feeds/posts" rel="self" type="application/atom+xml"/>
      <subtitle>How to install and use the JBoss Tools modules.</subtitle>
      <title>JBoss Tools</title>
      <updated>2012-02-03T18:01:36Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://ianskerrett.wordpress.com/?p=2250</id>
    <link href="http://feedproxy.google.com/~r/IanSkerrett/~3/GGOdAXEMJX0/" rel="alternate" type="text/html"/>
    <title>Dev + Ops = Getting Software Deployed Faster (DevOps)</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">DevOps is one of those terms you hear a LOT about lately but I am not sure it is really well understood.  However, if you are going to be successful at Agile ALM it would seem natural you would want to bring the operations side of IT closer into the development process.   Puppet is [...]<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=ianskerrett.wordpress.com&amp;blog=405862&amp;post=2250&amp;subd=ianskerrett&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://en.wikipedia.org/wiki/DevOps">DevOps</a> is one of those terms you hear a LOT about lately but I am not sure it is really well understood.  However, if you are going to be successful at Agile ALM it would seem natural you would want to bring the operations side of IT closer into the development process.   <a href="http://puppetlabs.com/">Puppet</a> is one example of an open source project that is implementing some of the DevOps concepts.</p>
<p>When we put together the program committee for <a href="http://www.eclipsecon.org/2012/agilealm">Agile ALM Connect</a> we specifically wanted an expert from the DevOps community to make sure the program had a healthy devops slant.   Therefore, I was thrilled to have Lukes Kanies, the founder of Puppet and CEO of <a href="http://puppetlabs.com/">PuppetLab</a>s, agree to be on the program committee and also speak at Agile ALM Connect on <a href="http://www.eclipsecon.org/2012/sessions/devops-what-it-and-what-it-means-you">‘what is devops’</a> and <a href="http://www.eclipsecon.org/2012/sessions/frictionless-operations-puppet">introduce Puppet</a>.    We will also have Kenn Hussey <a href="http://www.eclipsecon.org/2012/sessions/geppetto-integrated-development-environment-puppet">talk about Geppetto</a>, an Eclipse-based Puppet IDE.</p>
<p>In my Q&amp;A series with Agile ALM Connect speakers, Luke answered three questions about DevOps.</p>
<p><strong>1. ‘DevOps’ is a term that is used quite a bit lately.  How do you describe the term DevOps and why should developers care?</strong></p>
<p><strong/>DevOps is in to operations what Agile is to development.  Operations needs to be a competitive advantage, adopting new technology quickly and with minimal business interruption, but in many cases the business goals have been lost and the new focus on policy and compliance has allowed IT to become a cost center.  DevOps is about operations teams working closely with everyone involved in product delivery to make sure that business needs come first.  This often involves a lot of automation, but the main thing is about making sure the customer comes first, just like in agile development.</p>
<p>Developers should care because organizations following devops practices will do a better job of supporting them, getting their software deployed faster and more easily.</p>
<p><strong>2. You are the founder of the Puppet open source project.   Why did you start Puppet?</strong><br/>
When I started Puppet, the tools and practices in IT had barely changed in ten years.  I was afraid that it would still not have changed in ten more years, and I saw an opportunity to build a better tool and help make the lives of sysadmins better.   Based on how passionate our user base, we seem to have struck a chord.</p>
<p><strong>3. What advice do you have for people that want to learn how to use Puppet? </strong><br/>
First, start small, and fix the most painful things first.  Trying to boil the ocean by automating your whole infrastructure will just frustrate you and have little reward, but if you start by automating the small, menial work in your infrastructure you’ll have quick rewards and, even better, more time available in your day to work on the hard and important stuff.</p>
<p> </p>
<p><a href="http://www.eclipsecon.org/2012/agilealm"><img alt="" class="aligncenter" height="100" src="http://www.eclipsecon.org/2012/sites/eclipsecon.org.2012/files/econ-agile130x100_speaking.gif?1315863548" width="130"/></a></p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/ianskerrett.wordpress.com/2250/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ianskerrett.wordpress.com/2250/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/ianskerrett.wordpress.com/2250/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ianskerrett.wordpress.com/2250/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/ianskerrett.wordpress.com/2250/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ianskerrett.wordpress.com/2250/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/ianskerrett.wordpress.com/2250/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ianskerrett.wordpress.com/2250/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/ianskerrett.wordpress.com/2250/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ianskerrett.wordpress.com/2250/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/ianskerrett.wordpress.com/2250/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ianskerrett.wordpress.com/2250/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/ianskerrett.wordpress.com/2250/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ianskerrett.wordpress.com/2250/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=ianskerrett.wordpress.com&amp;blog=405862&amp;post=2250&amp;subd=ianskerrett&amp;ref=&amp;feed=1" width="1"/><img height="1" src="http://feeds.feedburner.com/~r/IanSkerrett/~4/GGOdAXEMJX0" width="1"/></div>
    </content>
    <updated>2012-01-27T04:22:36Z</updated>
    <category term="eclipse"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://ianskerrett.wordpress.com/2012/01/27/dev-ops-getting-software-deployed-faster-devops/</feedburner:origLink>
    <author>
      <name>Ian Skerrett</name>
    </author>
    <source>
      <id>http://ianskerrett.wordpress.com</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://ianskerrett.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://ianskerrett.wordpress.com/osd.xml" rel="search" title="Ian Skerrett" type="application/opensearchdescription+xml"/>
      <link href="http://feeds.feedburner.com/IanSkerrett" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://ianskerrett.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Marketing at Eclipse</subtitle>
      <title>Ian Skerrett</title>
      <updated>2012-01-31T07:04:05Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://intellectualcramps.wordpress.com/?p=941</id>
    <link href="http://intellectualcramps.wordpress.com/2012/01/26/does-popularity-success/" rel="alternate" type="text/html"/>
    <title>Does Popularity = Success?</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Does the current popularity of an open source project, automatically mean that it is successful?   It can but how do we define successful for an open source project? Just because a project is popular does not necessarily mean that … <a href="http://intellectualcramps.wordpress.com/2012/01/26/does-popularity-success/">Continue reading <span class="meta-nav">→</span></a><img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=intellectualcramps.wordpress.com&amp;blog=20154979&amp;post=941&amp;subd=intellectualcramps&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Does the current popularity of an open source project, automatically mean that it is successful?   It can but how do we define successful for an open source project?</p>
<p>Just because a project is popular does not necessarily mean that it is successful.  It just means at that point in time and duration it is also getting a lot of attention.   I’ve been involved with a wide variety of open source projects over the last 15 years.  Several I’ve started. Several I’ve participated in from both as a community member and as a committer.   Some I would say have been popular at one point or another, other’s I would say never hit the “High School” popularity meter thresh hold.</p>
<p><a href="http://www.learnersdictionary.com/search/popularity">Popularity</a> is defined by Merriam-Webster’s Learner’s dictionary as, “state of being liked, enjoyed, accepted, or done by a large number of people <strong>:</strong> the quality or state of being popular”.</p>
<p><a href="http://www.learnersdictionary.com/search/successful">Successful</a> is defined as “having the correct or desired result.”   So being successful does not necessarily equal popularity.   A successful open source project is one that has met its desired goals and objectives.   One of them could be, to become popular, and blogged about, and tweeted about constantly, but the winds of popularity change at a moments notice.  Success lasts for as long as the project is meeting its stated goals.</p>
<p>Success is defined by the commiters and the community that forms around the project.  Is it meeting its user’s needs?  Is it growing its user community and committer base?  Is it adapting and changing to meet knew requirements?   These are just some of the criteria that a project can be measured on to be successful.  Yes, popularity can be one criteria, but it should not be the sole deciding factor.</p>
<p>We need to be careful on tying success to popularity alone.   There are many projects out there that I would consider successful that have never hit the popularity threshold.  Those projects may not be used by Millions of people, but they have built a community around their project, and provide value to that community.   How many people are using it, or number of companies that have adopted it, should not take away from the success of the project if it has met its objectives.</p>
<p>So success is going to mean different things to different people.  There is no one way to measure if project is successful.  To me, if your project even gets a handful of people forming a community around it, you are already successful.</p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/intellectualcramps.wordpress.com/941/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/intellectualcramps.wordpress.com/941/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/intellectualcramps.wordpress.com/941/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/intellectualcramps.wordpress.com/941/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/intellectualcramps.wordpress.com/941/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/intellectualcramps.wordpress.com/941/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/intellectualcramps.wordpress.com/941/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/intellectualcramps.wordpress.com/941/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/intellectualcramps.wordpress.com/941/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/intellectualcramps.wordpress.com/941/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/intellectualcramps.wordpress.com/941/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/intellectualcramps.wordpress.com/941/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/intellectualcramps.wordpress.com/941/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/intellectualcramps.wordpress.com/941/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=intellectualcramps.wordpress.com&amp;blog=20154979&amp;post=941&amp;subd=intellectualcramps&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-27T01:24:30Z</updated>
    <category term="eclipse"/>
    <category term="open source"/>
    <author>
      <name>kingargyle</name>
    </author>
    <source>
      <id>http://intellectualcramps.wordpress.com</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://intellectualcramps.wordpress.com/category/eclipse/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://intellectualcramps.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://intellectualcramps.wordpress.com/osd.xml" rel="search" title="intellectualcramps" type="application/opensearchdescription+xml"/>
      <link href="http://intellectualcramps.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>A little bit of this and a little bit of that.</subtitle>
      <title>intellectualcramps » eclipse</title>
      <updated>2012-01-31T19:50:43Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-1616206987206690523.post-8573850622558615234</id>
    <link href="http://blog.deepakazad.com/feeds/8573850622558615234/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://blog.deepakazad.com/2012/01/weird-code-pattern-in-eclipse-sdk.html#comment-form" rel="replies" title="4 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/1616206987206690523/posts/default/8573850622558615234" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/1616206987206690523/posts/default/8573850622558615234" rel="self" type="application/atom+xml"/>
    <link href="http://blog.deepakazad.com/2012/01/weird-code-pattern-in-eclipse-sdk.html" rel="alternate" title="Weird code pattern in Eclipse SDK" type="text/html"/>
    <title>Weird code pattern in Eclipse SDK</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div dir="ltr" style="text-align: left;"><div dir="ltr" style="text-align: left;"><div style="text-align: justify;">In recent Juno milestones JDT has added several new static analysis capabilities - resource leak detection (Juno M3), annotation based null analysis (Juno M4), null analysis for fields (Juno M5). This week I have been testing these new features on the entire Eclipse SDK source code. </div><div style="text-align: justify;"><br/></div><div style="text-align: justify;">While there are quite a few 'gems', the following code pattern occurs quite frequently. If the object can be null at the first if condition, how is it magically guaranteed to be non-null at the second if statement?  :-)</div><div style="text-align: justify;"><br/></div></div><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-dOp3pEh1YgM/TyGOfUB907I/AAAAAAAAAc0/qVI7xiHEuVw/s1600/weird-code-pattern.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://3.bp.blogspot.com/-dOp3pEh1YgM/TyGOfUB907I/AAAAAAAAAc0/qVI7xiHEuVw/s1600/weird-code-pattern.png"/></a></div><div class="separator" style="clear: both; text-align: justify;"><br/></div><div class="separator" style="clear: both; text-align: justify;">As Stephan mentioned in his <a href="http://blog.objectteams.org/2012/01/help-the-jdt-compiler-helping-you-1-resource-leaks/">blog</a> today - Help the JDT Compiler helping you. Please start using the new static analysis options and report any issues you find. In the process you will certainly make improvements to your code as well.</div></div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/1616206987206690523-8573850622558615234?l=blog.deepakazad.com" width="1"/></div></div>
    </content>
    <updated>2012-01-26T17:47:47Z</updated>
    <published>2012-01-26T17:47:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="planeteclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="jdt"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="static analysis"/>
    <author>
      <name>Deepak Azad</name>
      <email>noreply@blogger.com</email>
      <uri>https://profiles.google.com/111633997645714623557</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-1616206987206690523</id>
      <category term="mobile"/>
      <category term="IBM"/>
      <category term="java7"/>
      <category term="JazzHub"/>
      <category term="Rational Project Conductor"/>
      <category term="ClearQuest"/>
      <category term="javascript"/>
      <category term="eclipsecon"/>
      <category term="research"/>
      <category term="static analysis"/>
      <category term="REST"/>
      <category term="acronyms"/>
      <category term="dimension"/>
      <category term="utf-8"/>
      <category term="jdt tips"/>
      <category term="jdt"/>
      <category term="open source"/>
      <category term="Report Server"/>
      <category term="tip"/>
      <category term="netbeans"/>
      <category term="Reporting"/>
      <category term="MCIF"/>
      <category term="star schema"/>
      <category term="dojo"/>
      <category term="android"/>
      <category term="Jazz"/>
      <category term="RTC"/>
      <category term="Rational Insight"/>
      <category term="git"/>
      <category term="OSLC"/>
      <category term="ibminnovate"/>
      <category term="fact"/>
      <category term="planeteclipse"/>
      <category term="Rational"/>
      <category term="Rational Focal Point"/>
      <category term="eclipse"/>
      <category term="eclipseday"/>
      <category term="musings"/>
      <category term="pde"/>
      <category term="jsdt"/>
      <category term="hashing"/>
      <category term="aptana"/>
      <category term="BIRT"/>
      <category term="e4"/>
      <category term="Cognos"/>
      <author>
        <name>Deepak Azad</name>
        <email>noreply@blogger.com</email>
        <uri>https://profiles.google.com/111633997645714623557</uri>
      </author>
      <link href="http://blog.deepakazad.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/1616206987206690523/posts/default/-/planeteclipse" rel="self" type="application/atom+xml"/>
      <link href="http://blog.deepakazad.com/search/label/planeteclipse" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/1616206987206690523/posts/default/-/planeteclipse/-/planeteclipse?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>The Coder Lounge</title>
      <updated>2012-01-27T10:43:02Z</updated>
    </source>
  </entry>

  <entry>
    <id>http://feedproxy.google.com/~r/eclipse/fnews/~3/lI1kddwPDIk/20120126_eclipsecon2012_gold_sponsors_announced.php</id>
    <link href="http://feedproxy.google.com/~r/eclipse/fnews/~3/lI1kddwPDIk/20120126_eclipsecon2012_gold_sponsors_announced.php" rel="alternate" type="text/html"/>
    <title>EclipseCon 2012 Gold Sponsors Announced</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">The Eclipse Foundation is pleased to announce the Gold sponsors for the upcoming EclipseCon 2012 conference in Reston, Virginia on March 26-29, 2012. Actuate, IBM, Oracle, Red Hat and SAP have all agreed to be the premier sponsors of the annual Eclipse community event.<img height="1" src="http://feeds.feedburner.com/~r/eclipse/fnews/~4/lI1kddwPDIk" width="1"/></div>
    </summary>
    <updated>2012-01-26T15:29:27Z</updated>
    <category term="news"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://www.eclipse.org/org/press-release/20120126_eclipsecon2012_gold_sponsors_announced.php</feedburner:origLink>
    <source>
      <id>http://www.eclipse.org</id>
      <logo>http://www.eclipse.org/images/EclipseBannerPic.jpg</logo>
      <author>
        <name>Eclipse Announcements</name>
      </author>
      <link href="http://www.eclipse.org" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/eclipse/fnews" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Eclipse News</subtitle>
      <title>Eclipse News</title>
      <updated>2012-01-30T17:28:39Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.objectteams.org/?p=131</id>
    <link href="http://blog.objectteams.org/2012/01/help-the-jdt-compiler-helping-you-1-resource-leaks/" rel="alternate" type="text/html"/>
    <link href="http://blog.objectteams.org/2012/01/help-the-jdt-compiler-helping-you-1-resource-leaks/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.objectteams.org/2012/01/help-the-jdt-compiler-helping-you-1-resource-leaks/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">Help the JDT Compiler helping you! - 1: Resource Leaks</title>
    <summary xml:lang="en">During the Juno cycle a lot of work in the JDT has gone into more sophisticated static analysis, and some more is still in the pipe-line. I truly hope that once Juno is shipped this will help all JDT users to find more bugs immediately while still typing. However, early feedback regarding these features shows [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>During the Juno cycle a lot of work in the JDT has gone into more sophisticated static analysis, and some more is still in the pipe-line. I truly hope that once Juno is shipped this will help all JDT users to find more bugs immediately while still typing. However, early feedback regarding these features shows that users are starting to expect miracles from the analysis <img alt=":)" class="wp-smiley" src="http://blog.objectteams.org/wp-includes/images/smilies/icon_smile.gif"/> </p>
<p>On the one hand seeing this is flattering, but on the other hand it makes me think we should perhaps explain what exactly the analysis can see and what is beyond its vision. If you take a few minutes learning about the concepts behind the analysis you’ll not only understand its limitations, but more importantly you will learn how to write code that’s better readable - in this case for reading by the compiler. Saying: with only slightly rephrasing your programs you can help the compiler to better understand what’s going on, to the effect that the compiler can answer with much more useful error and warning messages.</p>
<p>Since there’s a lot of analysis in this JDT compiler I will address just one topic per blog post. This post goes to improvements in the detection of resource leaks.</p>
<h2>Resource leaks - the basics</h2>
<p>Right when everybody believed that Eclipse Indigo RC 4 was ready for the great release, another <a href="http://dev.eclipse.org/mhonarc/lists/cross-project-issues-dev/msg06246.html">blocker bug</a> was detected: a simple resource leak basically prevented Eclipse from launching on a typical Linux box if more than 1000 bundles are installed. Coincidentally, at the same time the JDT team was finishing up work on the new try-with-resources statement introduced in Java 7. So <a href="http://blog.objectteams.org/2011/06/a-use-case-for-java-7/">I was thinking</a>: shouldn’t the compiler help users to migrate from notoriously brittle handling of resources to the new construct that was designed specifically to facilitate a safe style of working with resources?</p>
<h3>What’s a resource?</h3>
<p>So, how can the compiler know about resources? Following the try-with-resources concept, any instance of type <code>java.lang.AutoCloseable</code> is a resource. Simple, huh? In order to extend the analysis also to pre Java 7 code, we also consider <code>java.io.Closeable</code> (available since 1.5).</p>
<h3>Resource life cycle</h3>
<p>The expected life cycle of any resource is : <em>allocate—use—close</em>. Simple again. </p>
<p>From this we conclude the code pattern we have to look for: where does the code allocate a closeable and no call to close() is seen afterwards. Or perhaps a call is seen but not all execution paths will reach that call, etc.</p>
<h3>Basic warnings</h3>
<p>With <a href="http://download.eclipse.org/eclipse/downloads/drops/S-3.8M3-201110271800/eclipse-news-M3.html#JDT-resource-leaks">Juno M3</a> we released a <a href="http://blog.deepakazad.com/2011/10/detecting-resource-leaks-with-eclipse.html">first analysis</a> that could now tell you things like:</p>
<ul>
<li><img src="http://blog.objectteams.org/wp-uploads/2012/01/error_obj.gif" valign="middle"/> Resource leak: “input” is never closed
</li><li><img src="http://blog.objectteams.org/wp-uploads/2012/01/error_obj.gif" valign="middle"/> Resource leak: “input” is never closed at this location (<em>if a method exit happens before reaching close()</em>)
</li></ul>
<p>If the problem occurs only on some execution paths the warnings are softened (saying “potential leak” etc.).</p>
<p>Good, <strong>but</strong>…</p>
<h2>Signal to noise - part 1</h2>
<p>It turned out that the analysis was causing significant noise. How come? The concepts are so clear and all code that wouldn’t exhibit the simple <em>allocate—use—close</em> life cycle should indeed by revised, shouldn’t it?</p>
<p>In fact we found several patterns, where these warnings were indeed useless.</p>
<h3>Resource-less resources</h3>
<p>We learned that not every subtype of <code>Closeable</code> really represents a resource that needs leak prevention. How many times have you invoked <code>close()</code> on a <code>StringWriter</code>, e.g.? Just have a look at its implementation and you’ll see why this isn’t worth the effort. Are there more classes in this category?</p>
<p>Indeed we found a total of 7 classes in <code>java.io</code> that purely operate on Java objects without allocating any resources from the operating system:</p>
<ul>
<li><code>StringReader</code></li>
<li><code>StringWriter</code></li>
<li><code>ByteArrayInputStream</code></li>
<li><code>ByteArrayOutputStream</code></li>
<li><code>CharArrayReader</code></li>
<li><code>CharArrayWriter</code></li>
<li><code>StringBufferInputStream</code></li>
</ul>
<p>For none of these does it make sense to warn about missing <code>close()</code>.</p>
<p>To account for these classes we simply added a <strong>white list</strong>: if a class is in the list suppress any warnings/errors. This white list consists of exactly those 7 classes listed above. Sub-classes of these classes are not considered.</p>
<h3>Wrapper resources</h3>
<p>Another group of classes implementing <code>Closeable</code> showed up, that are not strictly resources themselves. Think of <code>BufferedInputStream</code>! Does it need to be closed?</p>
<p>Well? What’s your answer? The correct answer is: it depends. A few examples:</p>

<div class="wp_syntax"><table><tbody><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code"><pre class="otj" style="font-family: monospace;">	<span style="color: #7F0055; font-weight: bold;">void</span> wrappers<span style="color: #000000;">(</span><span style="color: #000000; font-weight: normal;">String</span> content<span style="color: #000000;">)</span> <span style="color: #7F0055; font-weight: bold;">throws</span> <span style="color: #000000; font-weight: normal;">IOException</span> <span style="color: #000000;">{</span>
		<span style="color: #000000; font-weight: normal;">Reader</span> r1, r2, r3, r4<span style="color: #000000;">;</span>
		r1 <span style="color: #000000;">=</span> <span style="color: #7F0055; font-weight: bold;">new</span> <span style="color: #000000; font-weight: normal;">BufferedReader</span><span style="color: #000000;">(</span><span style="color: #7F0055; font-weight: bold;">new</span> <span style="color: #000000; font-weight: normal;">FileReader</span><span style="color: #000000;">(</span><span style="color: #2A00ff;">"someFile"</span><span style="color: #000000;">)</span><span style="color: #000000;">)</span><span style="color: #000000;">;</span>
		r2 <span style="color: #000000;">=</span> <span style="color: #7F0055; font-weight: bold;">new</span> <span style="color: #000000; font-weight: normal;">BufferedReader</span><span style="color: #000000;">(</span><span style="color: #7F0055; font-weight: bold;">new</span> <span style="color: #000000; font-weight: normal;">StringReader</span><span style="color: #000000;">(</span>content<span style="color: #000000;">)</span><span style="color: #000000;">)</span><span style="color: #000000;">;</span>
		r3 <span style="color: #000000;">=</span> <span style="color: #7F0055; font-weight: bold;">new</span> <span style="color: #000000; font-weight: normal;">FileReader</span><span style="color: #000000;">(</span><span style="color: #2A00ff;">"somefile"</span><span style="color: #000000;">)</span><span style="color: #000000;">;</span>
		r4 <span style="color: #000000;">=</span> <span style="color: #7F0055; font-weight: bold;">new</span> <span style="color: #000000; font-weight: normal;">BufferedReader</span><span style="color: #000000;">(</span>r3<span style="color: #000000;">)</span><span style="color: #000000;">;</span>
		r3.<span style="color: #000000;">close</span><span style="color: #000000;">(</span><span style="color: #000000;">)</span><span style="color: #000000;">;</span>
	<span style="color: #000000;">}</span></pre></td></tr></tbody></table></div>

<p>How many leaks? With same added smartness the compiler will signal only one resource leak: on <code>r1</code>. All others are safe: </p>
<ul>
<li><code>r2</code> is a wrapper for a resource-less closeable: no OS resources are ever allocated here.</li>
<li><code>r3</code> is explicitly closed</li>
<li><code>r4</code> is just a wrapper around <code>r3</code> and since that is properly closed, <code>r4</code> does not hold onto any OS resources at the end.</li>
<li>returning to <code>r1</code>, why is that a leak? It’s a wrapper, too, but now the underlying resource (a <code>FileReader</code>) is not directly closed so it’s the responsibility of the wrapper and can only be triggered by calling <code>close()</code> on the wrapper <code>r1</code>.</li>
</ul>
<p>Summarizing: wrappers don’t directly hold an OS resource, but delegate to a next closeable. Depending on the nature and state of the nested closeable the wrapper may or may not be responsible for closing. In arbitrary chains of wrappers with a relevant resource at the bottom, closing any closeable in the chain (including the bottom) will suffice to release the single resource. If a wrapper chain is not properly closed the problem will be flagged against the outer-most wrapper, since calling <code>close()</code> at the wrapper will be delegated along all elements of the chain, which is the cleanest way of closing.</p>
<p>Also for wrappers the question arises: how does the compiler know? Again we set up a <strong>white list</strong> with all wrapper classes we found in the JRE: 20 classes in <code>java.io</code>, 12 in <code>java.util.zip</code> and 5 in other packages (the full lists are in <a href="http://git.eclipse.org/c/jdt/eclipse.jdt.core.git/tree/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/TypeConstants.java">TypeConstants.java</a>, search for “_CLOSEABLES”).</p>
<h2>Status and outlook</h2>
<p>Yes, <a href="http://inhabitat.com/wp-content/blogs.dir/1/files/2012/01/costa-concordia-fuel-spill-1-537x356.jpg">a leak can be a stop-ship problem</a>.</p>
<p>Starting with Juno M3 we have basic analysis of resource leaks; starting with Juno M5 the analysis uses the two white lists mentioned above: resource-less closeables and resource wrappers. In real code this significantly reduces the number of false positives, which means: for the remaining warnings the signal-to-noise ratio is significantly better.</p>
<p>M5 will actually bring more improvements in this analysis, but that will be subject of a next post.</p></div>
    </content>
    <updated>2012-01-26T14:32:23Z</updated>
    <published>2012-01-26T14:25:14Z</published>
    <category scheme="http://blog.objectteams.org" term="Eclipse"/>
    <category scheme="http://blog.objectteams.org" term="Uncategorized"/>
    <category scheme="http://blog.objectteams.org" term="analysis"/>
    <category scheme="http://blog.objectteams.org" term="bug"/>
    <category scheme="http://blog.objectteams.org" term="JDT"/>
    <category scheme="http://blog.objectteams.org" term="warning"/>
    <author>
      <name>stephan</name>
    </author>
    <source>
      <id>http://blog.objectteams.org/feed/atom/</id>
      <link href="http://blog.objectteams.org" rel="alternate" type="text/html"/>
      <link href="http://blog.objectteams.org/category/eclipse/feed/atom" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Everthing Object Teams - adding team spirit to your objects.</subtitle>
      <title xml:lang="en">The Object Teams Blog » Eclipse</title>
      <updated>2012-01-26T14:32:23Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-3356090267744964460.post-6956916733978072854</id>
    <link href="http://eclipseandlinux.blogspot.com/feeds/6956916733978072854/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://eclipseandlinux.blogspot.com/2012/01/fedora-eclipse-build-introduction.html#comment-form" rel="replies" title="7 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/3356090267744964460/posts/default/6956916733978072854" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/3356090267744964460/posts/default/6956916733978072854" rel="self" type="application/atom+xml"/>
    <link href="http://eclipseandlinux.blogspot.com/2012/01/fedora-eclipse-build-introduction.html" rel="alternate" title="Fedora Eclipse Build: Introduction" type="text/html"/>
    <title>Fedora Eclipse Build: Introduction</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">It has been almost a month, since I stared my work for Red Hat.<br/><br/>I am taking care of Eclipse Build, which is even more complicated than regular Eclipse build (yes, Kim, that *is* possible).<br/><br/>The first and the most important assumption of Linux Eclipse Build is: no binaries allowed.<br/><br/>Some people call that kind of builds liberating. That is the last word that I'd use now ;-).<br/><br/>I will describe nuances that I have met during preparing <a href="https://fedoraproject.org/wiki/Features/EclipseJuno">Eclipse Juno for Fedora 17</a> in the following posts, but right now I'd like to mention just the first issue I have met:<br/><br/>If you want to build Eclipse, you need a builder, namely, a PDE Build. It looks like a chicken an egg problem, and the only solution is to build the builder using ant and OpenJDK. There is only one problem with that (OK, one serious problem and a lot of smaller ones that I will skip for now): Eclipse Java Compiler is not consistent with OpenJDK javac, or, stating it more clearly, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=369628" target="_blank">JDT code cannot be compiled with javac</a>.<br/><br/>That's not a big technical problem, as patching the source code before the build and making it javac compatible (and JDT incompatible) is not a very difficult thing, but it is open a rather serious question.<br/><br/>How does it come to the situation, where you cannot build Eclipse from scratch, but you have to use binaries to build Eclipse? Isn't it a bit against open-source philosophy? Today need we just Eclipse Compiler, which cannot be built (unless customized) from source. Tomorrow may we depend on something far less open.<br/><br/>Would not it make sense to put a requirement on Eclipse that some core plugins must compile with OpenJDK? I do not expect here mirroring all OpenJDK bugs in Eclipse compiler, but at least allowing for true open source build of it...<br/><br/>Here is <a href="http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=859" target="_blank">a bug</a> for those of you who are interested in the cause of the javac problem when building JDT.<br/><br/>In the next post: do Orbit users get what they expect?<br/><br/>EDIT: here is the <a href="http://git.eclipse.org/c/linuxtools/org.eclipse.linuxtools.eclipse-build.git/tree/eclipse-build/patches/jdt-debug-compilation.patch" target="_blank">link</a> to the patch that makes JDT compile with OpenJDK.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/3356090267744964460-6956916733978072854?l=eclipseandlinux.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-26T13:37:54Z</updated>
    <published>2012-01-26T08:54:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="open source"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="build"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="linux"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="eclipse-build"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="fedora"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="openjdk"/>
    <author>
      <name>Christopher Daniel</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/02643339658259354232</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-3356090267744964460</id>
      <category term="linux"/>
      <category term="debug"/>
      <category term="jni"/>
      <category term="cdt"/>
      <category term="java"/>
      <category term="build"/>
      <category term="launcher"/>
      <category term="eclipse"/>
      <category term="fedora"/>
      <category term="statushandling"/>
      <category term="ubuntu"/>
      <category term="open source"/>
      <category term="eclipse-build"/>
      <category term="swt"/>
      <category term="errorhandling"/>
      <category term="tip"/>
      <category term="openjdk"/>
      <category term="unity"/>
      <category term="c"/>
      <author>
        <name>Christopher Daniel</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/02643339658259354232</uri>
      </author>
      <link href="http://eclipseandlinux.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/3356090267744964460/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://eclipseandlinux.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <title>Chris Daniel</title>
      <updated>2012-02-03T14:26:46Z</updated>
    </source>
  </entry>

  <entry>
    <id>http://feedproxy.google.com/~r/eclipse/fnews/~3/NA2EG7JylQ8/Eclipse.htm</id>
    <link href="http://feedproxy.google.com/~r/eclipse/fnews/~3/NA2EG7JylQ8/Eclipse.htm" rel="alternate" type="text/html"/>
    <title>Program Announced for the OMG/Eclipse Workshop</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">The Eclipse Foundation and OMG are pleased to announce the <a href="http://www.omg.org/news/meetings/tc/dc-12/special-events/Eclipse_Program.htm">program </a>
    	for the third Eclipse/OMG Workshop on open specifications and open source software.  The Workshop will occur on Sunday, March 25 in Reston, 
    	Virginia at the same location as EclipseCon 2012.<img height="1" src="http://feeds.feedburner.com/~r/eclipse/fnews/~4/NA2EG7JylQ8" width="1"/></div>
    </summary>
    <updated>2012-01-26T06:50:27Z</updated>
    <category term="news"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://www.omg.org/news/meetings/tc/dc-12/special-events/Eclipse.htm</feedburner:origLink>
    <source>
      <id>http://www.eclipse.org</id>
      <logo>http://www.eclipse.org/images/EclipseBannerPic.jpg</logo>
      <author>
        <name>Eclipse Announcements</name>
      </author>
      <link href="http://www.eclipse.org" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/eclipse/fnews" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Eclipse News</subtitle>
      <title>Eclipse News</title>
      <updated>2012-01-30T17:28:39Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://www.vogella.de/blog/?p=4767</id>
    <link href="http://www.vogella.de/blog/2012/01/26/the-end-of-eclipse-3-x/" rel="alternate" type="text/html"/>
    <title>The end of Eclipse 3.x</title>
    <summary>Currently we have in my option the unfortunate situation that Eclipse did fork itself into a 3.x and 4.x stream.

Fortunately this is going to change. 

I think it is worth to put emphasis on the statement of Mike Milinkovich. 

Quote: As of the Juno release, Eclipse 4 is going to be the base platform ...</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Currently we have in my option the unfortunate situation that Eclipse did fork itself into a 3.x and 4.x stream.</p>
<p>Fortunately this is going to change. </p>
<p>I think it is worth to put emphasis on <a href="http://mmilinkov.wordpress.com/2012/01/06/its-going-to-be-an-exciting-year/">the statement of Mike Milinkovich</a>. </p>
<p>Quote: As of the Juno release, Eclipse 4 is going to be the base platform for the Eclipse ecosystem. [SNIP] Eclipse 3.8 will also ship as part of the Juno release, but <strong>currently there are no 3.x releases planned after that.</strong>.</p>
<p>I think its great the the platform gets ride of the two code lines. </p>
<p>For users this means that they should give the Eclipse 4.2 milestones a try. For Eclipse projects this means that they should test their plug-ins based on Eclipse 4.2.</p>
<p>For <a href="http://www.vogella.de">vogella.de</a> this mean that I should update my Eclipse RCP tutorials.</p>
<p>Both should report bugs in case they find issues.</p>
<p>Happy bug hunting!</p>
<p class="wp-flattr-button"/> <p><a href="http://www.vogella.de/blog/?flattrss_redirect&amp;id=4767&amp;md5=9aa2d5461e8c3817f5a47925d759de57" target="_blank" title="Flattr"><img alt="flattr this!" src="http://www.vogella.de/blog/wp-content/plugins/flattr/img/flattr-badge-large.png"/></a></p></div>
    </content>
    <updated>2012-01-26T05:40:48Z</updated>
    <category term="Eclipse"/>
    <author>
      <name>Lars Vogel</name>
    </author>
    <source>
      <id>http://www.vogella.de/blog</id>
      <link href="http://www.vogella.de/blog/category/eclipse/feed" rel="self" type="application/rss+xml"/>
      <link href="http://www.vogella.de/blog" rel="alternate" type="text/html"/>
      <subtitle>Tips around Eclipse and Android programming</subtitle>
      <title>Developer Papercuts » Eclipse</title>
      <updated>2012-02-02T13:03:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://tasktop.com/blog/?p=5668</id>
    <link href="http://tasktop.com/blog/tasktop/joining-tasktop" rel="alternate" type="text/html"/>
    <title>Why I joined Tasktop</title>
    <summary>I’ve long been an admirer of Tasktop, for a number of reasons: First, as Eclipse users already know, Tasktop has built some really cool Eclipse technology, including the Mylyn task-focused interface. But many companies have built cool open source tools. It’s much harder to take those tools and build a growing, dynamic company around them. [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://tasktop.com/blog/wp-content/uploads/2012/01/MTPHeadshot.jpg"><img alt="" class="alignnone size-full wp-image-5670" height="192" src="http://tasktop.com/blog/wp-content/uploads/2012/01/MTPHeadshot.jpg" style="margin: 10px; float: left;" title="Miles Parker" width="164"/></a>I’ve long been an admirer of Tasktop, for a number of reasons: First, as Eclipse users already know, Tasktop has built some really cool Eclipse technology, including the Mylyn task-focused interface. But many companies have built cool open source tools. It’s much harder to take those tools and build a growing, dynamic company around them. But plenty of companies have also done that, usually by following the standard open source business model: package services and a bit of value-add around a captive open-source offering, and wait for customers. Tasktop takes a far more challenging and rewarding approach: It nurtures a healthy open source eco-system around core technologies, but then re-imagines and re-purposes them, leveraging unique products that address real customer pain. That takes real vision, and to me it’s a clear signal that the Tasktop leadership is able to imagine and execute at an entirely different energy level.</p>
<p>So rather than admire Tasktop from a distance, I joined it! I first worked with Tasktop last year as a consultant developing the <a href="http://youtu.be/jnbzyrlUzlA?hd=1">initial implementation</a> of what has become the Mylyn <a href="http://wiki.eclipse.org/Mylyn/Modeling_Bridge">Model Focusing Tools</a> project. That was a great opportunity to get to know some of the team and the Tasktop way. Everything I saw then fit nicely with what I’d already intuited. We have a really great combination of engineering excellence, creativity and lightweight organization.</p>
<p>It’s nice to say “we” again — I hadn’t realized just how much I’d missed having colleagues to work together with on challenging problems. The morning I joined Tasktop, I saw a stream of emails from everyone welcoming me to the team. I must admit to some cynicism about the whole “team” thing — like so much else, it can be an empty word that doesn’t match up to reality — but in this case it feels very genuine. So heartfelt thanks to everyone.</p>
<p>It’s an exciting time to be building software tools. It might sound funny, but I like to think of software development as a helping profession. That’s because I think that software products really can help people live more fulfilling, interesting and even happy lives. When I tell my family and non-techie friends that I’m working on Automated Lifecycle Management (ALM) tools I get a blank look. So instead I remind them that almost everything we do relies on software and that software programs are by far the the most complex artifact that humans have ever created. And I tell them that software development communities are growing ever more diverse, distributed, interwoven and complex. So what do we do at Tasktop? We build software that embraces those complexities.</p>
<p>Tasktop Dev tackles the issue of <em>software complexity</em>. It handles a lot of the repetitive and boring stuff, simplifies and clarifies everything else, and is deeply and imaginatively integrated with other development tools. Tasktop Sync and Code2Cloud — along with other exciting tools that we’re working on — tackle the even more challenging issue of <em>community complexity</em>. Even a relatively small software product might involve code developed by a rich community spanning companies, technologies, continents, and even (think about the Open-Source movement) different economic models and incentive systems. And in larger projects thousands of developers might be collaborating across all of these dimensions. Software development efforts are intimately connected with customers, management, marketing, support, regulators and every other imaginable kind of stakeholder. All of these people need to talk to one another, and it seems that everyone uses different tools to manage the unique aspects of their tasks or work environments. Tasktop builds software that helps those tools to work together so that everyone can focus together on the stuff that matters. In short, we break down boundaries and help people communicate. That’s worth doing.
</p><div align="center">
<p class="smallParagraph"><a href="http://tasktop.com/about/webinars/"><b><i>Watch Tasktop webinars</i></b></a> </p>
</div>

	<div style="text-align: right;">
		<a class="twitter-share-button" href="http://twitter.com/share">Tweet</a>
	</div>
	 <img height="1" src="http://tasktop.com/blog/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&amp;post_id=5668" style="display: none;" width="1"/></div>
    </content>
    <updated>2012-01-26T00:09:38Z</updated>
    <category term="News"/>
    <category term="Tasktop"/>
    <category term="Team"/>
    <author>
      <name>Miles Parker</name>
    </author>
    <source>
      <id>http://tasktop.com/blog</id>
      <link href="http://tasktop.com/blog/category/team/feed" rel="self" type="application/rss+xml"/>
      <link href="http://tasktop.com/blog" rel="alternate" type="text/html"/>
      <subtitle>Task-focused productivity for Enterprise Agile ALM</subtitle>
      <title>Tasktop Blog » Team</title>
      <updated>2012-02-02T13:15:31Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://aniszczyk.org/?p=3484</id>
    <link href="http://aniszczyk.org/2012/01/25/kepler/" rel="alternate" type="text/html"/>
    <title>Kepler</title>
    <summary>Just to let everyone know, some members of the eclipse.org community recently voted on naming the next simultaneous release after Juno gets released in June 2012. Taking input from the community, the Eclipse Planning Council finalized the name to be Kepler. Personally, I think it’s a great choice and a nod to Johannes Kepler.</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Just to let everyone know, some members of the eclipse.org community recently <a href="http://eclipse.org/juno/planning/poll2013.php">voted</a> on naming the next simultaneous release after Juno gets released in June 2012. Taking input from the community, the Eclipse Planning Council <a href="http://dev.eclipse.org/mhonarc/lists/eclipse.org-planning-council/msg01975.html">finalized</a> the name to be <strong>Kepler</strong>.</p>
<p><a href="http://en.wikipedia.org/wiki/Johannes_Kepler"><img alt="" class="alignnone size-medium wp-image-3485" height="300" src="http://aniszczyk.org/wp-content/uploads/2012/01/225px-Johannes_Kepler_1610-218x300.jpg" title="225px-Johannes_Kepler_1610" width="218"/></a></p>
<p>Personally, I think it’s a great choice and a nod to <a href="http://en.wikipedia.org/wiki/Johannes_Kepler">Johannes Kepler</a>.</p></div>
    </content>
    <updated>2012-01-25T19:08:04Z</updated>
    <category term="work"/>
    <category term="eclipse"/>
    <author>
      <name>Chris Aniszczyk</name>
    </author>
    <source>
      <id>http://aniszczyk.org</id>
      <link href="http://aniszczyk.org/category/work/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://aniszczyk.org" rel="alternate" type="text/html"/>
      <subtitle>work. life. open source. diatribes.</subtitle>
      <title>Chris Aniszczyk's (zx) diatribe » work</title>
      <updated>2012-02-04T03:01:41Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-8068701199493835146.post-7088341146035943545</id>
    <link href="http://orioneditor.blogspot.com/feeds/7088341146035943545/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://orioneditor.blogspot.com/2012/01/how-to-load-content-in-your-iframe.html#comment-form" rel="replies" title="1 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/8068701199493835146/posts/default/7088341146035943545" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/8068701199493835146/posts/default/7088341146035943545" rel="self" type="application/atom+xml"/>
    <link href="http://orioneditor.blogspot.com/2012/01/how-to-load-content-in-your-iframe.html" rel="alternate" title="How to load content in your IFRAME" type="text/html"/>
    <title>How to load content in your IFRAME</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">When we started the TextView we used an IFRAME as the top most element.Over the time we changed the way we load the content of the IFRAME a few times, in this blog I will go over what we learnt in the process.<br/>In our first version we made the entire initialization of the text view synchronous. That was done using this strategy:<p/><pre class="js" name="orion" style="border: 1px solid #3299bb;"><br/>var iframe = document.createElement("IFRAME");<br/>parent.addChild(iframe);<br/>var frameWindow = iframe.contentWindow;<br/>var frameDocument = frameWindow.document;<br/>var html = "&lt;!DOCTYPE html&gt;&lt;HTML&gt;&lt;HEAD&gt;";<br/>for (var i = 0; i &lt; stylesheets.length; i++) {<br/> var objXml = new XMLHttpRequest();<br/> objXml.open("GET", stylesheets[i], false);<br/> objXml.send(null);<br/> html += "&lt;STYLE&gt;" + objXml.responseText + '&lt;/STYLE&gt;';<br/>}<br/>html += "&lt;/HEAD&gt;&lt;BODY&gt;&lt;/BODY&gt;&lt;/HTML&gt;";<br/>frameDocument.open();<br/>frameDocument.write(html);<br/>frameDocument.close(); <br/>// call method to create all other elements <br/>createElements(frameDocument.body); <br/></pre>This method works on all browsers but is not without limitations.<br/>First, it is possible that <code>iframe.contentWindow</code> is undefined. This happens when the parent is not connected to the DOM.Another similar problem is that the parent (or an ancestor of it) can be hidden, in which case the browser can choose to notapply any styling to it.<p>The second problem is using STYLE instead of LINK to include the css files. In order to use STYLE we need to download all the filessynchronously one after the other. Another problem using STYLE is that all the URIs in the CSS are relative to the page base URI, which causes problemsduring deployment.</p><p>The solution for these problems is to wait for the load event of the iframe to write the html and to use LINK to include the css files:</p><p/><pre class="js" name="orion" style="border: 1px solid #3299bb;"><br/>var iframe = document.createElement("IFRAME");<br/>var iframeLoaded = false;<br/>iframe.addEventListener("load", function() {<br/> if (iframeLoaded) return;<br/> iframeLoaded = true;<br/> var frameWindow = iframe.contentWindow;<br/> var frameDocument = frameWindow.document;<br/> var html = "&lt;!DOCTYPE html&gt;&lt;HTML&gt;&lt;HEAD&gt;";<br/> for (var i = 0; i &lt; stylesheets.length; i++) {<br/>  html += "&lt;LINK rel='stylesheets' type='text/css' href='" + stylesheets[i] + "'&gt;&lt;/LINK&gt;";<br/> }<br/> html += "&lt;/HEAD&gt;&lt;BODY&gt;&lt;/BODY&gt;&lt;/HTML&gt;";<br/> frameDocument.open();<br/> frameDocument.write(html);<br/> frameDocument.close(); <br/> createElements(frameDocument.body); // BAD CSS is not done loading<br/>}, false);<br/>parent.addChild(iframe);<br/></pre>This code is step forward, it solves the problem when <code>iframe.contentWindow</code> is undefined.Using LINK also means that all files are downloaded in parallel and there is no problems with relatives URI inside the CSS.<p>The main problem with the code above is that the CSS are not loaded at the time body is being accessed. The solve this problem our initialsolution was to use the load event for the <code>frameWindow</code>:</p><pre class="js" name="orion" style="border: 1px solid #3299bb;"><br/>var iframe = document.createElement("IFRAME");<br/>var iframeLoaded = false;<br/>iframe.addEventListener("load", function() {<br/> if (iframeLoaded) return;<br/> iframeLoaded = true;<br/> var frameWindow = iframe.contentWindow;<br/> var frameDocument = frameWindow.document;<br/> var html = "&lt;!DOCTYPE html&gt;&lt;HTML&gt;&lt;HEAD&gt;";<br/> for (var i = 0; i &lt; stylesheets.length; i++) {<br/>  html += "&lt;LINK rel='stylesheets' type='text/css' href='" + stylesheets[i] + "'&gt;&lt;/LINK&gt;";<br/> }<br/> html += "&lt;/HEAD&gt;&lt;BODY&gt;&lt;/BODY&gt;&lt;/HTML&gt;";<br/> frameDocument.open();<br/> frameDocument.write(html);<br/> frameDocument.close(); <br/> var windowLoaded = false;<br/> frameWindow.addEventListener("load", function() {<br/>  if (windowLoaded) return;<br/>  windowLoaded = true;<br/>  createElements(frameDocument.body);<br/> }, false);<br/>}, false);<br/>parent.addChild(iframe);<br/></pre>Here is where things get ugly, there are number of problems:<p/><ul><li>Firefox does not send any load events when document.write() is called from the iframe load handler.</li><li>calling document.write() not from the iframe load handler causes Firefox to change the navigation history.</li><li>Chrome some times does not fire load events for the iframe window (when navigating back or forward).</li><li>Safari sends the load event for the iframe before the CSS is loaded.</li><li>Webkit sends the load event for the iframe before the CSS is loaded, adding a SCRIPT element after the last LINK element fixes it for Webkit.</li></ul>To workaround the problems listed above the next version includes a timer:<p/><pre class="js" name="orion" style="border: 1px solid #3299bb;"><br/>var iframe = document.createElement("IFRAME");<br/>var iframeLoaded = false;<br/>iframe.addEventListener("load", function() {<br/> if (iframeLoaded) return;<br/> iframeLoaded = true;<br/> var frameWindow = iframe.contentWindow;<br/> var frameDocument = frameWindow.document;<br/> var html = "&lt;!DOCTYPE html&gt;&lt;HTML&gt;&lt;HEAD&gt;";<br/> for (var i = 0; i &lt; stylesheets.length; i++) {<br/>  html += "&lt;LINK rel='stylesheets' type='text/css' href='" + stylesheets[i] + "'&gt;&lt;/LINK&gt;";<br/> }<br/> html += "&lt;SCRIPT&gt;var waitForStyleSheets = true;&lt;/SCRIPT&gt;";<br/> html += "&lt;/HEAD&gt;&lt;BODY&gt;&lt;/BODY&gt;&lt;/HTML&gt;";<br/> frameDocument.open();<br/> frameDocument.write(html);<br/> frameDocument.close(); <br/><br/> var done = false;<br/> frameWindow.addEventListener("load", function() {<br/>  if (done) return;<br/>  if (frameDocument.readyState === "complete") {<br/>   done = true;<br/>   createElements(frameDocument.body);<br/>  }<br/> }, false);<br/> var createTimer = function() {<br/>  if (done) return;<br/>  if (frameDocument.readyState === "complete") {<br/>   done = true;<br/>   createElements(frameDocument.body);<br/>  } else {<br/>   setTimeout(createTimer, 10);<br/>  }<br/> }<br/> setTimeout(createTimer, 10);<br/>}, false);<br/>parent.addChild(iframe);<br/></pre>The version above is almost our current solution. Except that it does not work on Firefox. For some reason, on Firefox the <code>frameDocument.readyState</code> stays permanently set to "interactive" when document.write() is called from the iframe load handler. The only way we found to detected that all CSS are loaded was checking the cssRules of each stylesheet (thank you <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=364985#c11">Mihai</a>). <p/><pre class="js" name="orion" style="border: 1px solid #3299bb;"><br/>var iframe = document.createElement("IFRAME");<br/>var iframeLoaded = false;<br/>iframe.addEventListener("load", function() {<br/> if (iframeLoaded) return;<br/> iframeLoaded = true;<br/> var frameWindow = iframe.contentWindow;<br/> var frameDocument = frameWindow.document;<br/> var html = "&lt;!DOCTYPE html&gt;&lt;HTML&gt;&lt;HEAD&gt;";<br/> for (var i = 0; i &lt; stylesheets.length; i++) {<br/>  html += "&lt;LINK rel='stylesheets' type='text/css' href='" + stylesheets[i] + "'&gt;&lt;/LINK&gt;";<br/> }<br/> html += "&lt;SCRIPT&gt;var waitForStyleSheets = true;&lt;/SCRIPT&gt;";<br/> html += "&lt;/HEAD&gt;&lt;BODY&gt;&lt;/BODY&gt;&lt;/HTML&gt;";<br/> frameDocument.open();<br/> frameDocument.write(html);<br/> frameDocument.close(); <br/><br/> var done = false;<br/> frameWindow.addEventListener("load", function() {<br/>  if (done) return;<br/>  if (frameDocument.readyState === "complete") {<br/>   done = true;<br/>   createElements(frameDocument.body);<br/>  }<br/> }, false);<br/> var createTimer = function() {<br/>  if (done) return;<br/>  var ready = false;<br/>  if (frameDocument.readyState === "complete") {<br/>   ready = true;<br/>  } else if (frameDocument.readyState === "interactive" &amp;&amp; isFirefox) {<br/>   var sheets = frameDocument.styleSheets;<br/>   if (sheets.length === stylesheets.length) {<br/>    var index = 0;<br/>    while (index &lt; sheets.length) {<br/>     var count = 0;<br/>     try {<br/>      count = styleSheets.item(index).cssRules.length;<br/>     } catch (ex) {<br/>      //invalid access error means the css is not loaded<br/>      if (ex.code !== DOMException.INVALID_ACCESS_ERR) {<br/>       //other errors, like network security, assume the css is loaded<br/>       count = 1;<br/>      }<br/>     }<br/>     if (count === 0) { break; }<br/>     index++;<br/>    }<br/>    ready = index === sheets.length;<br/>   }<br/>  }<br/>  if (ready) {<br/>   done = true;<br/>   createElements(frameDocument.body);<br/>  } else {<br/>   setTimeout(createTimer, 10);<br/>  }<br/> }<br/> setTimeout(createTimer, 10);<br/>}, false);<br/>parent.addChild(iframe);<br/></pre><p>This is all the code that was needed to load the content into the iframe - somewhat extreme if you'd ask me. Probably the most pertinent question is why we are using an iframe, the answer to that is definitely another post...</p><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/8068701199493835146-7088341146035943545?l=orioneditor.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-24T21:51:21Z</updated>
    <published>2012-01-06T18:07:00Z</published>
    <author>
      <name>Felipe Heidrich</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/06507227292052947692</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-8068701199493835146</id>
      <category term="web editor orion eclipse"/>
      <author>
        <name>The Orion Editor</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/07281800949715092011</uri>
      </author>
      <link href="http://orioneditor.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/8068701199493835146/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://orioneditor.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <title>The Orion Editor</title>
      <updated>2012-02-02T19:43:50Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-8068701199493835146.post-1353481036237280347</id>
    <link href="http://orioneditor.blogspot.com/feeds/1353481036237280347/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://orioneditor.blogspot.com/2012/01/using-orion-editor-with-almond.html#comment-form" rel="replies" title="2 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/8068701199493835146/posts/default/1353481036237280347" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/8068701199493835146/posts/default/1353481036237280347" rel="self" type="application/atom+xml"/>
    <link href="http://orioneditor.blogspot.com/2012/01/using-orion-editor-with-almond.html" rel="alternate" title="Using the Orion Editor with Almond" type="text/html"/>
    <title>Using the Orion Editor with Almond</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">In my last post I gave instruction how to use the Orion Editor without <a href="http://requirejs.org/">requirejs</a>, since then the code changed quite a bit and the instructions in the last post no longer work. We changed all the editor files to follow the AMD spec (you can find more details about this change <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=365968">here</a>). It is still possible to use the editor without requirejs but you will need to use an AMD "shim" loader. The one I recommend is <a href="https://github.com/jrburke/almond">almond</a>.<p>To illustrate how to use the editor with almond I decided to write an simple application for that. It is actually an upgrade of the code snippet written by Andrew Niefer in this <a href="http://aniefer.blogspot.com/2011/02/embedding-orion-editor_02.html">post</a>. You can find my version of the code in <a href="https://gist.github.com/1556167">gist</a>.</p><p>Besides changing the snippet to use requirejs I have also added a few extra features.</p><p>Here are the instructions:</p><p>First, in your blog post add a <code>pre</code> element with the attribute name set to "orion".<br/>Then, in the class attribute you can specify the following parameters:</p><ul><li>writable - if set the element is writable.</li><li>ruler - if set the line numbering ruler is shown.</li><li>js - use the javascript syntax highlight styler.</li><li>java - use the java syntax highlight styler.</li><li>css - use the css syntax highlight styler.</li><li>html - use the html syntax highlight styler.</li></ul>Last, at the end of your blog added these lines:<pre><br/>&lt;script src="http://planetorion.org/editor/orionformatterbuilt.js"&gt;&lt;/script&gt;<br/>&lt;script type="text/javascript"&gt;<br/> require("examples/textview/orionformatter");<br/>&lt;/script&gt;<br/></pre>Here is an example:<pre class="html" name="orion" style="border: 1px solid #3299bb;"><br/>&lt;pre name="orion" class="js ruler writable"&gt;<br/>var this = "is some javascript code";<br/>&lt;/pre&gt;<br/></pre>This gets rendered to:<pre class="js ruler writable" name="orion"><br/>var this = "is some javascript code";<br/></pre>Now that the introduction part is over I'd like to talk about the process I used to create the <code>orionformatterbuilt.js</code> file which is the compiled version of <a href="https://gist.github.com/1556167">orionformatter.js</a>.<p>First lets take a look at what a html page with requirejs needs to do use orionformatter.js:</p><pre class="html" name="orion" style="border: 1px solid #3299bb;"><br/>&lt;!DOCTYPE html&gt;<br/>&lt;html&gt;<br/>&lt;head&gt;<br/>&lt;script data-main="orionformatter" src="../../requirejs/require.js"&gt;&lt;/script&gt;<br/>&lt;script type="text/javascript"&gt;<br/> require({<br/>   baseUrl: '../..'<br/> });<br/>&lt;/script&gt;<br/>&lt;/head&gt;<br/>&lt;body&gt;<br/>&lt;h3&gt;Orion Text View Demo: using Orion Formatter and RequireJS&lt;/h3&gt;<br/>&lt;pre name="orion" class="js writable ruler" style="border: 1px solid teal;"&gt;<br/>/* Some js code */<br/>function log (text) {<br/> var console = window.document.getElementById('console');<br/> showConsole();<br/>}<br/>&lt;/pre&gt;<br/>&lt;/body&gt;<br/>&lt;/html&gt;<br/></pre>It only needs to include "requirejs/require.js" and point data-main="orionformatter", very clean. The second script element setting the baseUrl was just necessary because our directory structure is a bit different. <p>The next step is to replace requirejs by almond.</p><pre class="html" name="orion" style="border: 1px solid #3299bb;"><br/>&lt;!DOCTYPE html&gt;<br/>&lt;html&gt;<br/>&lt;head&gt;<br/>&lt;script src="/examples/textview/almond.js"&gt;&lt;/script&gt;<br/>&lt;script src="/examples/textview/orionformatterbuilt.js"&gt;&lt;/script&gt;<br/>&lt;script src="/examples/textview/orionformatter.js"&gt;&lt;/script&gt;<br/>&lt;script src="/orion/textview/eventTarget.js"&gt;&lt;/script&gt;<br/>&lt;script src="/orion/textview/textModel.js"&gt;&lt;/script&gt;<br/>&lt;script src="/orion/textview/keyBinding.js"&gt;&lt;/script&gt;<br/>&lt;script src="/orion/textview/textView.js"&gt;&lt;/script&gt;<br/>&lt;script src="/orion/textview/projectionTextModel.js"&gt;&lt;/script&gt;<br/>&lt;script src="/orion/textview/tooltip.js"&gt;&lt;/script&gt;<br/>&lt;script src="/orion/textview/rulers.js"&gt;&lt;/script&gt;<br/>&lt;script src="/orion/editor/regex.js"&gt;&lt;/script&gt;<br/>&lt;script src="/orion/editor/textMateStyler.js"&gt;&lt;/script&gt;<br/>&lt;script src="/orion/editor/htmlGrammar.js"&gt;&lt;/script&gt;<br/>&lt;script src="/orion/textview/annotations.js"&gt;&lt;/script&gt;<br/>&lt;script src="/examples/textview/textStyler.js"&gt;&lt;/script&gt;<br/>&lt;script type="text/javascript"&gt;<br/> function onload() {<br/>  require("examples/textview/orionformatter");<br/> }<br/>&lt;/script&gt;<br/>&lt;/head&gt;<br/>&lt;body onload="onload();"&gt;<br/><br/>&lt;h3&gt;Orion Text View Demo: using Orion Formatter and Almond&lt;/h3&gt;<br/><br/>&lt;pre name="orion" class="js writable ruler" style="border: 1px solid teal;"&gt;<br/>/* Some js code */<br/>function log (text) {<br/> var console = window.document.getElementById('console');<br/> showConsole();<br/>}<br/>&lt;/pre&gt;<br/><br/>&lt;/body&gt;<br/>&lt;/html&gt;<br/></pre>Note that to use almond directly it was needed to include all the required files manually. Another difference is that requirejs ensures that orionformatter only runs when the dom is ready. With almond we don't get that, that is why the load event handler was necessary.<p>Now is the time to run the requirejs optimizer on almond. This is the magic:</p><p><code>$ node  r-edge.js  -o baseUrl=../.. name=examples/textview/almond include=examples/textview/orionformatter.js out=orionformatterbuilt.js uglify.ascii_only=true</code></p><p>Notes:</p><ul><li>uglify.ascii_only=true was needed because textView uses unicode characters</li><li><a href="https://raw.github.com/jrburke/r.js/master/dist/r-edge.js">r-edge.js</a> was used because of a bug in r.js, this will soon be fixed.</li><li>See <a href="https://gist.github.com/1556167">orionformatter.js</a> line 16, without this line almond did not work (for me).</li><li>The <a href="https://github.com/jrburke/almond">doc</a> suggests to pass wrap=true to the optimizer, in this case that can't be used as the load event handler needs to call the require method.</li></ul>Now using <code>orionformatterbuilt.js</code> the html above can be simplified to this:<pre class="html" name="orion" style="border: 1px solid #3299bb;"><br/>&lt;!DOCTYPE html&gt;<br/>&lt;html&gt;<br/>&lt;head&gt;<br/>&lt;script src="orionformatterbuilt.js"&gt;&lt;/script&gt;<br/>&lt;script type="text/javascript"&gt;<br/> function onload() {<br/>  require("examples/textview/orionformatter");<br/> }<br/>&lt;/script&gt;<br/>&lt;/head&gt;<br/>&lt;body onload="onload();"&gt;<br/><br/>&lt;h3&gt;Orion Text View Demo: using Orion Formatter and Almond (optimized version)&lt;/h3&gt;<br/><br/>&lt;pre name="orion" class="js writable ruler" style="border: 1px solid teal;"&gt;<br/>/* Some js code */<br/>function log (text) {<br/> var console = window.document.getElementById('console');<br/> showConsole();<br/>}<br/>&lt;/pre&gt;<br/><br/>&lt;/body&gt;<br/>&lt;/html&gt;<br/></pre>In some cases, like when using the Orion Formatter with Blogger, it might not be possible to add a load event handler to the body. The workaround is add the script elements at the end of the body. The html would look like this:<pre class="html" name="orion" style="border: 1px solid #3299bb;"><br/>&lt;!DOCTYPE html&gt;<br/>&lt;html&gt;<br/>&lt;body&gt;<br/><br/>&lt;h3&gt;Orion Text View Demo: using Orion Formatter and Almond (final version)&lt;/h3&gt;<br/><br/>&lt;pre name="orion" class="js writable ruler" style="border: 1px solid teal;"&gt;<br/>/* Some js code */<br/>function log (text) {<br/> var console = window.document.getElementById('console');<br/> showConsole();<br/>}<br/>&lt;/pre&gt;<br/><br/><br/>&lt;script src="orionformatterbuilt.js"&gt;&lt;/script&gt;<br/>&lt;script type="text/javascript"&gt;<br/> require("examples/textview/orionformatter");<br/>&lt;/script&gt;<br/>&lt;/body&gt;<br/>&lt;/html&gt;<br/></pre><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/8068701199493835146-1353481036237280347?l=orioneditor.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-24T20:38:16Z</updated>
    <published>2012-01-03T20:56:00Z</published>
    <author>
      <name>Felipe Heidrich</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/06507227292052947692</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-8068701199493835146</id>
      <category term="web editor orion eclipse"/>
      <author>
        <name>The Orion Editor</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/07281800949715092011</uri>
      </author>
      <link href="http://orioneditor.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/8068701199493835146/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://orioneditor.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <title>The Orion Editor</title>
      <updated>2012-02-02T19:43:50Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://ianskerrett.wordpress.com/?p=2243</id>
    <link href="http://feedproxy.google.com/~r/IanSkerrett/~3/9nDJdv2UdMM/" rel="alternate" type="text/html"/>
    <title>Integrating Lifecycle Tools with OSLC and Eclipse Lyo</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Lifecycle tool integration is a key issue for the new breed of tools emerging around the concepts of Agile ALM.   Eclipse is a great platform for tools integration on the desktop but how do tools integrate on the server?   OSLC and Eclipse Lyo are a specification and open source implementation for solving lifecycle tools integration. [...]<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=ianskerrett.wordpress.com&amp;blog=405862&amp;post=2243&amp;subd=ianskerrett&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Lifecycle tool integration is a key issue for the new breed of tools emerging around the concepts of Agile ALM.   Eclipse is a great platform for tools integration on the desktop but how do tools integrate on the server?   OSLC and <a href="http://eclipse.org/lyo/">Eclipse Lyo</a> are a specification and open source implementation for solving lifecycle tools integration.</p>
<p>Michael Fiedler and Steve Speicher will be talking about <a href="http://www.eclipsecon.org/2012/sessions/all-about-eclipse-lyo-re-thinking-tool-integrations">OSLC and Eclipse Lyo at the upcoming Agile ALM Connect conference.</a>    To introduce people to the <a href="http://www.eclipsecon.org/2012/presenters">Agile ALM Connect speakers </a>and topics, I will be doing a short Q&amp;A with some of the speakers.    Below Michael and Steve provide some background on OSLC and Eclipse Lyo.</p>
<p><strong><span style="font-size: small;">1. What is OSLC and why does the industry need OSLC?</span></strong></p>
<p><a href="http://open-services.net/" target="_blank"><span style="color: blue; font-size: small;">OSLC (Open Services for Lifecycle Integration)</span></a><span style="font-size: small;"> is an open community dedicated to reducing barriers for lifecycle tool integration.   The community authors scenarios and specifications for exposing application lifecycle data (change requests, test cases, requirements, etc) through uniform interfaces which rely on the architecture of the World Wide Web and Linked Data standards.</span></p>
<p>Organizations use a variety of lifecycle tools – commercial, open source and those developed in house – which need to share data, resources and assets.  Current integration approaches are often based on fragile and proprietary point-to-point APIs.   Tools adopting OSLC can interoperate easily using a linked data approach which enables loosely-coupled integrations with improved quality, navigation and traceability of shared data.</p>
<p><strong><span style="font-size: small;">2. How would you like people or companies to contribute to the Eclipse Lyo project?</span></strong></p>
<p><span style="font-size: small;">Individuals and companies are welcome to participate in both the Eclipse Lyo project and in the OSLC workgroups.   The Lyo project is looking for developers interested in promoting OSLC adoption by developing SDKs, reference implementations, compliance tests and examples.   OSLC workgroups develop integration scenarios and specifications to address different aspects of the system and software lifecycle (requirements, development, test, etc).   Workgroup participation is open and is a great way to learn more about OSLC and contribute to new and evolving specifications.</span></p>
<p><strong><span style="font-size: small;">3. What is the best resource to start using OSLC and Eclipse Lyo?</span></strong></p>
<p><span style="font-size: small;">Getting started with Eclipse Lyo and OSLC is easy.  To get started with Lyo, visit the Wiki on </span><a href="http://eclipse.org/" target="_blank"><span style="color: blue; font-size: small;">eclipse.org</span></a><span style="font-size: small;"> (</span><a href="http://wiki.eclipse.org/Lyo" target="_blank"><span style="color: blue; font-size: small;">http://wiki.eclipse.org/Lyo</span></a><span style="font-size: small;">) to get an overview of the project.  To participate in Lyo development, you can start by introducing yourself on the development mailing list, </span><a href="mailto:lyo-dev@eclipse.org" target="_blank"><span style="color: blue; font-size: small;">lyo-dev@eclipse.org</span></a><span style="font-size: small;">.  To participate in OSLC, visit </span><a href="http://open-services.net/participate" target="_blank"><span style="color: blue; font-size: small;">http://open-services.net/participate</span></a><span style="font-size: small;"> and  join in the discussions on the forums, mailing lists and workgroup meetings.</span></p>
<p><a href="http://www.eclipsecon.org/2012/agilealm"><img alt="" class="aligncenter" height="100" src="http://www.eclipsecon.org/2012/sites/eclipsecon.org.2012/files/econ-agile130x100_speaking.gif?1315863548" title="Agile ALM Connect" width="130"/></a></p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/ianskerrett.wordpress.com/2243/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ianskerrett.wordpress.com/2243/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/ianskerrett.wordpress.com/2243/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ianskerrett.wordpress.com/2243/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/ianskerrett.wordpress.com/2243/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ianskerrett.wordpress.com/2243/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/ianskerrett.wordpress.com/2243/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ianskerrett.wordpress.com/2243/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/ianskerrett.wordpress.com/2243/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ianskerrett.wordpress.com/2243/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/ianskerrett.wordpress.com/2243/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ianskerrett.wordpress.com/2243/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/ianskerrett.wordpress.com/2243/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ianskerrett.wordpress.com/2243/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=ianskerrett.wordpress.com&amp;blog=405862&amp;post=2243&amp;subd=ianskerrett&amp;ref=&amp;feed=1" width="1"/><img height="1" src="http://feeds.feedburner.com/~r/IanSkerrett/~4/9nDJdv2UdMM" width="1"/></div>
    </content>
    <updated>2012-01-24T18:13:54Z</updated>
    <category term="eclipse"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://ianskerrett.wordpress.com/2012/01/24/integrating-lifecycle-tools-with-oslc-and-eclipse-lyo/</feedburner:origLink>
    <author>
      <name>Ian Skerrett</name>
    </author>
    <source>
      <id>http://ianskerrett.wordpress.com</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://ianskerrett.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://ianskerrett.wordpress.com/osd.xml" rel="search" title="Ian Skerrett" type="application/opensearchdescription+xml"/>
      <link href="http://feeds.feedburner.com/IanSkerrett" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://ianskerrett.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Marketing at Eclipse</subtitle>
      <title>Ian Skerrett</title>
      <updated>2012-01-31T07:04:05Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://waynebeaton.wordpress.com/?p=1827</id>
    <link href="http://waynebeaton.wordpress.com/2012/01/24/top-ten-ways-to-say-eclipse/" rel="alternate" type="text/html"/>
    <title>Top Ten Ways to Say Eclipse</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Every couple of days, I get an email from somebody looking for a price quote for Eclipse. Generally, the sender is a software reseller acting on behalf of a client. Sometimes they ask to partner with us, sometimes they just … <a href="http://waynebeaton.wordpress.com/2012/01/24/top-ten-ways-to-say-eclipse/">Continue reading <span class="meta-nav">→</span></a><img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=waynebeaton.wordpress.com&amp;blog=19425814&amp;post=1827&amp;subd=waynebeaton&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Every couple of days, I get an email from somebody looking for a price quote for Eclipse. Generally, the sender is a software reseller acting on behalf of a client. Sometimes they ask to partner with us, sometimes they just want a simple price quote. In all cases, I answer with some boilerplate text that I keep around:</p>
<blockquote><p>Eclipse is free and open source software that is distributed royalty-free under the terms of the <a href="http://www.eclipse.org/legal/epl/notice.php">Eclipse Software User Agreement</a>. Please let me know if we can be of further assistance.</p></blockquote>
<p>Now, the interesting thing for me, is the number of different product names people use to describe the thing that they want to buy. Here are a few of my favourites (in no particular order).</p>
<ul>
<li>Eclipse Foundation Eclipse Galileo SR1 3.5.1 EN 01</li>
<li>IDE License JAVA programming: Open Source</li>
<li>The “Eclipse” Software</li>
<li>“For a Better World” (an Eclipse Publication)</li>
<li>LTO Ultrium 5 1500 GB Data Cartridges</li>
<li>Eclipse Indigo (3.7) Packages for Mac OS</li>
<li>Eclipse + plug-in</li>
<li>ECLIPSE IDE for Java EE Developers 1.2.0.20090621-0820 epp.package.jee for Win7</li>
<li>ECLIPSE Practice Management Software/Medical Billing Software</li>
<li>SCA dev lab Software and SCA tools</li>
</ul>
<p>There’s a couple in there that seem to come out of nowhere, obviously from folks who have us confused with somebody else. Curiously, I get almost no email about <a href="http://www.eclipseselect.org/">soccer clubs</a> or vampires.</p>
<p><a href="http://www.eclipsecon.org/2012"><img alt="EclipseCon 2012" border="0" height="38" src="http://www.eclipsecon.org/2012/sites/eclipsecon.org.2012/files/138x38.png?1315863452" width="138"/></a><a href="http://www.eclipsecon.org/2012"><img alt="AGILEALM 2012" border="0" height="38" src="http://www.eclipsecon.org/2012/sites/eclipsecon.org.2012/files/logo138x38.gif?1315863452" width="138"/></a></p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/waynebeaton.wordpress.com/1827/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/waynebeaton.wordpress.com/1827/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/waynebeaton.wordpress.com/1827/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/waynebeaton.wordpress.com/1827/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/waynebeaton.wordpress.com/1827/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/waynebeaton.wordpress.com/1827/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/waynebeaton.wordpress.com/1827/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/waynebeaton.wordpress.com/1827/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/waynebeaton.wordpress.com/1827/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/waynebeaton.wordpress.com/1827/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/waynebeaton.wordpress.com/1827/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/waynebeaton.wordpress.com/1827/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/waynebeaton.wordpress.com/1827/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/waynebeaton.wordpress.com/1827/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=waynebeaton.wordpress.com&amp;blog=19425814&amp;post=1827&amp;subd=waynebeaton&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-24T15:39:25Z</updated>
    <category term="Community"/>
    <author>
      <name>waynebeaton</name>
    </author>
    <source>
      <id>http://waynebeaton.wordpress.com</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://waynebeaton.wordpress.com/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://waynebeaton.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://waynebeaton.wordpress.com/osd.xml" rel="search" title="Eclipse Hints, Tips, and Random Musings" type="application/opensearchdescription+xml"/>
      <link href="http://waynebeaton.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Wayne's Eclipse Blog</subtitle>
      <title>Eclipse Hints, Tips, and Random Musings</title>
      <updated>2012-02-04T04:49:02Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-4243137685413731189.post-4314572278862143973</id>
    <link href="http://www.thomaskratz.name/feeds/4314572278862143973/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=4243137685413731189&amp;postID=4314572278862143973" rel="replies" title="4 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/4243137685413731189/posts/default/4314572278862143973" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/4243137685413731189/posts/default/4314572278862143973" rel="self" type="application/atom+xml"/>
    <link href="http://www.thomaskratz.name/2012/01/richt-text-editor-for-eclipseswt.html" rel="alternate" title="Richt Text Editor for Eclipse/SWT" type="text/html"/>
    <title>Richt Text Editor for Eclipse/SWT</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">I have been looking around, but a feasible Rich Text Editor for SWT seems to be hard to find. I finally came accross the FCKEditor integration from the JFire/Nightlabs guys. They do not promote it, but it works fine for me. I had to grab some dependencies from different repos at nightlabs and make some hacks to make it play nice with the Rest of my app, but it looks stable and works on all platforms (some other editor needs a xulrunner, thats still messy on 64bit platforms) as it uses the Browser widget to render FCKEditor.<br/><br/><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-jnpqIi74QII/Tx6whmBxiyI/AAAAAAAADZk/EDFEF4I-GeI/s1600/richtexteditor.PNG" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="358" src="http://4.bp.blogspot.com/-jnpqIi74QII/Tx6whmBxiyI/AAAAAAAADZk/EDFEF4I-GeI/s400/richtexteditor.PNG" width="400"/></a></div><br/>Customized FCKEditor in an eclipse e4 RCP app.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/4243137685413731189-4314572278862143973?l=www.thomaskratz.name" width="1"/></div></div>
    </content>
    <updated>2012-01-24T13:24:32Z</updated>
    <published>2012-01-24T13:24:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="rich text editor"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="fckeditor"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="jfire"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="swt"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="nightlabs"/>
    <author>
      <name>Thomas Kratz</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-4243137685413731189</id>
      <category term="mobile"/>
      <category term="p2"/>
      <category term="jxpath"/>
      <category term="provider"/>
      <category term="installation"/>
      <category term="Allgemein"/>
      <category term="web"/>
      <category term="bug"/>
      <category term="legacy"/>
      <category term="jenkins"/>
      <category term="EMF"/>
      <category term="AppEngine"/>
      <category term="connectbot"/>
      <category term="gwt"/>
      <category term="stammtisch"/>
      <category term="verlagssoftware"/>
      <category term="client-side-caching"/>
      <category term="ecf"/>
      <category term="open source"/>
      <category term="hamburg"/>
      <category term="softskills"/>
      <category term="query"/>
      <category term="equinox"/>
      <category term="motivation"/>
      <category term="webstart"/>
      <category term="job"/>
      <category term="osgi"/>
      <category term="auditing"/>
      <category term="cloudbees"/>
      <category term="buckminster"/>
      <category term="fckeditor"/>
      <category term="vysper"/>
      <category term="spring"/>
      <category term="enterprise"/>
      <category term="installer"/>
      <category term="ci"/>
      <category term="bundlewiring"/>
      <category term="eclipse"/>
      <category term="rich text editor"/>
      <category term="jasper"/>
      <category term="dnd"/>
      <category term="virgo"/>
      <category term="wave"/>
      <category term="learning"/>
      <category term="apache"/>
      <category term="java7"/>
      <category term="i18n"/>
      <category term="hibernate"/>
      <category term="google wave"/>
      <category term="user experience"/>
      <category term="nightlabs"/>
      <category term="eclipsecon"/>
      <category term="java"/>
      <category term="xmpp"/>
      <category term="cloud computing"/>
      <category term="hostloco"/>
      <category term="startup"/>
      <category term="jdo"/>
      <category term="deployment"/>
      <category term="remote"/>
      <category term="client-server"/>
      <category term="migration"/>
      <category term="lucene"/>
      <category term="ssh"/>
      <category term="hudson"/>
      <category term="ese"/>
      <category term="swt"/>
      <category term="envers"/>
      <category term="publishing"/>
      <category term="rcp"/>
      <category term="outlook"/>
      <category term="enterpise applications"/>
      <category term="ui"/>
      <category term="android"/>
      <category term="eiswind"/>
      <category term="build"/>
      <category term="jpa"/>
      <category term="book publishing software"/>
      <category term="coding"/>
      <category term="search"/>
      <category term="buchmanager"/>
      <category term="rich client"/>
      <category term="architecture"/>
      <category term="rap"/>
      <category term="pde"/>
      <category term="onix"/>
      <category term="e4"/>
      <category term="zip"/>
      <category term="jfire"/>
      <author>
        <name>Thomas Kratz</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://www.thomaskratz.name/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/4243137685413731189/posts/default/-/eclipse" rel="self" type="application/atom+xml"/>
      <link href="http://www.thomaskratz.name/search/label/eclipse" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/4243137685413731189/posts/default/-/eclipse/-/eclipse?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>Fearless software architectures</subtitle>
      <title>Thomas Kratz</title>
      <updated>2012-01-24T16:44:17Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://live.eclipse.org/1088 at http://live.eclipse.org</id>
    <link href="http://live.eclipse.org/node/1088" rel="alternate" type="text/html"/>
    <title>Upcoming Event: Webinar: Transforming development visibility and productivity with Borland StarTeam 12.0 and Tasktop</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Event Date: February 7, 2012 8:00 am GMT-8<br/><br/><a href="http://mkto-n0083.com/track?type=click&amp;enid=bWFpbGluZ2lkPXRhc2t0b3BCZXRhY3VzdC0tLS0xMDA1LXByb2QtMTAmbWVzc2FnZWlkPTAmZGF0YWJhc2VpZD0xMCZzZXJpYWw9MTI2NDY3Nzk0MiZlbWFpbGlkPWRvbWluaWthLmxhY2thQHRhc2t0b3AuY29tJnVzZXJpZD0wJmV4dHJhPSYmJg==&amp;&amp;&amp;http://www.microfocu">Register Now</a><br/><br/>   

<div class="field field-type-text field-field-author" id="author">
  <span class="field-item">Mik Kersten, Founder of Eclipse Mylyn, CEO Tasktop Technologies &amp; Stuart McGill, Borland General Manager</span>
</div>

<div class="resource-icon"><img border="0" src="http://live.eclipse.org/files/ECLP_demo_v2_0.gif"/> </div>  

<div id="abstract">
	<span class="field-label">Abstract:</span>  
	<div class="field field-type-text field-field-author">
	  <span class="field-item">StarTeam 12 is here with full Tasktop Dev and Sync support. The new StarTeam release, together with Tasktop, includes a host of new features designed to benefit both developers and management.

Now it is easier than ever to extend the interoperability and co-existence between ALM tools and asset types across software development teams, while management benefit from improved insight into delivery goals and their predictability.

In this webinar you will discover the benefits of our new collaboration, and:

*  Discover how StarTeam customers benefit from Borland's strategic partnership with Tasktop
*  Learn how Tasktop Sync delivers visibility by integrating StarTeam with your other ALM tools
*  See how developers get the most modern and integrated experience for StarTeam with Tasktop Dev
</span><br/>
	  <span class="field-item"><a href="http://del.icio.us/post?url=http%3A%2F%2Flive.eclipse.org%2Fnode%2F19&amp;title=Demo%2FVideo" rel="nofollow" title="Bookmark this post on del.icio.us."><img alt="delicious" src="http://live.eclipse.org/modules/service_links/delicious.png"/> delicious</a> | <a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Flive.eclipse.org%2Fnode%2F19&amp;title=Demo%2FVideo" rel="nofollow" title="Digg this post on digg.com."><img alt="digg" src="http://live.eclipse.org/modules/service_links/digg.png"/> digg</a> | <a href="http://www.dzone.com/links/add.html?url=http%3A%2F%2Flive.eclipse.org%2Fnode%2F19&amp;title=Demo%2FVideo" rel="nofollow" title="Tag this post on DZone."><img alt="dzone" src="http://live.eclipse.org/modules/service_links/dzone.png"/> dzone</a></span>
	</div>
	
</div>

<div id="embedded">
	  </div>





</div>
    </summary>
    <updated>2012-01-24T09:37:11Z</updated>
    <category scheme="http://live.eclipse.org/node/22" term="Member"/>
    <category scheme="http://live.eclipse.org/node/19" term="Demo/Video"/>
    <category scheme="http://live.eclipse.org/node/765" term="Galileo"/>
    <category scheme="http://live.eclipse.org/node/542" term="Ganymede"/>
    <category scheme="http://live.eclipse.org/node/887" term="Helios"/>
    <category scheme="http://live.eclipse.org/node/129" term="IDE"/>
    <category scheme="http://live.eclipse.org/node/14" term="English"/>
    <author>
      <name>EclipseLive</name>
      <email>dominika.lacka@tasktop.com</email>
    </author>
    <source>
      <id>http://live.eclipse.org/eclipse_live_upcoming</id>
      <link href="http://live.eclipse.org/eclipse_live_upcoming" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/eclipselive" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <title>Eclipse Live New and Upcoming Resources</title>
      <updated>2012-01-26T17:16:11Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://webtide.intalio.com/?p=885</id>
    <link href="http://webtide.intalio.com/2012/01/i-jetty-3-1-released/" rel="alternate" type="text/html"/>
    <title>i-jetty 3.1 Released</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Release 3.1 of i-jetty for Android is now available from the Android Market and the i-jetty download page. This release updates the embedded Jetty to jetty-7.6.0.RC4, although the majority of the changes have been to the Console, which is a webapp that allows you to interact with your Android device from a remote browser. Higlights include: pagination of large data … <a href="http://webtide.intalio.com/2012/01/i-jetty-3-1-released/">Continue reading <span class="meta-nav">→</span></a></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Release 3.1 of <a href="http://code.google.com/p/i-jetty">i-jetty</a> for Android is now available from the <a href="http://market.android.com">Android Market</a> and the i-jetty <a href="http://code.google.com/p/i-jetty/downloads/list">download page</a>.</p>
<p>This release updates the embedded Jetty to jetty-7.6.0.RC4, although the majority of the changes have been to the <a href="http://code.google.com/p/i-jetty/wiki/ConsoleWebApplication">Console</a>, which is a webapp that allows you to interact with your Android device from a remote browser.</p>
<p>Higlights include:</p>
<ul>
<li> pagination of large data sets such as Contacts and Media thumbnails (images, videos) </li>
<li> re-implementation of generated content as json &amp; ajax REST</li>
<li> ability to cause the device to ring (helpful for finding it around the house!)</li>
<li> ability to show current location of the Android device on Google maps , or track its location on the map as the device moves.</li>
</ul>
<p>Here’s a screenshot showing tracking my phone as it moves from the Sydney Opera House to Fort Denison on Sydney Harbour:</p>
<div class="wp-caption aligncenter" id="attachment_893" style="width: 600px;"><a href="http://webtide.intalio.com/wp-content/uploads/2012/01/screenshot1.png"><img alt="Tracking phone via i-jetty console webapp" class="size-full wp-image-893" height="915" src="http://webtide.intalio.com/wp-content/uploads/2012/01/screenshot1.png" title="screenshot" width="590"/></a><p class="wp-caption-text">Tracking phone via i-jetty console webapp</p></div>
<p>Enjoy.</p></div>
    </content>
    <updated>2012-01-24T04:26:56Z</updated>
    <category term="i-jetty"/>
    <author>
      <name>janb</name>
    </author>
    <source>
      <id>http://webtide.intalio.com</id>
      <link href="http://webtide.intalio.com/category/jetty-2/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://webtide.intalio.com" rel="alternate" type="text/html"/>
      <subtitle>Blogs from the developers of Jetty &amp; Cometd</subtitle>
      <title>Webtide Blogs » Jetty</title>
      <updated>2012-01-24T04:39:58Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-18772002.post-8727312005211362437</id>
    <link href="http://www.osgi.org/blog/feeds/8727312005211362437/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=18772002&amp;postID=8727312005211362437&amp;isPopup=true" rel="replies" title="3 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/18772002/posts/default/8727312005211362437" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/18772002/posts/default/8727312005211362437" rel="self" type="application/atom+xml"/>
    <link href="http://www.osgi.org/blog/2012/01/objects-revisited.html" rel="alternate" title="Objects Revisited" type="text/html"/>
    <title>Objects Revisited</title>
    <summary>Alan Kay is the  inventor of Smalltalk, the first fully truly object oriented language. I learned Smalltalk in the early eighties and almost everyday that I use Java I am crunching my teeth that James Gosling did not steal more ideas from Smalltalk. About 20 years ago, during an OOPSLA, Alan Kay presented the idea that data should always carry its own methods to access that data. His example was</summary>
    <updated>2012-01-23T08:56:00Z</updated>
    <published>2012-01-23T08:56:00Z</published>
    <author>
      <name>Peter Kriens</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/11373850803487010328</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-18772002</id>
      <category term="osgi qcon eclipsecon interface21 grails hibernate quartz"/>
      <category term="embedded"/>
      <category term="felix"/>
      <category term="eclipse osgi"/>
      <category term="osgi"/>
      <category term="eeg osgi sca j2ee jee"/>
      <category term="eclipsecon"/>
      <category term="jsr 294"/>
      <category term="superpackages"/>
      <category term="summer school"/>
      <category term="object oriented oo component design software osgi structured coupling soa webservices"/>
      <category term="bretagne"/>
      <category term="france"/>
      <category term="eclipse"/>
      <category term="modules"/>
      <category term="osgi hibernate felix equinox eclipse knopflerfish sql"/>
      <category term="c++"/>
      <category term="native code"/>
      <category term="jsr 277"/>
      <author>
        <name>OSGi Alliance</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/03796133538243294756</uri>
      </author>
      <link href="http://www.osgi.org/blog/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/18772002/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://www.osgi.org/blog/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/18772002/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>OSGi Alliance Blog</title>
      <updated>2012-02-01T13:48:37Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://wagenknecht.org/blog/?p=411</id>
    <link href="http://wagenknecht.org/blog/archives/2012/01/use-target-definition-files-in-pde-build.html" rel="alternate" type="text/html"/>
    <title>Use Target Definition Files in PDE Build</title>
    <summary>I’m not hip when it comes to building Eclipse based products. I still use plain vanilla PDE Build. The cool guys all switched to Tycho. Well, you’re allowed to call me dinosaur then. Anyway, I’ve been using .target files as a source for dependency management for quite a while now. They are very useful in [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>I’m not hip when it comes to building Eclipse based products. I still use plain vanilla PDE Build. The cool guys all switched to Tycho. Well, you’re allowed to call me dinosaur then. Anyway, I’ve been using <code>.target</code> files as a source for dependency management for quite a while now. They are very useful in Eclipse. All dependencies for all the bundles are defined in one place. You simply open one and Eclipse starts downloading one half of the Internet. Maven already did the other half, I’ve heard.</p>
<p>I also use them to drive PDE Build. Instead of specifying stuff to fetch for a build again I simply point PDE Build to the same <code>.target</code> file I use in the IDE. Works like a charm as long as you only use “Software Sites” (p2 repositories) which are accessible via URL by any developers Eclipse instance as well as the build machine.</p>
<p>Previously, this was implemented by transforming the <code>.target</code> file XML using XSL into an Ant script. The Ant script did a bunch of p2 mirror calls to download the bytes. I recently upgrade to a newer version of the builder containing a Juno version of the org.eclipse.pde.core bundle. Starting with 3.8 this bundle defines a nice Ant task that does not require the XSLT magic.</p>
<pre>&lt;target name="buildTargetPlatform" unless="skipTargetDefinition"&gt;
  &lt;!-- note: this requires pde.core (from Juno) in the base builder --&gt;
  &lt;<strong>pde.provisionTargetDefinition</strong>
      targetFile="/path/to/my.target"
      destinationDirectory="${repoBaseLocation}/target"
      clearDestination="false"/&gt;
&lt;/target&gt;</pre>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://wagenknecht.org/blog/archives/2012/01/use-target-definition-files-in-pde-build.html" target="_blank"><img alt="Share on Facebook" src="http://wagenknecht.org/blog/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" title="Share on Facebook"/></a></p></div>
    </content>
    <updated>2012-01-21T21:26:14Z</updated>
    <category term="Eclipse"/>
    <category term="Build"/>
    <category term="PDE"/>
    <author>
      <name>Gunnar Wagenknecht</name>
    </author>
    <source>
      <id>http://wagenknecht.org/blog</id>
      <link href="http://wagenknecht.org/blog" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/eclipseguru" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Me, my family, whatever I like, whatever I want to write about!</subtitle>
      <title>Gunnar's Weblog</title>
      <updated>2012-01-21T21:50:20Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://pror.org/91 at http://pror.org</id>
    <link href="http://pror.org/content/pror-snapshot-build-available" rel="alternate" type="text/html"/>
    <title>ProR Snapshot Build available</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>
	Good news to everyone interested in ProR - we finally have a snapshot build available on the RMF website.  If you are interested in ProR, <abbr title="Requirements Interchange Format.  Follow-up format to RIF.  Currently an RFC by the OMG.  "><a class="glossary-term" href="http://pror.org/category/glossary/reqif">ReqIF</a></abbr>, etc., <a href="http://eclipse.org/rmf/download.php">please give it a spin</a>.</p>
<p>
	<a href="http://eclipse.org/rmf/download.php"><img alt="" src="http://www.formalmind.com/sites/default/files/blog/pror-start.png" style="width: 330px; height: 228px; border-width: 0pt; border-style: solid; float: left;"/></a>The <a href="http://pror.org/../../content/last-pror-release-migration-eclipse-foundation-core-900">last release took place in August 2011</a> - an eternity ago, as far as software is concerned.  The reason for this long delay had been announced before: We migrated ProR to Eclipse, where it became the GUI for the <a href="http://eclipse.org/rmf">Requirements Modeling Framework (RMF)</a>.  Becoming an Eclipse Foundation process is a huge endeavor: A project has to undergo a comprehensive intellectual property review, and once migrated, there are strict rules to ensure that all IP is accounted for.  As if this is not enough, we also performed some major refactoring of the code base.</p>
<p>
	<a href="http://www.formalmind.com/en/blog/pror-snapshot-build-available">Read the rest at the Formal Mind Blog</a></p></div>
    </summary>
    <updated>2012-01-20T21:29:35Z</updated>
    <category scheme="http://pror.org/category/blog/eclipse" term="Eclipse"/>
    <category scheme="http://pror.org/category/newsletter/pror-newsletter" term="ProR Newsletter"/>
    <category scheme="http://pror.org/category/blog/release" term="Release"/>
    <author>
      <name>jastram</name>
    </author>
    <source>
      <id>http://pror.org/</id>
      <link href="http://pror.org/" rel="alternate" type="text/html"/>
      <link href="http://pror.org/rss.xml" rel="self" type="application/rss+xml"/>
      <title>ProR - Requirements Engineering Platform</title>
      <updated>2012-02-04T04:50:00Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-18834385.post-8737986190907623571</id>
    <link href="http://blog.bjhargrave.com/feeds/8737986190907623571/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=18834385&amp;postID=8737986190907623571" rel="replies" title="0 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/18834385/posts/default/8737986190907623571" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/18834385/posts/default/8737986190907623571" rel="self" type="application/atom+xml"/>
    <link href="http://blog.bjhargrave.com/2012/01/juke-box-hero-got-stars-in-his-eyes.html" rel="alternate" title="Juke Box Hero, Got Stars In His Eyes" type="text/html"/>
    <title>Juke Box Hero, Got Stars In His Eyes</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><img alt="" border="0" src="http://java.sun.com/javaone/images/RockStar_DukewithGuitar_small.gif" style="float: left; margin: 0 10px 10px 0; width: 150px; height: 128px;"/><br/>I learned Wednesday that I was named a <a href="http://www.oracle.com/javaone/quick-links/rock-star/2011-rock-stars-1453436.html">JavaOne Rock Star</a> for my <a href="http://www.slideshare.net/bjhargrave/why-osgi"><span style="font-style: italic;">Why OSGi?</span></a> presentation with <a href="https://twitter.com/#%21/pkriens">Peter Kriens</a> at JavaOne 2011. Nice!<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/18834385-8737986190907623571?l=blog.bjhargrave.com" width="1"/></div></div>
    </content>
    <updated>2012-01-20T19:24:23Z</updated>
    <published>2012-01-20T19:14:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="javaone"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="osgi"/>
    <author>
      <name>BJ Hargrave</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/05791451307210957698</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-18834385</id>
      <category term="mobile"/>
      <category term="jsr294"/>
      <category term="yahoo"/>
      <category term="java posse"/>
      <category term="gsoc"/>
      <category term="osgi"/>
      <category term="planet"/>
      <category term="eclipsecon"/>
      <category term="java"/>
      <category term="javaone"/>
      <category term="mac"/>
      <category term="modularity"/>
      <category term="classloading"/>
      <category term="eclipse"/>
      <category term="bnd"/>
      <category term="oredev"/>
      <category term="semantic versioning"/>
      <category term="pipes"/>
      <category term="bndtools"/>
      <category term="equinox"/>
      <author>
        <name>BJ Hargrave</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/05791451307210957698</uri>
      </author>
      <link href="http://blog.bjhargrave.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/18834385/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://blog.bjhargrave.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/18834385/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>Delusional thoughts on Java, OSGi, Eclipse and other things</subtitle>
      <title>The Programming Delusion</title>
      <updated>2012-01-27T15:31:07Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-731582289934443001.post-3122922504902929111</id>
    <link href="http://www.blogger.com/feeds/731582289934443001/posts/default/3122922504902929111?v=2" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/731582289934443001/posts/default/3122922504902929111?v=2" rel="self" type="application/atom+xml"/>
    <link href="http://feedproxy.google.com/~r/PerlipseDevelopment/~3/OSTimTmbNCQ/happy-2012.html" rel="alternate" title="happy 2012" type="text/html"/>
    <title>happy 2012</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>greetings and salutations in the year 2012! after a very, very long hiatus, development work on perlipse has resumed.</p>
<p>stay tuned for further updates!</p><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/731582289934443001-3122922504902929111?l=perlipse.blogspot.com" width="1"/></div><img height="1" src="http://feeds.feedburner.com/~r/PerlipseDevelopment/~4/OSTimTmbNCQ" width="1"/></div>
    </content>
    <updated>2012-01-20T16:35:00Z</updated>
    <published>2012-01-20T16:35:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="perlipse"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://perlipse.blogspot.com/2012/01/happy-2012.html</feedburner:origLink>
    <author>
      <name>Jae Gangemi</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-731582289934443001</id>
      <category term="ruby"/>
      <category term="perlipse"/>
      <category term="dbgp"/>
      <category term="eclipse"/>
      <category term="dltk"/>
      <category term="javascript"/>
      <category term="python"/>
      <category term="perl"/>
      <author>
        <name>Jae Gangemi</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://perlipse.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://perlipse.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://www.blogger.com/feeds/731582289934443001/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" rel="next" type="application/atom+xml"/>
      <link href="http://feeds.feedburner.com/PerlipseDevelopment" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <title>Perlipse Development</title>
      <updated>2012-01-26T15:12:44Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-3658502096185788177.post-4442862461630548242</id>
    <link href="http://eclipsemde.blogspot.com/feeds/4442862461630548242/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://eclipsemde.blogspot.com/2012/01/traceability-test-case-uml-to-java.html#comment-form" rel="replies" title="0 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/3658502096185788177/posts/default/4442862461630548242" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/3658502096185788177/posts/default/4442862461630548242" rel="self" type="application/atom+xml"/>
    <link href="http://eclipsemde.blogspot.com/2012/01/traceability-test-case-uml-to-java.html" rel="alternate" title="Traceability test case : UML to Java generation" type="text/html"/>
    <title>Traceability test case : UML to Java generation</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">The next version of Acceleo will introduce a number of improvements of its existing features, one of its most important, the automatic builder, being entirely re-written in order to get rid of legacy code and improve the user experience. This also comes with a much better experience for users that need to build their Acceleo generators in standalone, through maven or tycho. More news on this are available on the <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=363651">bugzilla</a> and <a href="http://sbegaudeau.tumblr.com/post/16059815253/maven-integration-in-acceleo">Stephane's latest post</a>.<br/><br/>One of the least visible features, yet one I find among the most interesting aspects of the Acceleo code generator, is the traceability between the generated code, the model used as input of the generation, and the generator itself. Basically, you always know where that esoteric line of code came from : which part of the generation template generated it, and which model element triggered its generation.<br/><br/>This feature has known a series of improvements as we used it intensively with the <a href="http://marketplace.eclipse.org/content/uml-java-generator">UML to java generator</a>. We are now confident that we can record and display accurate information even for some of the most complex use cases. This generator isn't the most complex generator we could write with Acceleo, but it is quite complete nonetheless. Here are some examples of what the Traceability can provide to architects developping their code generators :<br/><br/><b>Determine which model element triggered the generation of a line of code</b><br/><br/><div class="separator" style="clear: both; text-align: center;"/><br/>On the left-hand side, a file that has been generated. On the right-hand side, an editor opened as result of using the action "open input" : the model is opened and the exact element that was used to generate the part of code is selected.<br/><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-IYrF4PRCLAc/TxlAVE8vrvI/AAAAAAAAALQ/Yh642A2hZK8/s1600/OpenInput.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="216" src="http://2.bp.blogspot.com/-IYrF4PRCLAc/TxlAVE8vrvI/AAAAAAAAALQ/Yh642A2hZK8/s320/OpenInput.jpg" width="320"/></a></div><br/><b>Find the part of a generator that created a given part of the code</b><br/><br/>On the left-hand side, the same generated file as above. On the right-hand side, the result of using the "open generator" action : the Acceleo generator which generated that selected part of the code is opened, with the exact source expression selected.<br/><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-TNlVKzHTpi4/TxlHJ8BkfnI/AAAAAAAAALY/w_uUdkp3US4/s1600/OpenGenerator.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="216" src="http://4.bp.blogspot.com/-TNlVKzHTpi4/TxlHJ8BkfnI/AAAAAAAAALY/w_uUdkp3US4/s320/OpenGenerator.jpg" width="320"/></a></div><br/><b>Real-time Synchronization</b><br/><br/><br/><br/>These are but a few of the features that can be derived from the synchronization between code, model, and generators. Some more examples include : previewing the result of a re-generation, incremental generation, round-trip (updating the input model according to manual changes in the output generated code)...<br/><br/>Most of these features are better seen in video to get an idea. If you want to see some of them in action, some more flash videos of what traceability can do for you are available on the <a href="http://www.obeonetwork.com/page/obeo-traceability">Obeo network</a> (though a free registration is required).<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/3658502096185788177-4442862461630548242?l=eclipsemde.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-20T14:04:34Z</updated>
    <published>2012-01-20T14:04:00Z</published>
    <author>
      <name>Laurent Goubet</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/05605492202750997843</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-3658502096185788177</id>
      <author>
        <name>Laurent Goubet</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/05605492202750997843</uri>
      </author>
      <link href="http://eclipsemde.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/3658502096185788177/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://eclipsemde.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/3658502096185788177/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>Eclipse mde</title>
      <updated>2012-01-20T14:04:34Z</updated>
    </source>
  </entry>

  <entry xml:lang="en-us">
    <id>http://www.jroller.com/andyl/entry/eclipse_job_in_b%C3%B6blingen</id>
    <link href="http://www.jroller.com/andyl/entry/eclipse_job_in_b%C3%B6blingen" rel="alternate" type="text/html"/>
    <title>Eclipse job in Böblingen</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>
<b>We (<a href="http://www.verigy.com">Verigy</a>) have a <a href="https://plus.google.com/u/0/113794713998126448910/posts/g8F7E8nmPHF">job opening</a></b> for a Java / Eclipse developer in <b><a href="http://maps.google.de/maps?q=B%C3%B6blingen&amp;ie=UTF8&amp;oe=utf-8&amp;channel=suggest&amp;hnear=B%C3%B6blingen,+Stuttgart,+Baden-W%C3%BCrttemberg&amp;gl=de&amp;t=m&amp;z=12&amp;vpsrc=0">Böblingen / Germany</a></b>. Details on <b><a href="https://plus.google.com/u/0/113794713998126448910/posts/g8F7E8nmPHF">G+</a></b>.</p></div>
    </summary>
    <updated>2012-01-20T13:26:14Z</updated>
    <category term="Java"/>
    <category term="b&#xF6;blingen"/>
    <category term="eclipse"/>
    <category term="germany"/>
    <category term="java"/>
    <category term="job"/>
    <author>
      <name>Andrey Loskutov</name>
    </author>
    <source>
      <id>http://www.jroller.com/andyl/</id>
      <link href="http://www.jroller.com/andyl/" rel="alternate" type="text/html"/>
      <link href="http://www.jroller.com/andyl/feed/entries/rss" rel="self" type="application/rss+xml"/>
      <rights>Copyright 2012</rights>
      <subtitle>(Andrey Loskutov sein Weblog)</subtitle>
      <title>Just code</title>
      <updated>2012-02-04T04:50:51Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://wagenknecht.org/blog/?p=406</id>
    <link href="http://wagenknecht.org/blog/archives/2012/01/upcoming-events.html" rel="alternate" type="text/html"/>
    <title>Upcoming Events</title>
    <summary>I know some of you already finished planning for the next few months. There are a couple of interesting events I’ll attend which might be of interest for you. Thus, I thought sharing won’t hurt. FOSDEM (Feb. 4 – 5, Brussels, Belgium) I’ve never been in Brussels before. I’ve also never been at FOSDEM before. Andrew told me about his plan [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>I know some of you already finished planning for the next few months. There are a couple of interesting events I’ll attend which might be of interest for you. Thus, I thought sharing won’t hurt.</p>
<h3>FOSDEM (Feb. 4 – 5, Brussels, Belgium)</h3>
<p>I’ve never been in Brussels before. I’ve also never been at <a href="http://fosdem.org/" target="_blank" title="Open FOSDEM website.">FOSDEM</a> before. <a href="http://overholt.ca/wp/" target="_blank" title="Open Andrew's blog">Andrew</a> told me about his plan to generate some nice Eclipse buzz there. Well, it looks like that will turn out great. <a href="http://mmilinkov.wordpress.com/" target="_blank" title="Open Mike's blog.">Mike</a> will be there too. We’ll have an Eclipse stand for people to show some projects and talks about Eclipse and we’ll also give a few talks about Eclipse. Mine will be about <a href="http://www.eclipse.org/rt/" target="_blank" title="Open EclipseRT website.">EclipseRT</a>.</p>
<h3>EclipseCon (March 26 – 29, Reston, Virginia, USA)</h3>
<p>Ok, this one is a classic (for me). I’ve been there before. You gotta have to be there! However, this year my flight to <a href="http://www.eclipsecon.org/" target="_blank" title="Open EclipseCon website.">EclipseCon</a> will be shorter. The event moved from the west coast to the east coast. Frankly, I always wondered about switching location away from Santa Clara. But I’ll also miss San Francisco. It’s a beautiful city always worth a visit. Yet it took me three EclipseCons until I finally visited it in 2009 for the first time. I may need to find a new event in that area. <img alt=";)" class="wp-smiley" src="http://wagenknecht.org/blog/wp-includes/images/smilies/icon_wink.gif"/>  Anyway, I’ll give one of the <a href="http://www.eclipsecon.org/2012/program/session-schedule/tutorials" target="_blank" title="Open EclipseCon tutorial schedule.">many tutorials</a> there (<em><a href="http://www.eclipsecon.org/2012/sessions/dynamic-server-applications-eclipsert" target="_blank" title="Open tutorial info.">Dynamic Server Applications with EclipseRT</a></em>).</p>
<h3>JAX (April 16-20, Mainz, Germany)</h3>
<p>Also bit of a classic, I like that event. It’s packed with lots of sessions and people. I’ll talk about developing cloud applications with Eclipse <a href="http://www.eclipse.org/gyrex/" target="_blank" title="Open Gyrex website.">Gyrex</a>. Our first major version (1.0) is only weeks away and that talk will be a great opportunity to learn more about Gyrex and see how we use it to solve some interesting problems.</p>
<p>Hope to see you soon at any of the events!</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://wagenknecht.org/blog/archives/2012/01/upcoming-events.html" target="_blank"><img alt="Share on Facebook" src="http://wagenknecht.org/blog/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" title="Share on Facebook"/></a></p></div>
    </content>
    <updated>2012-01-20T08:19:57Z</updated>
    <category term="Eclipse"/>
    <category term="EclipseCon"/>
    <category term="Travel"/>
    <category term="FOSDEM"/>
    <category term="Fun"/>
    <category term="JAX"/>
    <category term="speaking"/>
    <author>
      <name>Gunnar Wagenknecht</name>
    </author>
    <source>
      <id>http://wagenknecht.org/blog</id>
      <link href="http://wagenknecht.org/blog" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/eclipseguru" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Me, my family, whatever I like, whatever I want to write about!</subtitle>
      <title>Gunnar's Weblog</title>
      <updated>2012-01-21T21:50:20Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-1495223311988358528.post-7589494370723300561</id>
    <link href="http://koehnlein.blogspot.com/feeds/7589494370723300561/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=1495223311988358528&amp;postID=7589494370723300561" rel="replies" title="1 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/1495223311988358528/posts/default/7589494370723300561" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/1495223311988358528/posts/default/7589494370723300561" rel="self" type="application/atom+xml"/>
    <link href="http://koehnlein.blogspot.com/2012/01/multitouch-gestures-in-generic-graph.html" rel="alternate" title="Multitouch Gestures in the Generic Graph View" type="text/html"/>
    <title>Multitouch Gestures in the Generic Graph View</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">In my <a href="http://koehnlein.blogspot.com/2012/01/discovery-diagrams-for-generic.html">previous post</a>, I've already described the discovery mechanisms of the <a href="https://github.com/JanKoehnlein/Generic-Graph-View">Generic Graphical View</a> project: Starting from one node you can step by step reveal other connected nodes in the same model. The model itself is fixed - it is still a view! - but the user can decide herself which subset of elements should appear in the diagram. That behavor allows to create diagram views focussed on a specific semantic aspect of the model.<br/><br/>The challenge is to find a decent UI for nodes wich have several hidden connections. How should a user select any subset of these?<br/><br/>Since the Helios release SWT supports four multitouch gestures: <span style="font-style: italic;">PAN</span>, <span style="font-style: italic;">ZOOM</span>, <span style="font-style: italic;">SWIPE</span> and <span style="font-style: italic;">ROTATE</span>. On my Mac's touchpad these gestures are actually easier to perform than a conventional drag operation because there is no extra mouse button. So I decided to give it a try and have a look how gestures could be used in the graph view. Here is a screencast showing the results:<br/><br/><br/><br/>SWT's multitouch API is fairly simple (<a href="http://dev.eclipse.org/viewcvs/viewvc.cgi/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet353.java?view=co">example snippet</a>). The first step was to add multitouch events to GEF, such that the can be handled in the same way as mouse or keyboard events. I had to extend a couple of GEF classes. If you're interested in the details, have a look at the classes in the package <a href="https://github.com/JanKoehnlein/Generic-Graph-View/tree/master/org.eclipse.xtext.graphview/src/org/eclipse/xtext/graphview/behavior/gestures"><span style="font-family: arial;">org.eclipse.xtext.graphview.behavior.gestures</span></a> and the <a href="https://github.com/JanKoehnlein/Generic-Graph-View/blob/master/org.eclipse.xtext.graphview/src/org/eclipse/xtext/graphview/editpart/GraphViewRootEditPart.java"><span style="font-family: arial;">GraphViewRootEditPart</span></a>.<br/><br/>These changes allow to use a <span style="font-style: italic;">ZOOM</span> gesture on a <span style="font-family: arial;">ScalableFreeformRootEditPart</span>.<br/>Note that the <span style="font-style: italic;">PAN</span> gesture is already supported by GEF because the <span style="font-family: arial;">FigureCanvas</span> uses hardware scrolling. Unfortunately, these event is always consumed, such that it will not make it through to other GEF elements.<br/><br/>The <span style="font-style: italic;">ZOOM</span> gesture can also be used to drill down into elements. If the mapping defines an open reference to another diagram, you can drill down by selecting it and performing the <span style="font-style: italic;">ZOOM</span> in gesture. If you‘re inside a drill down diagram, you can <span style="font-style: italic;">ZOOM</span> out into the container diagram.<br/><br/>Any <span style="font-family: arial;">Tool</span> can now handle multitouch gestures by implementing the <span style="font-family: arial;">IViewerGestureHandler</span> interface. For a <span style="font-family: arial;">DragTracker</span> this makes no sense, as it is exited as soon as the mouse key is released and you cannot start a drag and a multitouch gesture simultaneously.<br/><br/>The <span style="font-family: arial;">RevealGestureTool</span> works as follows: Click on the + button to reveal the hidden connected elements, Then use <span style="font-style: italic;">ROTATE</span> or <span style="font-style: italic;">SWIPE</span> to rotate elements, <span style="font-style: italic;">ZOOM</span> to change the distance and right-click to select and pin individual elements. Another click will commit the input.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/1495223311988358528-7589494370723300561?l=koehnlein.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-20T06:28:04Z</updated>
    <published>2012-01-18T16:19:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="Graphics"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="DSL"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Xbase"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Xtext"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Visualisation"/>
    <author>
      <name>Jan Köhnlein</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/02520748795681285494</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-1495223311988358528</id>
      <category term="MDSD conference oAW MDA"/>
      <category term="Ecore"/>
      <category term="MacOSX"/>
      <category term="ESE"/>
      <category term="MDSD MDA conference oAW Cambridge"/>
      <category term="JUG"/>
      <category term="Talk"/>
      <category term="Visualisation"/>
      <category term="EMF Index"/>
      <category term="Eclipse Xtext DSL"/>
      <category term="Webinar"/>
      <category term="GMFTools"/>
      <category term="EMF"/>
      <category term="Railroad Diagram"/>
      <category term="Xtend"/>
      <category term="Modeling"/>
      <category term="Eclipse Summit Europe"/>
      <category term="CodeGeneration"/>
      <category term="conference"/>
      <category term="ruhrjug"/>
      <category term="Java"/>
      <category term="Refactoring"/>
      <category term="GEF"/>
      <category term="Cambridge"/>
      <category term="Xbase"/>
      <category term="Xtext"/>
      <category term="iPhone"/>
      <category term="MDSD"/>
      <category term="Languages"/>
      <category term="JAX"/>
      <category term="Graphics"/>
      <category term="git"/>
      <category term="SharedEditingDomain"/>
      <category term="DSL"/>
      <category term="Eclipse"/>
      <category term="Expressions"/>
      <category term="GMF"/>
      <category term="Proposal"/>
      <category term="Interpreter"/>
      <category term="EMFatic"/>
      <category term="Android"/>
      <category term="NASA"/>
      <category term="bugzilla"/>
      <category term="EclipseCon"/>
      <author>
        <name>Jan Köhnlein</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/02520748795681285494</uri>
      </author>
      <link href="http://koehnlein.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/1495223311988358528/posts/default/-/Eclipse" rel="self" type="application/atom+xml"/>
      <link href="http://koehnlein.blogspot.com/search/label/Eclipse" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/1495223311988358528/posts/default/-/Eclipse/-/Eclipse?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>Jan's Blog</title>
      <updated>2012-01-31T13:16:46Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-3193880670773749221.post-3178464388195430439</id>
    <link href="http://mariot-thoughts.blogspot.com/feeds/3178464388195430439/comments/default" rel="replies" title="Publier les commentaires" type="application/atom+xml"/>
    <link href="http://mariot-thoughts.blogspot.com/2011/09/modeling-20-lets-collaborate.html#comment-form" rel="replies" title="2 commentaires" type="text/html"/>
    <link href="http://www.blogger.com/feeds/3193880670773749221/posts/default/3178464388195430439" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/3193880670773749221/posts/default/3178464388195430439" rel="self" type="application/atom+xml"/>
    <link href="http://mariot-thoughts.blogspot.com/2011/09/modeling-20-lets-collaborate.html" rel="alternate" title="Modeling 2.0 : Let's collaborate!" type="text/html"/>
    <title>Modeling 2.0 : Let's collaborate!</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div><div><div class="separator" style="clear: both; text-align: center;"/><br/><div><span class="Apple-style-span" style="font-family: Georgia,'Times New Roman',serif; font-size: large;"><i>A bit of history</i></span></div><br/><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-_L5LjwAAt1Q/TnDglI9L_bI/AAAAAAAAAU4/jJnJse63_aQ/s1600/history.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="150" src="http://4.bp.blogspot.com/-_L5LjwAAt1Q/TnDglI9L_bI/AAAAAAAAAU4/jJnJse63_aQ/s200/history.png" width="200"/></a></div><br/><br/>4 years ago, when I joined <a href="http://www.obeo.fr/">Obeo</a>, I started to work on a new modeling tool dedicated to system engineering. The main focus of this tool was to enable system engineers to model graphically complex systems with different representations, for each speciality, depending on their viewpoint. The tool was <a href="http://www.csdm2010.csdm.fr/IMG/pdf/CSDM_-_Model-driven_architecture_building_V3_NXPowerLite_.pdf">associated to a methodology</a> and integrated in a modeling workbench.<br/><br/><div class="separator" style="clear: both; text-align: center;"/><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-TBt0CQPtC90/TnEiElB3O_I/AAAAAAAAAVE/CFvFUok0MAQ/s1600/scheme.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://4.bp.blogspot.com/-TBt0CQPtC90/TnEiElB3O_I/AAAAAAAAAVE/CFvFUok0MAQ/s1600/scheme.png"/></a></div><br/><br/><br/>Separation of concerns by representations was a <b>first step</b> to <b>scalability</b> of graphical representations, another was to add several mechanisms (layers, filters, hide/reveal) to allow end users to hide some elements. The approach is somehow similar <a href="http://milesparker.blogspot.com/2011/09/mylyn-modeling-love.html">on what Miles is working on</a>.<br/><br/>We took the decision to create a generic runtime with the possibility to specify graphical representations and to <a href="http://model-driven-blogging.blogspot.com/2009/05/viewpoints-enabled-modeling-tools.html">drive the tooling by the viewpoints</a>. The approach has similarities with <a href="http://koehnlein.blogspot.com/2011/07/graphical-syntax-view-for-xtext.html">Jan current's work</a>, and I think our work <a href="http://www.blogger.com/comment.g?blogID=5749374620125186414&amp;postID=1848800102029818548">inspired him a little bit</a>.<br/><br/>Since the runtime has been used for <a href="http://modeldrivenblog.blogspot.com/2011/01/mde-in-action-for-safety-analysis.html">safety analysis</a> (<a href="http://2.bp.blogspot.com/-nKRZfr5nhag/TePA2HHc2cI/AAAAAAAAARM/W5f_g7xuv5Q/s1600/fourSlide.PNG">diagram screenshot</a>) and several other use cases.<br/><br/>However, although our tool primary concerns was collaborate modeling since its inception, we did not offer directly a solution to the concurrent access problem. In fact, we left it to the Revision Control System (RCS) used by end users. As Alex wrote concurrent access management by RCS have <a href="http://alagarde.tumblr.com/post/8126459718/live-collaboration-with-obeo-designer-6">several drawbacks</a>, so we decided to offer the possibility for end users to <b>collaborate</b> more <b>seamlessly</b>.<br/><br/>On the technical side, we decided to use <a href="http://www.eclipse.org/cdo/">CDO</a>, a technology we had experienced successfully in others projects, and which seems to match the most to our requirements. As our graphical modeling technology is based on <a href="http://www.eclipse.org/modeling/gmp/?project=gmf-runtime#gmf-runtime">GMF Runtime</a>, our global technical task was to integrate GMF and CDO.<br/><br/><i><span class="Apple-style-span" style="font-family: Georgia,'Times New Roman',serif; font-size: large;">GMF and CDO, integration challenges</span></i><br/><i><span class="Apple-style-span" style="font-family: Georgia,'Times New Roman',serif; font-size: large;"><br/></span></i><br/><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-OrtpIzhXr-s/TnDgmezU1kI/AAAAAAAAAU8/snZEUXs1P6w/s1600/plugin.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="186" src="http://4.bp.blogspot.com/-OrtpIzhXr-s/TnDgmezU1kI/AAAAAAAAAU8/snZEUXs1P6w/s200/plugin.png" width="200"/></a></div>If you are used to component architecture like the Eclipse platform one, you may think that these two components will plug together quite easily. Unfortunately, this is not the case for various reasons :<br/><br/><ul><li>EMF Transactions and CDO Transactions<br/>GMF Runtime relies on <a href="http://www.eclipse.org/modeling/emf/?project=transaction">EMF Transaction</a> to manage read and write accesses to models. To simplify this means that one is not allowed to do a modification without encapsulating its change in a recording command. On its side CDO provides its own transaction mechanism, which relies on the database store one. So it is necessary to integrate the two mechanisms. This is one of the features <a href="http://wiki.eclipse.org/Dawn">Dawn</a> provides (see those <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=329777">bugzilla</a> <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=323792">entries</a> for further information).</li></ul><ul><li>Transactional model break in GMF Runtime <br/>GMF Runtime is a bridge between EMF models and <a href="http://www.eclipse.org/gef/">GEF</a>. Among others things, it provides a notation model, to store graphical information. The synchronization between the graphical model and the semantic model, is one of the responsibility of edit parts. The choice to split the synchronization responsibility in each edit part enables one to easily override the default behavior for a given edit part. This choice is consistent with the <a href="http://help.eclipse.org/galileo/topic/org.eclipse.gmf.doc/prog-guide/runtime/Developer%20Guide%20to%20Diagram%20Runtime.html#_Toc119420270">high extensible approach</a> of the framework. However, it has one major drawback, edit parts should be instantiated to update the notation model ! As GMF Runtime edit parts creation is done in an <a href="http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.emf.transaction.doc/references/overview/listeners.html">post commit listener</a>, when no models changes are allowed, the runtime have to force the transaction using a <a href="http://help.eclipse.org/galileo/topic/org.eclipse.emf.transaction.doc/references/javadoc/org/eclipse/emf/transaction/Transaction.html#OPTION_UNPROTECTED">special option</a>.<br/>This behavior prevents one to have triggers for those modifications. If you need to avoid conflicts (see below), you will not be able to acquire lock before commit. In this case it means that one have to extract the synchronization from edit parts and to call it at the right time.</li><li>Avoiding conflicts<br/>If CDO provides live updates of shared models, it does not prevents conflicts. There is two ways to handle them. The first one is to write your own <a href="http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.emf.cdo.doc%2Fjavadoc%2Forg%2Feclipse%2Femf%2Fcdo%2Ftransaction%2Fclass-use%2FCDOConflictResolver.html">conflict resolver</a>, which will take a decision when a conflict occurs. The second one is to avoid conflicts through locks. Easier to said than to implement, but that the way we choose.</li><ul><li>Lock integration<br/>To avoid conflicts, the simplest way is to lock automatically elements before their edition. In practice, one could use the EMF Transaction trigger mechanism to do this. Edit parts need to listen to locks events to deactivate accordingly their edition capabilities and provide visual indicators of the lock. Lastly, to provide <a href="http://wiki.eclipse.org/FAQ_for_CDO_and_Net4j#How_about_locking.2C_one_client_can_lock_the_object_so_that_the_other_clients_not_allow_to_change_till_it.27s_unlocked.3F_Is_there_any_tree-locking_facilities_in_CDO_and.2For_EMF.3F">logical lock for end-users</a>, one may provide a lock strategy.</li><li>Consistency maintenance on client side<br/>EMF Transaction enables one to rollback a transaction, before its commit. This is generally done for validation or lock acquisitions purposes. The recording command manages this rollback and will abort properly the transaction if it occurs. However with the abort, the CDO state of the object will change (see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=312534">bug 312534</a> for more details). To avoid conflicts a solution is to use CDO <a href="http://wiki.eclipse.org/New_And_Noteworthy_for_CDO_2.0#Create_save_point">save points</a> to restore the object to a clean state if a transaction aborts.<br/> </li></ul><li>Native mode for GMF Runtime notation models ?<br/>One of the coolest thing of CDO is its <a href="http://thegordian.blogspot.com/2008/11/how-scalable-are-my-models.html">EObject implementation</a>, but to benefit from the scalability it provides, you need to regenerate your metamodel with a CDO dependency. When one works with such CDO model instances, the mode in which one is, is called <i>native</i>. As GMF Runtime notation metamodel depends on the EMF one (<a href="http://www.eclipsezone.com/eclipse/forums/t58965.html#91972189">don't do this at home</a>), using notation models in native mode is far from being easy. So we worked on a solution which keeps source and binary compatibility with legacy code (see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=336707">bug 336707</a> for technical details) and provides notation cdo native models, the code is <a href="http://code.google.com/a/eclipselabs.org/p/cdo-gmf-notation/">available here</a> (no builds yet).<br/>   </li><li>Content and cross reference adapters<br/>These two <i>utilities</i> should not be used as they will break the lazy loading mechanism of CDO. By default GMF runtime initializes one cross reference adapter when configuring the editing domain. You could quite easily override the default behavior. EMF Transaction uses an adapter that <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=323792#c5">walk through its content</a>, but removing it is much harder. </li></ul><div>On our product, the work is still in progress, but we he have implemented solutions for most challenges presented above. During this work we opened several issues :   </div><div><ul><li>fixed : <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=345719">bug 345719</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=352191">bug 352191</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=355915">bug 355915</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=337870">bug 337870</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=353167">bug 353167</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=329753">bug 329753</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=315570">bug 315570</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=329869">bug 329869</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=329752">bug 329752</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=353076">bug 353076</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=351393">bug 351393</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=351921">bug 351921</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=325436">bug 325436</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=346378">bug 346378</a></li><li>not yet fixed : <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=339908">bug 339908</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=352189">bug 352189</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=352189">bug 352977</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=352204">bug 352204</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=357400">bug 357400</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=329786">bug 329786</a></li></ul></div><div>As you may seen, the CDO team has been very responsive, and already provided fixes for most of them. I would like to thank them for their availability and help.<br/><br/><i>This blog entry present results coming from a work collaboration between Thales and Obeo.<br/>Ce message de blog est issu d'un travail en commun entre Thales et      Obeo.</i> </div></div></div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/3193880670773749221-3178464388195430439?l=mariot-thoughts.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-19T15:23:17Z</updated>
    <published>2011-09-14T23:34:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="CDO"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="GMF"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Collaboration"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Modeling"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Viewpoint"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Obeo Designer"/>
    <author>
      <name>Mariot Chauvin</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/06363398743120781633</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-3193880670773749221</id>
      <category term="EMF Compare"/>
      <category term="Sport"/>
      <category term="Viewpoint"/>
      <category term="Intent"/>
      <category term="ESE"/>
      <category term="CDO"/>
      <category term="Acceleo"/>
      <category term="EMF"/>
      <category term="ECE"/>
      <category term="Popup"/>
      <category term="Mylyn"/>
      <category term="Modeling"/>
      <category term="Eclipse Party"/>
      <category term="GEF"/>
      <category term="SWTBot"/>
      <category term="Code Generation"/>
      <category term="Xtext"/>
      <category term="ATL"/>
      <category term="Obeo Traceability"/>
      <category term="Firefox"/>
      <category term="GSoC"/>
      <category term="Tip"/>
      <category term="Compare"/>
      <category term="Obeo"/>
      <category term="Modeling worbench"/>
      <category term="Obeo Designer"/>
      <category term="Eclipse"/>
      <category term="EEF"/>
      <category term="Collaboration"/>
      <category term="GMF"/>
      <category term="QVT"/>
      <category term="MPS"/>
      <category term="Sketch"/>
      <category term="Amalgam"/>
      <category term="OCL"/>
      <category term="EclipseCon"/>
      <category term="SWT"/>
      <author>
        <name>Mariot Chauvin</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/06363398743120781633</uri>
      </author>
      <link href="http://mariot-thoughts.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/3193880670773749221/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://mariot-thoughts.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/3193880670773749221/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>Hotwine's beverage</title>
      <updated>2012-01-19T15:23:17Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://live.eclipse.org/1086 at http://live.eclipse.org</id>
    <link href="http://live.eclipse.org/node/1086" rel="alternate" type="text/html"/>
    <title>P4Eclipse Tutorial</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div class="field field-type-text field-field-author" id="author">
  <span class="field-item">Perforce Software</span>
</div>

<div class="resource-icon"><img border="0" src="http://live.eclipse.org/files/ECLP_demo_v2_0.gif"/> </div>  

<div id="abstract">
	<span class="field-label">Abstract:</span>  
	<div class="field field-type-text field-field-author">
	  <span class="field-item">See how to install, configure, and use P4Eclipse, the Perforce Plug-in for Eclipse. Connect to a Java project in a workspace. Edit, diff, and submit a file. Perform a refactor and use graphical tools to review file history. (10:20 mins.) </span><br/>
	  <span class="field-item"><a href="http://del.icio.us/post?url=http%3A%2F%2Flive.eclipse.org%2Fnode%2F19&amp;title=Demo%2FVideo" rel="nofollow" title="Bookmark this post on del.icio.us."><img alt="delicious" src="http://live.eclipse.org/modules/service_links/delicious.png"/> delicious</a> | <a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Flive.eclipse.org%2Fnode%2F19&amp;title=Demo%2FVideo" rel="nofollow" title="Digg this post on digg.com."><img alt="digg" src="http://live.eclipse.org/modules/service_links/digg.png"/> digg</a> | <a href="http://www.dzone.com/links/add.html?url=http%3A%2F%2Flive.eclipse.org%2Fnode%2F19&amp;title=Demo%2FVideo" rel="nofollow" title="Tag this post on DZone."><img alt="dzone" src="http://live.eclipse.org/modules/service_links/dzone.png"/> dzone</a></span>
	</div>
	
</div>

<div id="embedded">
	  </div>





</div>
    </summary>
    <updated>2012-01-19T15:00:00Z</updated>
    <category scheme="http://live.eclipse.org/node/22" term="Member"/>
    <category scheme="http://live.eclipse.org/node/19" term="Demo/Video"/>
    <category scheme="http://live.eclipse.org/node/129" term="IDE"/>
    <category scheme="http://live.eclipse.org/node/14" term="English"/>
    <author>
      <name>EclipseLive</name>
      <email>rdefauw@perforce.com</email>
    </author>
    <source>
      <id>http://live.eclipse.org/eclipse_live_upcoming</id>
      <link href="http://live.eclipse.org/eclipse_live_upcoming" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/eclipselive" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <title>Eclipse Live New and Upcoming Resources</title>
      <updated>2012-01-26T17:16:11Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://live.eclipse.org/1079 at http://live.eclipse.org</id>
    <link href="http://live.eclipse.org/node/1079" rel="alternate" type="text/html"/>
    <title>Modernize your ALM Architecture with Tasktop Sync 2.0</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div class="field field-type-text field-field-author" id="author">
  <span class="field-item">Dr. Mik Kersten, Tasktop CEO, Founder of Eclipse Mylyn </span>
</div>

<div class="resource-icon"><img border="0" src="http://live.eclipse.org/files/ECLP_demo_v2_0.gif"/> </div>  

<div id="abstract">
	<span class="field-label">Abstract:</span>  
	<div class="field field-type-text field-field-author">
	  <span class="field-item">In this must-see webinar, Tasktop CEO Mik Kersten will provide the first in-depth view of <strong>Tasktop Sync 2.0</strong>. Tasktop Sync 2.0 provides a set of industry-first facilities for <strong>connecting your ALM stack</strong>. With the massive response to Tasktop Sync 1.0, we have focused this release on features for capturing your ALM architecture in the Sync tool in order to connect all stakeholders with real-time traceability and collaboration. Our goal is to help you transform your ALM stack by allowing you to tailor the best of open source, Agile, in-house, and enterprise ALM solutions. </span><br/>
	  <span class="field-item"><a href="http://del.icio.us/post?url=http%3A%2F%2Flive.eclipse.org%2Fnode%2F19&amp;title=Demo%2FVideo" rel="nofollow" title="Bookmark this post on del.icio.us."><img alt="delicious" src="http://live.eclipse.org/modules/service_links/delicious.png"/> delicious</a> | <a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Flive.eclipse.org%2Fnode%2F19&amp;title=Demo%2FVideo" rel="nofollow" title="Digg this post on digg.com."><img alt="digg" src="http://live.eclipse.org/modules/service_links/digg.png"/> digg</a> | <a href="http://www.dzone.com/links/add.html?url=http%3A%2F%2Flive.eclipse.org%2Fnode%2F19&amp;title=Demo%2FVideo" rel="nofollow" title="Tag this post on DZone."><img alt="dzone" src="http://live.eclipse.org/modules/service_links/dzone.png"/> dzone</a></span>
	</div>
	
</div>

<div id="embedded">
	  </div>





</div>
    </summary>
    <updated>2012-01-19T14:57:47Z</updated>
    <category scheme="http://live.eclipse.org/node/22" term="Member"/>
    <category scheme="http://live.eclipse.org/node/19" term="Demo/Video"/>
    <category scheme="http://live.eclipse.org/node/125" term="Enterprise"/>
    <category scheme="http://live.eclipse.org/node/765" term="Galileo"/>
    <category scheme="http://live.eclipse.org/node/542" term="Ganymede"/>
    <category scheme="http://live.eclipse.org/node/887" term="Helios"/>
    <category scheme="http://live.eclipse.org/node/129" term="IDE"/>
    <category scheme="http://live.eclipse.org/node/997" term="Indigo"/>
    <category scheme="http://live.eclipse.org/node/14" term="English"/>
    <author>
      <name>EclipseLive</name>
      <email>dominika.lacka@tasktop.com</email>
    </author>
    <source>
      <id>http://live.eclipse.org/eclipse_live_upcoming</id>
      <link href="http://live.eclipse.org/eclipse_live_upcoming" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/eclipselive" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <title>Eclipse Live New and Upcoming Resources</title>
      <updated>2012-01-26T17:16:11Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-36941363.post-4707034055656033285</id>
    <link href="http://ganoro.blogspot.com/feeds/4707034055656033285/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=36941363&amp;postID=4707034055656033285" rel="replies" title="2 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/36941363/posts/default/4707034055656033285" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/36941363/posts/default/4707034055656033285" rel="self" type="application/atom+xml"/>
    <link href="http://ganoro.blogspot.com/2012/01/getting-started-with-facebook-app.html" rel="alternate" title="Getting Started with Facebook App Development" type="text/html"/>
    <title>Getting Started with Facebook App Development</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Last week I was playing with <a href="http://developers.facebook.com/docs/" target="_blank">Facebook App</a> development, getting ready to <a href="http://developers.facebook.com/blog/post/634/" target="_blank">the Facebook announcement</a>. It was quite pleasant experience, although things could be simpler. The Facebook <a href="http://developers.facebook.com/docs/opengraph/" target="_blank">Open Graph concept</a> gives a nice overview on what and why this all about, so that part went very smooth. When things get technical, the Facebook Developers site turns messy. That is, all topics are covered in a 'tutorial' approach rather than an API approach like most developers are used to. Moreover, the layout of this page is definitely not intuitive as it mixes between reference and tutorial docs. That's said, the general experience was good.<br/><br/>To help other developers get started with Facebook app development I created <a href="https://apps.facebook.com/myphpcloud/" target="_blank">a nice application</a> which take the reader through the steps to develop applications with phpcloud.com. It was a nice exercise and it can really help with the development workflow.<br/><br/>The topic "<a href="https://apps.facebook.com/myphpcloud/" target="_blank">Getting Started with Your Facebook App on phpcloud.com</a>" covers :<br/><ol><li>Create an account on phpcloud.com</li><li>Create an app on Facebook</li><li>Setting up development environment</li><li>Deploy a sample Facebook app to phpcloud.com</li><li>Push updates to your Facebook app</li></ol><br/><br/><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/36941363-4707034055656033285?l=ganoro.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-19T14:18:04Z</updated>
    <published>2012-01-19T13:31:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="facebook app development phpcloud"/>
    <author>
      <name>Roy Ganor</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/10470159818677369634</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-36941363</id>
      <category term="&quot;end of line&quot; java"/>
      <category term="zend phpcloud studio developer cloud"/>
      <category term="phpcloud zend webapi"/>
      <category term="webtop webtops operating systems future roy ganor"/>
      <category term="Enterprise2.0 zportal"/>
      <category term="phpcloud eclipse zend sdk pdt"/>
      <category term="eclipse test framework"/>
      <category term="facebook app development phpcloud"/>
      <category term="eclipse flash adobe"/>
      <category term="zend studio server php"/>
      <category term="zend developer cloud platform sdk"/>
      <category term="git github zend sdk server"/>
      <category term="zend studio ajax php"/>
      <category term="eclipse democamp telaviv zend"/>
      <category term="phpcloud zend studio cloud best practices development"/>
      <author>
        <name>Roy Ganor</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/10470159818677369634</uri>
      </author>
      <link href="http://ganoro.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/36941363/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://ganoro.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/36941363/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>Ganor's Blog</title>
      <updated>2012-02-02T11:27:09Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-7721121862516881677.post-8860309523229133274</id>
    <link href="http://www.blogger.com/comment.g?blogID=7721121862516881677&amp;postID=8860309523229133274" rel="replies" title="1 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/7721121862516881677/posts/default/8860309523229133274" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/7721121862516881677/posts/default/8860309523229133274" rel="self" type="application/atom+xml"/>
    <link href="http://www.thescreencast.com/2012/01/part-i-has-shown-how-to-install-and-use.html" rel="alternate" title="Getting started with PlayN  (Part II)" type="text/html"/>
    <title>Getting started with PlayN  (Part II)</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><a href="http://www.thescreencast.com/2012/01/getting-started-with-playn-cross.html">Part I</a> has shown how to install and use the PlayN a cross-platform game abstraction library. In this screencast you will see how to use Eclipse IDE to run/edit/debug cross-platform games developed with PlayN.<br/>
<br/>
This short (4 minutes) screencast shows the same "Showcase example" presented at Google I/O 2011:  <a href="http://www.google.com/events/io/2011/sessions/kick-ass-game-programming-with-google-web-toolkit.html">"Kick-ass Game Programming with Google Web Toolkit"</a> by Ray Cromwell and Philip Rogers.<br/>
<br/>
In this video more emphasis are put on tool (Eclipse &amp; PlayN) usage:<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/7721121862516881677-8860309523229133274?l=www.thescreencast.com" width="1"/></div></div>
    </content>
    <updated>2012-01-18T20:00:43Z</updated>
    <published>2012-01-18T19:56:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="java"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="games"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="gwt"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="eclipse"/>
    <author>
      <name>thescreencast</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-7721121862516881677</id>
      <category term="facebook"/>
      <category term="dart"/>
      <category term="RAP"/>
      <category term="android"/>
      <category term="design patterns"/>
      <category term="RCP"/>
      <category term="spring roo"/>
      <category term="jsf"/>
      <category term="alfresco"/>
      <category term="java"/>
      <category term="seam"/>
      <category term="python"/>
      <category term="refactoring"/>
      <category term="javaFX"/>
      <category term="ajax"/>
      <category term="jboss"/>
      <category term="gwt"/>
      <category term="games"/>
      <category term="eclipse"/>
      <category term="jee"/>
      <category term="gme"/>
      <category term="gae"/>
      <category term="google"/>
      <author>
        <name>thescreencast</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://www.thescreencast.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/7721121862516881677/posts/default/-/eclipse" rel="self" type="application/atom+xml"/>
      <link href="http://www.thescreencast.com/search/label/eclipse" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <title>The Screencast Blog</title>
      <updated>2012-01-28T10:07:55Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://hudsoncentral.wordpress.com/?p=81</id>
    <link href="https://hudsoncentral.wordpress.com/2012/01/18/first-hudson-release-from-eclipse-foundation/" rel="alternate" type="text/html"/>
    <title>First Hudson Release from Eclipse Foundation</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">The Hudson team is pleased to announce its 3.0.0 Milestone 0 release from the Eclipse Foundation. We have worked diligently and expertly over the past year to get to this milestone release.  Since release 1.398  the Hudson community has benefited from the team’s work through the introduction of the 6-week release cycle, based on a new [...]<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=hudsoncentral.wordpress.com&amp;blog=28120354&amp;post=81&amp;subd=hudsoncentral&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>The Hudson team is pleased to announce its 3.0.0 Milestone 0 release from the Eclipse Foundation. We have worked diligently and expertly over the past year to get to this milestone release.  Since release 1.398  the Hudson community has benefited from the team’s work through the introduction of the 6-week release cycle, based on a new development and release process and the ongoing work on bugs, enhancements and new features</p>
<h2>What is included in this release?</h2>
<p>The M0 release is the first release of Hudson as a top level technology project from the Eclipse Foundation. It has been a very busy 12 months for us and that is shown in the large numbers of new features, enhancements and bug fixes the team has developed. </p>
<p>Over 50+ new features and enhancements cover:</p>
<ul>
<li><a href="http://www.eclipse.org/hudson/the-hudson-book/book-hudson.html#chapter-maven" target="_blank">Maven 3</a></li>
<li><a href="http://www.eclipse.org/hudson/the-hudson-book/book-hudson.html#section-cascading-project" target="_blank">Cascading Projects</a></li>
<li>JAXB-based REST API and plugin,</li>
<li>enhancements to
<ul>
<li>Parameterized Builds</li>
<li>Downstream Projects</li>
<li>User Management</li>
<li>Security and Authorization</li>
<li>UI</li>
<li>GIT support</li>
</ul>
</li>
</ul>
<p>Over 350 bugs across the full range of Hudson have been fixed especially focused on stability, performance and the core SCM plugins such as GIT and SVN.</p>
<p>In parallel to this, in August 2011 the team began the process of submitting the Hudson core code to the Eclipse Foundation  The foundation has stringent entry requirements on all project source code and third party licences to ensure they are IP and license clean. Hudson’s source code, split over 10 core modules, has now been approved and is available in the <a href="http://git.eclipse.org/c/hudson/">Eclipse GIT repository</a>.</p>
<p>There are over 200 third party libraries distributed with Hudson (including many that relate only to plugins).  Some of these are LGPL licensed libraries that the Eclipse Foundation does not accept under any circumstances. The team developed and implemented a strategy to replace these with more suitable libraries ensuring little impact on the core code or Hudson plugins using them.</p>
<p>For example:</p>
<ul>
<li>The Java Native Access, JCaptcha and JFreechart  libraries have been repackaged as external plugins for this release. Additionally HawtJNI will be bundled as part of Hudson core for future releases, to replace the JNA support.</li>
<li>The BIRT Charting engine will be the charting method of choice going forward, but backward compatibility with JFreechart is maintained by existing plugins through the simple addition of a dependency on the external JFreechart libary package.</li>
<li>Winstone, originally used as the the standalone container for Hudson has been replaced by Jetty.</li>
</ul>
<p>The balance of the libraries were considered for submission to the IP checking process.  In itself this is no small task. Each library has to be submitted with its source code.  Some of the libraries were so old that the code was not readily available or had been forked with local changes.</p>
<p>The Hudson team modernized the code through such means as replacing forked libraries with current versions and working with library owners to feed forked changes back into the latest library versions.  The Eclipse Foundation contacts owners and contributors to libraries to establish IP cleanliness.</p>
<p>As you can imagine, this is a labour intensive process but the work of both the Hudson team and library owners has ensured that over half of the 100+ third party libraries have been approved already. This core set of 100+ libraries represents those that are physically packaged in the core war.</p>
<p>The rationalization and approval process for the balance of the libraries is ongoing. But the result of this mammoth effort is that Hudson is ready to move forward and develop features related to the <a href="http://www.eclipse.org/projects/project-plan.php?projectid=technology.hudson" target="_blank">high level themes</a> that the community agreed upon.</p>
<p>The final part of the effort in the leadup to this M0 release is the work that has been done on both the Hudson Eclipse <a href="http://www.eclipse.org/hudson/" target="_blank">website </a>and <a href="http://wiki.eclipse.org/Hudson-ci" target="_blank">wiki</a>. Much of the content from the older hudson-ci.org has been rewritten or updated and moved to the new infrastructure. Over 70 pages are now available from the new sites, including the recently published <a href="http://wiki.eclipse.org/The_Hudson_Book" target="_blank">Hudson Book</a> (151 pages of material in it’s own right) that contains the most up to date information on installing, administering and using Hudson.</p>
<h2>What can you contribute to this release?</h2>
<p>As an alpha release we are not expecting miracles! But the release has gone through development and testing cycles and we are very pleased with the results.  You should be able to run this release of Hudson on your container of choice and expect it to behave well. You can install plugins  and expect them to run.</p>
<p>With the changes to libraries detailed above there may be some issues that we need to address quickly. Known issues will be with any plugin that uses JFreechart. We are in the process of either forking or contacting plugin owners to create the dependency on the external plugin. But the plugin may not yet be available from the update center. Keep an eye on the <a href="http://hudsoncentral.wordpress.com">blog </a>and <a href="http://twitter.com/hudsonci">Twitter feed</a> for the latest news.</p>
<p>If you have any issues or further enhancements relating to this Eclipse release Please raise issues in the Eclipse Bugzilla system which you can find at <a href="https://bugs.eclipse.org/bugs/">https://bugs.eclipse.org/bugs/</a> - Hudson lives under the top level Eclipse Technology project. You will need to register for an Eclipse BugZilla account to log issues if you don’t already have one. For more information on the Hudson community, mailing lists, forums etc. please head over to the <a href="http://wiki.eclipse.org/Hudson-ci/contacts_and_help">communities page</a>.</p>
<p>Feel free to join us at the next <a href="http://wiki.eclipse.org/Hudson-ci/community_meetings">community phone call</a> to voice your opinions and experiences with this new release.</p>
<h2>What is coming next?</h2>
<p>It’s our intention to release monthly milestones until we get to our first approved Eclipse production release. By which time we feel that the Hudson project at Eclipse will be fully functional and ready for migration of your production servers. In the meantime, updates will continue in parallel on <a href="http://hudson-ci.org">hudson-ci.org</a> for all your production Hudson needs.</p>
<p>Susan Duncan</p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/hudsoncentral.wordpress.com/81/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hudsoncentral.wordpress.com/81/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/hudsoncentral.wordpress.com/81/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hudsoncentral.wordpress.com/81/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/hudsoncentral.wordpress.com/81/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hudsoncentral.wordpress.com/81/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/hudsoncentral.wordpress.com/81/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hudsoncentral.wordpress.com/81/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/hudsoncentral.wordpress.com/81/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hudsoncentral.wordpress.com/81/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/hudsoncentral.wordpress.com/81/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hudsoncentral.wordpress.com/81/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/hudsoncentral.wordpress.com/81/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hudsoncentral.wordpress.com/81/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=hudsoncentral.wordpress.com&amp;blog=28120354&amp;post=81&amp;subd=hudsoncentral&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-18T18:29:38Z</updated>
    <category term="Uncategorized"/>
    <author>
      <name>The Hudson Development Team</name>
    </author>
    <source>
      <id>https://hudsoncentral.wordpress.com</id>
      <logo>https://secure.gravatar.com/blavatar/b12514ad3b68db392c885114a2c0e4f6?s=96&amp;d=https%3A%2F%2Fs-ssl.wordpress.com%2Fi%2Fbuttonw-com.png</logo>
      <link href="https://hudsoncentral.wordpress.com/feed/" rel="self" type="application/rss+xml"/>
      <link href="https://hudsoncentral.wordpress.com" rel="alternate" type="text/html"/>
      <link href="https://hudsoncentral.wordpress.com/osd.xml" rel="search" title="The Hudson-CI Blog" type="application/opensearchdescription+xml"/>
      <link href="https://hudsoncentral.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Continuous Integration Server for the Enterprise</subtitle>
      <title>The Hudson-CI Blog</title>
      <updated>2012-02-04T04:49:35Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-518987099197087911.post-1580848383243492271</id>
    <link href="http://bewarethepenguin.blogspot.com/feeds/1580848383243492271/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=518987099197087911&amp;postID=1580848383243492271&amp;isPopup=true" rel="replies" title="0 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/518987099197087911/posts/default/1580848383243492271" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/518987099197087911/posts/default/1580848383243492271" rel="self" type="application/atom+xml"/>
    <link href="http://bewarethepenguin.blogspot.com/2012/01/today-is-strike-day-to-protest-sopa.html" rel="alternate" title="Today is &quot;strike&quot; day to protest SOPA" type="text/html"/>
    <title>Today is "strike" day to protest SOPA</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Today is "strike against censorship" day to protest the SOPA and PIPA bills that are attempting to pass in the US Congress. Please educate yourself about the potential negative impacts of these laws and get involved.<div>http://sopastrike.com/strike</div><div>https://www.google.com/landing/takeaction/</div><div>http://americancensorship.org/</div><div><br/></div><div><br/></div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/518987099197087911-1580848383243492271?l=bewarethepenguin.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-18T14:56:44Z</updated>
    <published>2012-01-18T14:50:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="software"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="OmniPod"/>
    <author>
      <name>Eric Rizzo</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/08407727335073173803</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-518987099197087911</id>
      <category term="travel"/>
      <category term="java"/>
      <category term="baby"/>
      <category term="software"/>
      <category term="greece"/>
      <category term="programming"/>
      <category term="family"/>
      <category term="mac"/>
      <category term="soa"/>
      <category term="corporate life"/>
      <category term="video"/>
      <category term="web applications"/>
      <category term="music"/>
      <category term="eclipse"/>
      <category term="julian"/>
      <category term="OmniPod"/>
      <category term="web services"/>
      <category term="photos"/>
      <category term="humor"/>
      <category term="screencast"/>
      <category term="diabetes"/>
      <author>
        <name>Eric Rizzo</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/08407727335073173803</uri>
      </author>
      <link href="http://bewarethepenguin.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/518987099197087911/posts/default/-/eclipse" rel="self" type="application/atom+xml"/>
      <link href="http://bewarethepenguin.blogspot.com/search/label/eclipse" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <title>Beware The Penguin</title>
      <updated>2012-01-24T01:44:59Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-1495223311988358528.post-7069015599089091437</id>
    <link href="http://koehnlein.blogspot.com/feeds/7069015599089091437/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=1495223311988358528&amp;postID=7069015599089091437" rel="replies" title="1 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/1495223311988358528/posts/default/7069015599089091437" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/1495223311988358528/posts/default/7069015599089091437" rel="self" type="application/atom+xml"/>
    <link href="http://koehnlein.blogspot.com/2012/01/discovery-diagrams-for-generic.html" rel="alternate" title="Discovery Diagrams for the Generic Graphical View" type="text/html"/>
    <title>Discovery Diagrams for the Generic Graphical View</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">If you've read my <a href="http://koehnlein.blogspot.com/2011/06/using-xbase-to-define-generic-graphical.html">previous posts</a> or seen my <a href="http://www.slideshare.net/schwurbel/a-fresh-look-at-graphical-editing-10068461">presentation</a> at EclipseCon Europe 2011, you'll already know the <a href="https://github.com/JanKoehnlein/Generic-Graph-View">Generic Graphical View</a> framework: Using two Xtext-based DSLs - one for mapping semantic to graphical elements and the other for styling the figures - you can easily create nice looking diagrams for any Java based model.<br/><br/> In its first version the contents of the diagram was entirely defined in the mapping DSL. It was only possible to restrict the visible elements to a subset of the model by adding filtering expressions in the mapping. For bigger models it was hard to focus on a subset that is not structural defined but based on semantics, e.g. all classes that deal with addresses in a CRM application.<br/><br/>Many graphical frameworks handle the selection of the visible elements in a diagram by means of dialogs. The user is then forced to switch between keyboard and mouse which is annoying, and these dialogs are often complicated and unintuitive. The goal for the Generic Graph View project was to build a UI for choosing the diagram contents that uses the mouse or trackpad only and avoid dialogs at all cost. The following screencast demonstrates the basic functionality.<br/><br/><br/><br/>As a first step, actions were introduced that allow to hide existing graphical elements - nodes, labels or connections. If you hover over an element, you'll get an popup button allowing to remove it from the view. So you can start with a big diagram and strip it down to what you want to see. Once an element inside a node has been removed, you can restore the node completely using another popup button. You can define elements as initially hidden using a <span style="font-family: courier new;">hidden</span> flag in the mapping definition.<br/><br/>In addition to the subtractive approach, you can step by step extend the diagram contents from an initial node. If you're hovering over a node that has hidden connection, several <span style="font-family: courier new;">+</span> buttons will popup. When one of these buttons is triggered, the hidden elements and connections will appear in transparent arranged in a circle around the source element. In the same drag operation you can change the distance and the angle of that circle. This behavior will get really cool with multitouch gestures, which I will cover in a separate post.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/1495223311988358528-7069015599089091437?l=koehnlein.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-18T14:44:36Z</updated>
    <published>2012-01-18T14:16:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="Graphics"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="DSL"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Xbase"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Xtext"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Visualisation"/>
    <author>
      <name>Jan Köhnlein</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/02520748795681285494</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-1495223311988358528</id>
      <category term="MDSD conference oAW MDA"/>
      <category term="Ecore"/>
      <category term="MacOSX"/>
      <category term="ESE"/>
      <category term="MDSD MDA conference oAW Cambridge"/>
      <category term="JUG"/>
      <category term="Talk"/>
      <category term="Visualisation"/>
      <category term="EMF Index"/>
      <category term="Eclipse Xtext DSL"/>
      <category term="Webinar"/>
      <category term="GMFTools"/>
      <category term="EMF"/>
      <category term="Railroad Diagram"/>
      <category term="Xtend"/>
      <category term="Modeling"/>
      <category term="Eclipse Summit Europe"/>
      <category term="CodeGeneration"/>
      <category term="conference"/>
      <category term="ruhrjug"/>
      <category term="Java"/>
      <category term="Refactoring"/>
      <category term="GEF"/>
      <category term="Cambridge"/>
      <category term="Xbase"/>
      <category term="Xtext"/>
      <category term="iPhone"/>
      <category term="MDSD"/>
      <category term="Languages"/>
      <category term="JAX"/>
      <category term="Graphics"/>
      <category term="git"/>
      <category term="SharedEditingDomain"/>
      <category term="DSL"/>
      <category term="Eclipse"/>
      <category term="Expressions"/>
      <category term="GMF"/>
      <category term="Proposal"/>
      <category term="Interpreter"/>
      <category term="EMFatic"/>
      <category term="Android"/>
      <category term="NASA"/>
      <category term="bugzilla"/>
      <category term="EclipseCon"/>
      <author>
        <name>Jan Köhnlein</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/02520748795681285494</uri>
      </author>
      <link href="http://koehnlein.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/1495223311988358528/posts/default/-/Eclipse" rel="self" type="application/atom+xml"/>
      <link href="http://koehnlein.blogspot.com/search/label/Eclipse" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/1495223311988358528/posts/default/-/Eclipse/-/Eclipse?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>Jan's Blog</title>
      <updated>2012-01-31T13:16:46Z</updated>
    </source>
  </entry>

  <entry>
    <id>http://sbegaudeau.tumblr.com/post/16059815253</id>
    <link href="http://sbegaudeau.tumblr.com/post/16059815253" rel="alternate" type="text/html"/>
    <title>Maven integration in Acceleo</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div>
<p>With the release of the new Acceleo <a href="https://github.com/eclipse/acceleo/blob/master/plugins/org.eclipse.acceleo.parser/src/org/eclipse/acceleo/internal/parser/compiler/AcceleoParser.java">stand alone front end</a> for the compilation of Acceleo modules, I’ve started to work on a brand new maven integration in Acceleo.</p>
<p>Currently in <a href="http://eclipse.org/acceleo/">Acceleo</a>, if you need to build Acceleo modules with maven you have to use a <a href="http://www.eclipse.org/tycho/">Tycho </a>based build with a java class generated by Acceleo to tweak the build (for example to register the metamodel(s) used in the modules). This Tycho based build will always produce an Eclipse plugin as a result.</p>
<p>The <a href="http://www.eclipse.org/projects/project-plan.php?planurl=modeling/m2t/acceleo/plan-juno.xml">next major release of Acceleo</a> will have a <a href="http://maven.apache.org/guides/introduction/introduction-to-plugins.html">maven plugin</a> dedicated to the compilation and it will bring several key improvements. Firstly, the new compilation front end brings a completely stand alone compilation. Those who want to build their Acceleo modules without having to build an Eclipse plugin will be able to do so. Secondly, this new front end support more complex project structures (with for example, multiple output folders in a same project). Thirdly, you will have the ability to contribute a class to influence the uris of the dependencies in the saved files (for example, change all the uris of the dependencies to other module to “platform:/plugins” uris that are more “eclipse plugin” friendly). Finally, it also features an improved resolution of the dependencies of a project with several options.</p>
<p>Your project will be able to have a dependency to Acceleo modules in another project (that should have been previously compiled). A valid Acceleo project is just a directory on the file system with at least one “source” sub-directory and one “output” sub-directory (no need of an Eclipse nature or anything like that).</p>
<p>This first solution is fine as long as you have the source code of the other modules but sometime you need to build something with the dependencies in jars. The maven plugin for Acceleo will let you declare a dependency to a jar containing already compiled Acceleo modules by using:</p>
<ul><li>The absolute path of the jar. Ex: <strong>C:\…\myJar.jar</strong></li>
<li>The path of the jar relative to the project built. Ex: <strong>${project.basedir}\lib\myJar.jar</strong></li>
<li>The groupId and the artifactId of the jar resolved by maven  (the version of the jar is optional since some version number includes the date of the build and therefore change often). Ex: <strong>myGroupId:myJar:myVersion</strong></li>
<li>The name of an Eclipse bundle resolved by Tycho preceding by “p2.eclipse-plugin” only in a Tycho based build (“p2.eclipse-plugin” is the groupId of all the dependencies resolved by Tycho). Just like the previous use case, the version of the jar is optional too. Ex: <strong>p2.eclipse-plugin:myJar:myVersion</strong></li>
</ul><p><a href="https://plus.google.com/u/0/photos/105625286543794908607/albums/5552047126204483729/5698906856629698914"><img height="236" src="https://lh5.googleusercontent.com/-fy0UjpsX0Gw/TxaVl41zgWI/AAAAAAAAAqM/o_dVujk0GBQ/s500/maven.png" width="500"/></a></p>
<p>For those who want to have a look at this new maven based build for Acceleo, you can find its source code on <a href="https://github.com/eclipse/acceleo/tree/master/maven/org.eclipse.acceleo.maven">github.com</a> and you can test it with a simple pom.xml like <a href="https://gist.github.com/1632174">this one</a>.</p>
</div></div>
    </summary>
    <updated>2012-01-18T13:08:35Z</updated>
    <category term="Acceleo"/>
    <category term="Eclipse"/>
    <category term="Maven"/>
    <category term="MDA"/>
    <source>
      <id>http://sbegaudeau.tumblr.com/</id>
      <author>
        <name>Stephane Begaudeau</name>
      </author>
      <link href="http://tumblr.superfeedr.com/" rel="hub" type="text/html"/>
      <link href="http://sbegaudeau.tumblr.com/" rel="alternate" type="text/html"/>
      <link href="http://sbegaudeau.tumblr.com/rss" rel="self" type="application/rss+xml"/>
      <subtitle>Stéphane Bégaudeau graduated from the Nantes University of Sciences and Technology and is currently working as an Eclipse Modeling consultant at Obeo in France. 

He is the leader of Acceleo, a code generator created by Obeo and now developed in the Eclipse foundation. He also worked on Obeo Traceability, an Eclipse based tool used to supervise code generators; OD4IS a set of JEE generators for Acceleo and the UML to Java generator for Acceleo.



  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-18017787-1']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();


Twitter: @sbegaudeau</subtitle>
      <title>Stephane Begaudeau</title>
      <updated>2012-02-04T04:49:37Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://tasktop.com/blog/?p=5643</id>
    <link href="http://tasktop.com/blog/eclipse/happy-birthday-tasktop" rel="alternate" type="text/html"/>
    <title>Happy Birthday Tasktop</title>
    <summary>Five years ago, on Friday January 15th, I defended my PhD thesis on Focusing Knowledge Work with Task Context. The following Monday, January 17th, we incorporated Tasktop Technologies. Driven by the years of research that it took to prove that tasks are more important than files, integration is more important than features, and that focus [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Five years ago, on Friday January 15th, I defended my PhD thesis on <a href="https://tasktop.com/resources/research#4">Focusing Knowledge Work with Task Context</a>.  The following Monday, January 17th, we incorporated Tasktop Technologies.  Driven by the years of research that it took to prove that tasks are more important than files, integration is more important than features, and that focus begets flow, we embarked on a journey to bring to market a transformation in how we work and collaborate around software.</p>
<p>Our journey and passion have been fueled by our customers and our open source community, as to date we have not taken any external funding, and instead embarked on what’s more recently been defined as the <a href="http://en.wikipedia.org/wiki/Lean_Startup">Lean Startup</a> approach to building a company in an Agile and customer-centric fashion.  Bootstrapping, we have doubled in revenue and nearly doubled in head count each year since our inception, and now support over a thousand customers and over a million open source users. Working closely with our ISV <a href="http://tasktop.com/connectors">partners</a>, the Eclipse community and open source ALM projects, we are proud to be one of the key contributors defining the future of ALM.</p>
<p><img alt="" class="aligncenter size-full wp-image-5658" height="332" src="http://tasktop.com/blog/wp-content/uploads/2012/01/kaia-kersten3.jpg" title="Kaia Kersten" width="590"/></p>
<p>In addition to the opportunity to be a part of a transformative endeavor, what’s guided our vision is a manic focus on the needs of individual software workers.  Mylyn and its commercial counterpart, Tasktop Dev, materialized because the growth in complexity of software and the fragmentation of ALM tools were bringing our and our fellow developers’ productivity to a halt.  Tasktop Sync was born out of the same need to give other stakeholders such as testers, project managers and business analysts, a connected and collaborative view on the software delivery process.  With our focus on integration, our goal is to empower developers and other stakeholders in order to advance ALM to support the rise of the <a href="http://online.wsj.com/article/SB10001424053111903480904576512250915629460.html">software-powered economy</a>.</p>
<p>We want to take this birthday moment to thank all of the customers and partners who have made it possible for us to do what we love, which is to invent the future of ALM and to strive for our goal of doubling the productivity of software developers and managers. We hope you like the next round of innovations that we are hard at work for launching in 2012, which will be a definitive year for software, for ALM and for Tasktop Technologies.
</p><div align="center">
<p class="smallParagraph"><a href="http://tasktop.com/about/webinars/"><b><i>Watch Tasktop webinars</i></b></a> </p>
</div>

	<div style="text-align: right;">
		<a class="twitter-share-button" href="http://twitter.com/share">Tweet</a>
	</div>
	 <img height="1" src="http://tasktop.com/blog/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&amp;post_id=5643" style="display: none;" width="1"/></div>
    </content>
    <updated>2012-01-18T07:54:49Z</updated>
    <category term="Eclipse"/>
    <category term="Mik on Eclipse"/>
    <category term="Mylyn"/>
    <category term="Open Source"/>
    <category term="Tasktop"/>
    <author>
      <name>Mik Kersten</name>
    </author>
    <source>
      <id>http://tasktop.com/blog</id>
      <link href="http://tasktop.com/blog/category/mik-eclipse/feed" rel="self" type="application/rss+xml"/>
      <link href="http://tasktop.com/blog" rel="alternate" type="text/html"/>
      <subtitle>Task-focused productivity for Enterprise Agile ALM</subtitle>
      <title>Tasktop Blog » Mik on Eclipse</title>
      <updated>2012-02-02T02:02:07Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-25023280.post-2001690610182501220</id>
    <link href="http://relengofthenerds.blogspot.com/feeds/2001690610182501220/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=25023280&amp;postID=2001690610182501220" rel="replies" title="0 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/25023280/posts/default/2001690610182501220" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/25023280/posts/default/2001690610182501220" rel="self" type="application/atom+xml"/>
    <link href="http://relengofthenerds.blogspot.com/2012/01/2011-by-numbers.html" rel="alternate" title="2011 by the numbers" type="text/html"/>
    <title>2011 by the numbers</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">2011 was an exciting year in the Eclipse community.  From my corner of the Eclipse universe, he's what it looked like:<br/><br/><br/><b>One book chapter, many thanks</b><br/><br/><div class="separator" style="clear: both; text-align: center;"/><div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-SEJsa22uNlg/TxR8mVxax8I/AAAAAAAAC60/GfzCuywG6-o/s1600/book.JPG" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="http://1.bp.blogspot.com/-SEJsa22uNlg/TxR8mVxax8I/AAAAAAAAC60/GfzCuywG6-o/s400/book.JPG" width="353"/></a></div><br/><br/>I contributed a chapter on Eclipse to the <a href="http://aosabook.org/">Architecture of Open Source Applications</a> in 2010 and the book was published in May 2011.  Thanks to Amy Brown and Greg Wilson, for their long hours editing and providing feedback to the authors of this book.  It's a great read!  When Greg first approached me about writing this chapter, my immediate thought was "How hard could it be? I live and breathe Eclipse all day".  It was much more difficult that I imagined but in the process I learned a tremendous amount and am a better committer for the experience.  Many thanks to DJ Houghton and John Arthorne for reviewing my drafts and providing valuable feedback. A special thanks to Jeff McAffer who I interviewed about the decision to switch to OSGi in 3.0 and Steve Northover for his suggestions to make the SWT section into something more pixel perfect.  Merci Olivier Thomann for answering my many compiler questions,  and Boris Bokowski and Paul Webster for their thorough discussions with me regarding the modelled workbench and dependency injection in 4.x.  Also, thanks to Mike Wilson to allow me the flexibility in my job to spend some time at work working on this chapter.  I'm excited to see that Amy and Greg are now editing a second volume of this book.<br/><br/><b>Six milestones, many release candidates, two service releases, and one coordinated release, four streams, thousands of builds, millions of tests</b><br/>No rest for the committers.<br/><br/><b>143 bug fixes</b><br/>I closed about 143 bugs in the releng  bucket in the past year.  That doesn't seem like much really.  I'd  have liked to solve more.  The largest issues implemented from a  releng perspective were <a href="http://relengofthenerds.blogspot.com/2011/01/implementing-shared-licenses-with-37m5.html">shared licenses</a>, <a href="http://relengofthenerds.blogspot.com/2011/03/sdk-code-coverage-with-jacoco.html">code coverage</a>, and the largest work item, the <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=345479">Git migration</a>.<br/><br/><b>42 Git repos  </b><br/>The Equinox and Eclipse projects migrated all their repos to Git.  We now have about 42 Git repos.  This involved a tremendous amount of work on the part of the Eclipse team as a whole.  There were many whiteboard drawings and detailed discussions about the migration process with John, Paul and a Mr. Gheorghe.  There was no Ringo.  Thank you Paul for all the huge amount of testing, script writing, and migration of all the ui and e4 repos. Thanks John for your work many sage suggestions on our Git migration, as well as your suggestion to implement the git flow method to simplify our development and build processes.  Thanks Andrew Niefer for migrating many of the Equinox and PDE repos, Bogdan Gheorghe for your work with SWT, and Oliver Thomann for testing JDT Core repos.  Thanks Tom Watson for your Git advice, having already climbed the Git learning curve while working on the OSGi Alliance repositories.  To Dani Megert and Markus Keller, your always fine attention to detail and pointing out areas that could be improved is appreciated. Paul is giving a talk about our migration at EclipseCon 2012 called <a href="https://www.eclipsecon.org/2012/users/pwebstercaibmcom">Let's Git this Party Started</a>.  I'm sure it will be insightful and entertaining.<br/><br/><b>One EclipseCon, two talks, one castle, many great people</b><br/>I was privileged to attend EclipseCon Europe in Ludwidsberg this past November and <a href="http://relengofthenerds.blogspot.com/2011/11/eclipsecon-europe-presentations-now.html">present two talks</a>.  I thoroughly enjoyed preparing these talks, and even more presenting them.  On the Wednesday morning, I talked about our Git Migration, and that evening I gave a talk with John Kellerman about history of Eclipse over the past 10 years.  After the second talk, a few people came up to me and said that the talk was so good that it should have been a keynote.  That was very fantastic to hear because we really put a huge amount of effort into that presentation.  I also had a lot of fun talking to people at our booth where we had posted many pictures of the <a href="https://plus.google.com/photos/108005684647521457105/albums/5658267552042814769">Eclipse family</a> from over the years. The Saturday after the conference Simon Kaegi, Eric Moffatt and I visited Heidelberg castle.  Canada scores very low on the castle index so this was a treat.    <br/><br/><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-eTt-ViWp538/TxCrVCkwgkI/AAAAAAAAC6U/UE7k9LIZkMQ/s1600/303005_10150522734484056_619649055_11236984_1350396174_n.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="300" src="http://4.bp.blogspot.com/-eTt-ViWp538/TxCrVCkwgkI/AAAAAAAAC6U/UE7k9LIZkMQ/s400/303005_10150522734484056_619649055_11236984_1350396174_n.jpg" width="400"/></a></div><br/>You can't buy Eclipse magazines or giant pretzels at train stations in Canada either. I was impressed.<br/><br/><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-x0jYkOwPWjU/TxNeskYOhHI/AAAAAAAAC6s/M8V6qzE6ABo/s1600/315025_10150522737569056_619649055_11236992_2058624652_n.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="http://4.bp.blogspot.com/-x0jYkOwPWjU/TxNeskYOhHI/AAAAAAAAC6s/M8V6qzE6ABo/s400/315025_10150522737569056_619649055_11236992_2058624652_n.jpg" width="300"/></a></div><br/><br/><b>19 blog posts </b><br/>I didn't have much time to write blogs posts this year.  The most popular one I wrote this year was about <a href="http://relengofthenerds.blogspot.com/2011/01/smashing-open-source-stereotypes.html">smashing open source stereotypes</a>. <br/><br/><b> </b><br/><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-uNcg2Gm0b5E/TxCjpg5HN0I/AAAAAAAAC6E/scIbor2JNMg/s1600/blogstats.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="325" src="http://4.bp.blogspot.com/-uNcg2Gm0b5E/TxCjpg5HN0I/AAAAAAAAC6E/scIbor2JNMg/s400/blogstats.jpg" width="400"/></a></div><b><br/></b><br/>I'm never sure how popular a blog post will when I write them. It's always a surprise.  The comparison of <a href="http://relengofthenerds.blogspot.com/2010/11/mozilla-versus-eclipse-build.html">Mozilla and Eclipse build infrastructure</a> I wrote last year still holds the record for most popular (it ended up on reddit).<br/><b><br/></b><br/><b>One marathon, many kilometers of training</b><br/>How is running related to release engineering?  Running keeps me sane when release engineering gets crazy :-)  Preparing for the Ottawa marathon in May means that you have to start training at the end of January.  Running through snow, ice, wind and rain teaches you there isn't really anything you can't do when you are willing put in a lot of hard work to reach your goal.  And when you reach that goal, there's a lot of joy, because you know  that you have conquered all the obstacles in your path and emerged  victorious. <br/><br/><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody><tr><td style="text-align: center;"><a href="http://2.bp.blogspot.com/-xVGJ_kSf2GA/TxCqNJGCOgI/AAAAAAAAC6M/30nOyf2CEio/s1600/196471_10150193602724056_619649055_8678164_2220430_n.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" height="300" src="http://2.bp.blogspot.com/-xVGJ_kSf2GA/TxCqNJGCOgI/AAAAAAAAC6M/30nOyf2CEio/s400/196471_10150193602724056_619649055_8678164_2220430_n.jpg" width="400"/></a></td></tr><tr><td class="tr-caption" style="text-align: center;">My sneakers after a 19K training run through deep slush</td></tr></tbody></table>Open source is really a huge team effort and I had a lot of fun in the Eclipse community in 2011.<br/><br/>Who knows what 2012 will bring?<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/25023280-2001690610182501220?l=relengofthenerds.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-17T15:54:51Z</updated>
    <published>2012-01-16T19:46:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="2011"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="eclipse"/>
    <author>
      <name>Kim Moir</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/14700841495895160750</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-25023280</id>
      <category term="p2"/>
      <category term="helios"/>
      <category term="releng"/>
      <category term="hudsonci"/>
      <category term="2011"/>
      <category term="books"/>
      <category term="community"/>
      <category term="regexp"/>
      <category term="open source"/>
      <category term="codecoverage"/>
      <category term="comparator"/>
      <category term="relax"/>
      <category term="equinox"/>
      <category term="opensource"/>
      <category term="git"/>
      <category term="metrics"/>
      <category term="topten"/>
      <category term="builds"/>
      <category term="smashing"/>
      <category term="eclipse"/>
      <category term="celebration"/>
      <category term="jacoco"/>
      <category term="Indigo"/>
      <category term="diversity"/>
      <category term="eclipsecon"/>
      <category term="birthday"/>
      <category term="research"/>
      <category term="lovelace"/>
      <category term="endgame"/>
      <category term="licenses"/>
      <category term="webmaster"/>
      <category term="thanks"/>
      <category term="hudson"/>
      <category term="revert"/>
      <category term="eclipsecon. topten"/>
      <category term="hacker"/>
      <category term="running"/>
      <category term="build"/>
      <category term="negotiation"/>
      <category term="software"/>
      <category term="history"/>
      <category term="book review"/>
      <category term="ship"/>
      <category term="mozilla"/>
      <category term="bunnies"/>
      <category term="failure"/>
      <category term="pde"/>
      <category term="AdaLovelaceDay09"/>
      <category term="outreach"/>
      <author>
        <name>Kim Moir</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/14700841495895160750</uri>
      </author>
      <link href="http://relengofthenerds.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/25023280/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://relengofthenerds.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/25023280/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>Release Engineering for Eclipse and RT Equinox</subtitle>
      <title>Releng of the Nerds</title>
      <updated>2012-01-26T20:43:06Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://www.toedter.com/blog/?p=800</id>
    <link href="http://www.toedter.com/blog/?p=800" rel="alternate" type="text/html"/>
    <title>Eclipse 4.x talk for JUG Ostfalen</title>
    <summary>If you are interested in the Eclipse 4.x Application Platform and happen to live close to Braunschweig (Germany), join my talk for the JUG-Ostfalen:

"Was ist neu bei der Eclipse Rich Client Platform 4.x?"

When: Friday, January 20th, 7:00 pm
Where: CKC Braunschweig, Am Alten Bahnhof 13, 38122 Braunschweig
Language: German

After my session there is another talk: "Agile ...</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://www.toedter.com/blog/wp-content/uploads/2012/01/JUG_Ostfalen_Logo.jpg"><img alt="" class="alignnone  wp-image-801" height="62" src="http://www.toedter.com/blog/wp-content/uploads/2012/01/JUG_Ostfalen_Logo-300x62.jpg" title="JUG_Ostfalen_Logo" width="300"/></a></p>
<p>If you are interested in the Eclipse 4.x Application Platform and happen to live close to Braunschweig (Germany), join my talk for the JUG-Ostfalen:</p>
<p>“<strong>Was ist neu bei der Eclipse Rich Client Platform 4.x?</strong>”</p>
<p>When: Friday, January 20th, 7:00 pm<br/>
Where: CKC Braunschweig, Am Alten Bahnhof 13, 38122 Braunschweig<br/>
Language: German</p>
<p>After my session there is another talk: <strong>“Agile Review</strong>” (Eclipse Plugin) by<br/>
Malte Brunnlieb, Philipp Diebold, Thilo Rauch und Peter Reuter.</p>
<p>The event is free: Registration and info is here: <a href="http://eclipse4.eventbrite.com/">http://eclipse4.eventbrite.com/</a></p>
<p>Would be great to see you there!</p>
<p>Kai</p>
<p>You find me on <a href="http://twitter.com/kaitoedter">Twitter</a> and <a href="http://gplus.to/toedter">Google+</a>.<br/>
Next <a href="http://www.rcptraining.de/kurstermine/">Eclipse RCP 3.x/4.x trainings</a> in Munich</p>
<p class="wp-flattr-button"/> <p><a href="http://www.toedter.com/blog/?flattrss_redirect&amp;id=800&amp;md5=5829c3dc2be8d2ec094304ebad5f2b6f" target="_blank" title="Flattr"><img alt="flattr this!" src="http://www.toedter.com/blog/wp-content/plugins/flattr/img/flattr-badge-large.png"/></a></p></div>
    </content>
    <updated>2012-01-17T11:19:02Z</updated>
    <category term="Eclipse"/>
    <category term="General"/>
    <category term="Java"/>
    <author>
      <name>Kai Tödter</name>
    </author>
    <source>
      <id>http://www.toedter.com/blog</id>
      <link href="http://www.toedter.com/blog/?feed=rss2&amp;cat=2" rel="self" type="application/rss+xml"/>
      <link href="http://www.toedter.com/blog" rel="alternate" type="text/html"/>
      <subtitle>Java, Eclipse, OSGi, and other cool stuff</subtitle>
      <title>Kai's Blog » Eclipse</title>
      <updated>2012-01-17T11:28:07Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-5914783.post-5275957081109876280</id>
    <link href="http://www.blogger.com/feeds/5914783/posts/default/5275957081109876280" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/5914783/posts/default/5275957081109876280" rel="self" type="application/atom+xml"/>
    <link href="http://blog.ankursharma.org/2011/12/osgi-tracing-in-equinox.html" rel="alternate" title="OSGi Tracing in Equinox" type="text/html"/>
    <title>OSGi Tracing in Equinox</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div dir="ltr" style="text-align: left;">The Equinox implementation of OSGi provides the tracing APIs in <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">org.eclipse.osgi</span> plug-in since Eclipse 3.5. The tracing options are generally Boolean flags stored in a <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">.options</span> file as key-value pair. A typical .options file would look like this<br/><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">org.my.plugin/ui=true</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">org.my.plugin/ui/editor=true</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">org.my.plugin/ui/prefs=true</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">org.my.plugin/debug=false</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">org.my.plugin/debug/data=true</span><br/><br/>The hierarchy is defined using the slashes. But this is only a general practice. The tracing does not understand this.<br/><br/><b><a href="http://help.eclipse.org/indigo/topic/org.eclipse.platform.doc.isv/reference/misc/runtime-options.html">-osgi.debug</a></b><br/>To load the values from the .options file, provide the file name as command line parameter (or program parameter in launch config)<br/><br/>command line arg example<br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">eclipse.exe -debug C:\tracing\.options</span><br/><br/>program argument (in launch config) example<br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">-Dosgi.debug=C:\tracing\.options</span><br/><br/>Using -debug is same as setting the osgi.debug system property.<br/><br/><b>Accessing the option values at runtime</b><br/><b>1. In RCP application</b><br/>If the RCP application has access to the <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">org.eclipse.core,runtime.Platform</span> object and thus they can access it directly like this<br/><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">String value = Platform.getDebugOption("org.my.plugin/ui");</span><br/><br/>User can validate if the program is running in debug mode using <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">Platform.inDebugMode()</span> API.<br/><br/><b>2. In pure OSGi application</b><br/>An OSGi application can access these options using the DebugOptions service<br/><br/><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">ServiceTracker debugTracker = new ServiceTracker(bundleContext, DebugOptions.class.getName(), null);</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">debugTracker.open();</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">DebugOptions debugOptions = (DebugOptions) debugTracker.getService()</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">boolean uiOption = debugOptions.getBooleanOption("org.my.plugin/ui", false);</span><br/><br/>Using the API has the advantage that user does not have to check for nullness.<br/><br/><b>More Tracing API</b><br/>org.eclipse.osgi provides more APIs which are very helpful in logging the trace.<br/><br/><b>1. Registering a debug option listener</b><br/>The listener can be registered as service using the BundleContext (that you receive in the activator class when the bundle is started)<br/><br/><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">final Hashtable&lt;String, String&gt; properties = new Hashtable&lt;String, String&gt;(4);</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">properties.put(DebugOptions.LISTENER_SYMBOLICNAME, TracingConstants.BUNDLE_ID);</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">bundleContext.registerService(DebugOptionsListener.class.getName(), new MyDebugOptionsListener(), properties );</span><br/><div><br/></div><div><b>2. Listening to the debug option change events</b><br/>Once the listener is registered, a callback will happen each time a debug option is changed. The callback does not tells you the delta and instead throws the whole lot. So we can use this place to read and init from the DebugOptions<br/><br/><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">/* (non-Javadoc)</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">* @see org.eclipse.osgi.service.debug.DebugOptionsListener#optionsChanged(org.eclipse.osgi.service.debug.DebugOptions)</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">*/</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">public void optionsChanged(final DebugOptions options) {</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-tab-span" style="white-space: pre;"> </span>//DebugTrace trace;</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-tab-span" style="white-space: pre;"> </span>trace = options.newDebugTrace("org.my.plugin");</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-tab-span" style="white-space: pre;"> </span>// boolean field</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-tab-span" style="white-space: pre;"> </span>DEBUG = options.getBooleanOption("org.my.plugin/debug", false);</span><br/><span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">}</span><br/><br/></div><div>this is just an indicative code. You don't have to necessarily do it this way.</div><br/><b>3. Writing to trace</b><br/>This is the easiest part. Afterall the reason we did the whole exercise was to make the tracing simple. A handle to trace object can be obtained from the debug options.<br/><br/><br/><span style="font-family: 'Courier New', Courier, monospace;">/** Trace object for this bundle */</span><br/><span style="font-family: 'Courier New', Courier, monospace;">private final static DebugTrace TRACE = MyPluginActivator.getDefault().getTrace();  // returns the trace object obtained using options.newDebugTrace("org.my.plugin");</span><br/><br/><span style="font-family: 'Courier New', Courier, monospace;"><br/></span><br/><br/><span style="font-family: 'Courier New', Courier, monospace;">@Override</span><br/><span style="font-family: 'Courier New', Courier, monospace;">protected Control createContents(final Composite parent) {</span><br/><span style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-tab-span" style="white-space: pre;"> </span>if (MyPluginActivator.DEBUG) {</span><br/><span style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-tab-span" style="white-space: pre;">  </span>TRACE.traceEntry("/debug", parent);</span><br/><span style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br/><span style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-tab-span" style="white-space: pre;"> </span>...</span><br/><span style="font-family: 'Courier New', Courier, monospace;"><span class="Apple-tab-span" style="white-space: pre;"> </span>...</span><br/><span style="font-family: 'Courier New', Courier, monospace;">}</span><br/><br/>Checking MyPluginActivator.DEBUG is optional. TRACE.traceEntry will check for the flag "/debug" anyway. This is to improve of the performance. We store the the flag values to boolean fields and update them through the listener.<br/><br/><br/><br/><b>4. Where is the log file?</b><br/> The log is stored in the file as set in the debug options. By default, it tends to store them to <span style="font-family: 'Courier New', Courier, monospace;">workspace\.metadata\trace.log</span><br/><br/><span style="font-family: 'Courier New', Courier, monospace;">options</span><span style="font-family: 'Courier New', Courier, monospace;">.setFile(new File("/path/to/trace/file"));</span><br/><br/><b>5. Controlling the trace logs</b><br/>The logs are conntolled by two system properties<br/><br/><span style="font-family: 'Courier New', Courier, monospace;">eclipse.trace.size.max</span> : The system property used to specify size a trace file can grow before it is rotated<br/><span style="font-family: 'Courier New', Courier, monospace;">eclipse.trace.backup.max</span> : The system property used to specify the maximum number of backup trace files to use<br/><br/><b>Easier way to manager the logs?</b><br/>PDE will be providing UI for managing the logs and make them dynamic. See <b><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=296631">Bug 296631</a></b>. This is mostly like to make it to Juno M5 release.<br/><br/><b>What do you mean by dynamic?</b><br/>If you notice, the debug options can be loaded at the launch time (using -osgi.debug) or programatically when running. However, if you wish to turn the tracing on/off in a running product, its tricky. PDE will be providing an extension using which a plug-in can expose its debug option flags. The UI will display these flags in preferences where they can be turned on/off for a running application. Cool! isn't it?<br/><br/><br/>* If you find any discrepancies in the above post, please bring it to my notice so that they can be updated.<br/><br/><b>Update</b>: Tracing UI is now available in latest Integration builds and will be there from Juno M5.<br/><br/></div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/5914783-5275957081109876280?l=blog.ankursharma.org" width="1"/></div></div>
    </content>
    <updated>2012-01-17T05:54:07Z</updated>
    <published>2011-12-26T08:30:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="trace"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="equinox"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="osgi"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="PlanetEclipse"/>
    <author>
      <name>Ankur Sharma</name>
      <email>noreply@blogger.com</email>
      <uri>https://profiles.google.com/114582282039645611012</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-5914783</id>
      <category term="p2"/>
      <category term="output.."/>
      <category term="Source Folders"/>
      <category term="Search Term"/>
      <category term="Output Folders"/>
      <category term="Export"/>
      <category term="Headless Build"/>
      <category term="Admirer of Eclipse"/>
      <category term="Part"/>
      <category term="vm"/>
      <category term="assertIdentifer"/>
      <category term="Remote Debugging"/>
      <category term="Import"/>
      <category term="Import Arguments Wizard"/>
      <category term="Eclipse Demo Camp"/>
      <category term="Modeled UI"/>
      <category term="equinox"/>
      <category term="Galileo"/>
      <category term="Application.xmi"/>
      <category term="Bundle-RequiredExecutionEnvironment"/>
      <category term="System Library Validation"/>
      <category term="osgi"/>
      <category term="Context Help"/>
      <category term="Custom Editor"/>
      <category term="Export Wizard"/>
      <category term="LinkedIn"/>
      <category term="Launch Config"/>
      <category term="License"/>
      <category term="Update Site"/>
      <category term="Quick Tip"/>
      <category term="Execution Environment"/>
      <category term="Heap"/>
      <category term="E4Application"/>
      <category term="SourceViewerConfiguration"/>
      <category term="TextSourceViewerConfiguration"/>
      <category term="Feature based launching"/>
      <category term="Target Definition"/>
      <category term="Demo Camp"/>
      <category term="Extension Point Schema Builder"/>
      <category term="Heap Status"/>
      <category term="Helios"/>
      <category term="Cheat Sheet"/>
      <category term="RuleBasedPartitionScanner"/>
      <category term=".classpath"/>
      <category term="Eclipse Day"/>
      <category term="XML"/>
      <category term="See also"/>
      <category term="3.6 M2"/>
      <category term="jre.compilation.profile"/>
      <category term="Eclipse.ini"/>
      <category term="SWTBot"/>
      <category term="RCP"/>
      <category term="Target Platform"/>
      <category term="javacWarnings"/>
      <category term="build.xml"/>
      <category term="javacSource"/>
      <category term="Bundle-Localization"/>
      <category term="Eclipse"/>
      <category term="Debug"/>
      <category term="Target Platform State"/>
      <category term="Target Definition Editor"/>
      <category term="bin.includes"/>
      <category term="bin.excludes"/>
      <category term="String Externalize"/>
      <category term="e4"/>
      <category term="Java Build Path"/>
      <category term="Table of Contents"/>
      <category term="Plug-in Manifest Builder"/>
      <category term="Plugins Import Wizard"/>
      <category term="Part Stack"/>
      <category term="Hyperlinking"/>
      <category term="trace"/>
      <category term="Build"/>
      <category term="PDE"/>
      <category term="3.6"/>
      <category term="Product Config"/>
      <category term="enumIdentifier"/>
      <category term="Best Practice"/>
      <category term="source.."/>
      <category term="API Tooling Ant Task"/>
      <category term="SpellingReconcileStrategy"/>
      <category term="src.excludes"/>
      <category term="API Tooling Reports"/>
      <category term="src.includes"/>
      <category term="vmargs"/>
      <category term="Friend of Eclipse"/>
      <category term="API Baseline"/>
      <category term="Spell Check"/>
      <category term="Xmx"/>
      <category term="Xms"/>
      <category term="VM Arguments"/>
      <category term="PDE Good Practices"/>
      <category term="Java compliance"/>
      <category term="Preferences"/>
      <category term="Lazy Loading"/>
      <category term="Part Sash Container"/>
      <category term="API Tooling"/>
      <category term="How to"/>
      <category term="About"/>
      <category term="Singleton Plug-ins"/>
      <category term="PlanetEclipse"/>
      <category term="Heap Size"/>
      <category term="BREE"/>
      <category term="Editor"/>
      <category term="Install"/>
      <category term="Remote Eclipse Debugging"/>
      <category term="Compilation Environment"/>
      <category term="build.properties"/>
      <category term="API Use"/>
      <category term="javacTarget"/>
      <category term="Source Page"/>
      <category term="Source Bundle"/>
      <author>
        <name>Ankur Sharma</name>
        <email>noreply@blogger.com</email>
        <uri>https://profiles.google.com/114582282039645611012</uri>
      </author>
      <link href="http://blog.ankursharma.org/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://blog.ankursharma.org/search/label/PlanetEclipse" rel="alternate" type="text/html"/>
      <link href="http://www.blogger.com/feeds/5914783/posts/default/-/PlanetEclipse/-/PlanetEclipse?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <link href="http://feeds.feedburner.com/ankursharma/blog" rel="self" type="application/atom+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>my experiences as I use, develop and hack Eclipse</subtitle>
      <title>eclipse and me</title>
      <updated>2012-01-23T11:54:59Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://tomsondev.bestsolution.at/?p=2845</id>
    <link href="http://tomsondev.bestsolution.at/2012/01/16/svg-for-fxml-conversion/" rel="alternate" type="text/html"/>
    <title>SVG for FXML-Conversion</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">So some weeks ago I read Jasper Potts blog on FXG to FXML-Conversion tool (useing simple XSL-Stylesheet). This blog Jasper asked if there’s probably one day someone providing a conversion tool for SVG. This has been on my list for some time now and because I was traveling a bit in the last 2 weeks [...]<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=tomsondev.bestsolution.at&amp;blog=7995503&amp;post=2845&amp;subd=tomsondev&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>So some weeks ago I read <a href="http://fxexperience.com/2011/12/fxg-to-fxml-in-javafx/">Jasper Potts</a> blog on FXG to FXML-Conversion tool (useing simple XSL-Stylesheet). This blog Jasper asked if there’s probably one day someone providing a conversion tool for SVG.</p>
<p>This has been on my list for some time now and because I was traveling a bit in the last 2 weeks I had some time to hack on such a converter. I’ve not used XSL but instead used <a href="http://www.eclipse.org/Xtext/xtend/">xtend</a> (<a href="https://github.com/tomsontom/e-fx-clipse/blob/master/at.bestsolution.efxclipse.formats.svg/src/at/bestsolution/efxclipse/formats/svg/handler/XMLLoader.java">svg-parser (java)</a>,<a href="https://github.com/tomsontom/e-fx-clipse/blob/master/at.bestsolution.efxclipse.formats.svg/src/at/bestsolution/efxclipse/formats/svg/converter/FXMLConverter.xtend">fxml-converter (xtend)</a>) (because an XML-File comes with a lot of multiline strings). It took some time to wrap my head around SVG and how I could translate this in FXML/JavaFX 2.0 API calls but I finally I’m at a point where I have something to show off:</p>
<p><a href="http://tomsondev.files.wordpress.com/2012/01/conversion_in_action.png"><img alt="" class="alignnone size-full wp-image-2846" height="382" src="http://tomsondev.files.wordpress.com/2012/01/conversion_in_action.png?w=588&amp;h=382" title="conversion_in_action" width="588"/></a></p>
<p>Please note that the JavaFX 2.0 image on the left is only made up of primitive JavaFX 2.0 elements (Circles, SVGPaths, Rect, Gradients, …) and it by far does not yet handle all the nifty stuff one can do with SVG but it shows me that such a conversion tool is doable to some extend though e.g. when it comes to filtering, … SVG has much more definitions than the JavaFX-API currently provides. </p>
<p>I was not even able to convert the <a href="http://www.w3.org/TR/2011/REC-SVG11-20110816/filters.html#feGaussianBlurElement">SVG-Gaussian-Blur</a> to <a href="http://docs.oracle.com/javafx/2.0/api/javafx/scene/effect/GaussianBlur.html">JavaFX’ Gaussian-Blur</a> (but that might just me I’m not an expert in graphics stuff), SVG allows to apply multiple filters/effects to a node, … . So to provide full SVG-Support – without residing to libraries like Batik – in JavaFX 2.x we’d need more API (or at least a tutorial how to e.g. write custom effects) but even with the current API one can get quite far as you don’t notice any missing thing in the above screenshot.</p>
<p>I’ve pushed the orignal <a href="https://github.com/tomsontom/e-fx-clipse/blob/master/at.bestsolution.efxclipse.formats.svg/samples/oxygen/application-exit.svg">svg-File</a> (from the KDE oxygen-theme) and the resulting <a href="https://github.com/tomsontom/e-fx-clipse/blob/master/at.bestsolution.efxclipse.formats.svg/samples/application-exit.fxml">fxml-File</a> to my git repo so that you can compare them.</p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/tomsondev.wordpress.com/2845/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tomsondev.wordpress.com/2845/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/tomsondev.wordpress.com/2845/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tomsondev.wordpress.com/2845/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/tomsondev.wordpress.com/2845/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tomsondev.wordpress.com/2845/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/tomsondev.wordpress.com/2845/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tomsondev.wordpress.com/2845/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/tomsondev.wordpress.com/2845/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tomsondev.wordpress.com/2845/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/tomsondev.wordpress.com/2845/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tomsondev.wordpress.com/2845/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/tomsondev.wordpress.com/2845/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tomsondev.wordpress.com/2845/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=tomsondev.bestsolution.at&amp;blog=7995503&amp;post=2845&amp;subd=tomsondev&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-16T18:18:25Z</updated>
    <category term="e(fx)clipse"/>
    <category term="Uncategorized"/>
    <author>
      <name>Tom Schindl</name>
    </author>
    <source>
      <id>http://tomsondev.bestsolution.at</id>
      <logo>http://0.gravatar.com/blavatar/293a1486b971639e6153cd953d1dbc9e?s=96&amp;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</logo>
      <link href="http://tomsondev.bestsolution.at/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://tomsondev.bestsolution.at" rel="alternate" type="text/html"/>
      <link href="http://tomsondev.bestsolution.at/osd.xml" rel="search" title="Tomsondev Blog" type="application/opensearchdescription+xml"/>
      <link href="http://tomsondev.bestsolution.at/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Tom's opensource development</subtitle>
      <title>Tomsondev Blog</title>
      <updated>2012-02-04T04:49:26Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://planetorion.org/news/?p=156</id>
    <link href="http://planetorion.org/news/2012/01/writing-a-content-assist-plugin-for-orion/" rel="alternate" type="text/html"/>
    <title>Writing a Content Assist Plugin For Orion</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Orion includes a simple but powerful infrastructure for implementing content assist for your favorite language. This article will describe how to create your own content assist plugin by working through a simple example. As with any Orion plugin, the starting … <a href="http://planetorion.org/news/2012/01/writing-a-content-assist-plugin-for-orion/">Continue reading <span class="meta-nav">→</span></a></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Orion includes a simple but powerful infrastructure for implementing content assist for your favorite language. This article will describe how to create your own content assist plugin by working through a simple example. As with any Orion plugin, the starting point is an HTML file declaring your plugin. You can find a complete example <a href="https://github.com/jarthorn/orion.ruby/blob/master/public/rubyEditor.html">here</a>, but the body of the plugin is a simple script like this:</p>
<pre class="js ruler" name="orion">  window.onload = function() {
    var provider = new eclipse.PluginProvider();
    provider.registerServiceProvider("orion.edit.contentAssist",
      new RubyContentAssistProvider(),
      {name: "Ruby content assist", pattern: "\\.(ru|rb)$"});
    provider.connect();
  };
</pre>
<p>This script registers an implementation of the <tt>orion.edit.contentAssist</tt> service. The service parameters indicate that it should be associated with filenames ending in “.ru”, or “.rb”. The content assist implementation is found in the RubyContentAssistProvider object defined in a separate script, <a href="https://github.com/jarthorn/orion.ruby/blob/master/public/rubyContentAssist.js">rubyContentAssist.js</a>. This script defines a service implementation object declaring the <tt>computeProposals</tt> method. The completion reference for the arguments and return value of this method are provided in the <a href="http://wiki.eclipse.org/Orion/Documentation/Developer_Guide/Plugging_into_the_editor#orion.edit.contentAssist"><tt>orion.edit.contentAssist</tt></a> documentation. </p>
<h3>Example 1: Simple keywords</h3>
<p>Let’s start with a simple example that offers completion on a subset of Ruby’s reserved keywords.</p>
<pre class="js ruler" name="orion">function computeProposals(prefix) {
  return ["alias","and","begin", "break","case","class"];
}
</pre>
<p>We are given a string argument that contains the sequence of word characters immediately preceding the current cursor position. We didn’t use the argument here but we could have used it to only compute the proposals matching that prefix. Since a simple keyword list is trivial to compute we didn’t bother – the Orion content assist implementation will only show proposals matching that prefix anyway. Here’s a shot of our current content assist implementation in action:</p>
<p><a href="http://planetorion.org/news/wp-content/uploads/2012/01/assist-ruby-simple.png"><img alt="" class="alignnone size-full wp-image-158" height="105" src="http://planetorion.org/news/wp-content/uploads/2012/01/assist-ruby-simple.png" title="assist-ruby-simple" width="293"/></a></p>
<h3>Example 2: Advanced completion features</h3>
<p>Now let’s look at a more interesting example:</p>
<pre class="js ruler" name="orion">  function computeProposals(prefix, buffer, selection) {
    var proposals = ["alias","and","begin", "break","case","class"];
    var prefixStart = selection.offset - prefix.length;
    var precedingChar = buffer.charAt(prefixStart - 1);
    if (precedingChar === '=' &amp;&amp; "begin".indexOf(prefix) === 0) {
      //suggest writing a block comment
      proposals.push({
        proposal: "begin\n\n=end",
        description: "=begin - block comment",
        escapePosition: prefixStart+6
      });
    }
    return proposals;
  }
</pre>
<p>We have added two more arguments to the <tt>computeProposals</tt> function: <b>buffer</b>, and <b>selection</b>. These arguments contain the current editor buffer and selection at the time content assist was invoked. We are using this information to check if the user is attempting to create a Ruby block comment, which starts with “=begin”.</p>
<p>Instead of returning a simple string in this example, we are returning a proposal object. This object allows us to provide more details back to the caller such as a description of the proposal, and the cursor position the editor should have after the completion has been inserted. In this case we want the cursor to end up inside the newly created block comment. </p>
<p>Also note that the text of the proposal does not include the equals character. The completion engine will only replace the provided prefix word, which only includes normal word characters (letters, numbers, or the underscore character). We already know that the character immediately before the prefix is an equals character already, so we don’t need to insert another one. Here is a shot of our enhanced content assist in action:</p>
<p><a href="http://planetorion.org/news/wp-content/uploads/2012/01/assist-ruby-comment.png"><img alt="" class="alignnone size-full wp-image-159" height="137" src="http://planetorion.org/news/wp-content/uploads/2012/01/assist-ruby-comment.png" title="assist-ruby-comment" width="359"/></a></p>
<p>Note that both the <tt>begin</tt> keyword and the block comment proposal are included here. The description we provided for the block comment proposal helps the user understand the difference in this case. A more complete example could do more sophisticated analysis of the source to rule out the possibility of a keyword appearing at this location, and only show the block comment proposal.</p>
<h3>Example 3: Linked mode completion</h3>
<p>We’ll use one final example to illustrate Orion’s linked mode completion. This works exactly like some of the content assist in the Eclipse Java development tools, where after selecting a proposal the user uses the tab key to iterate through a set of fields that need to be filled in. Once all the fields are filled in, the user presses enter to finish the insertion process and exit linked mode. In Orion we indicate a linked mode completion by adding a <tt>positions</tt> property to a returned proposal. This property is an array of position objects indicating the offset and length of each linked region that requires user completion. In this example we use linked mode for an “if block” template where the user must provide the conditional expression:</p>
<pre class="js ruler" name="orion">  function computeProposals(prefix, buffer, selection) {
    var proposals = [];
    var prefixStart = selection.offset - prefix.length;
    if ("if".indexOf(prefix) === 0) {
      //suggest writing a block comment
      proposals.push({
        proposal: "if condition\n\t\nend",
        description: "if - if block",
        positions: [{offset: prefixStart + 3, length: 9}]
        escapePosition: prefixStart+14
      });
    }
    return proposals;
  }
</pre>
<p>When this proposal is accepted, the proposal text is inserted and the editor selection moves to the first position, which is the “condition” field.  Below is a screenshot of what the editor looks like after this proposal has been selected. Note that the message area in the Orion toolbar indicates to the user that they have entered into a linked mode completion.</p>
<p><a href="http://planetorion.org/news/wp-content/uploads/2012/01/assist-ruby-linked.png"><img alt="" class="alignnone size-full wp-image-160" height="184" src="http://planetorion.org/news/wp-content/uploads/2012/01/assist-ruby-linked.png" title="assist-ruby-linked" width="341"/></a></p>
<p>After editing the condition, the user hits <b>Enter</b> to finish the insertion, and the cursor will move to the indicated escape position. Note that the <tt>escapePosition</tt> property doesn’t need to account for the fact that the user might add or remove characters in the linked fields before they are done. The content assist engine will automatically adjust this value to account for any typing, so you just need to record the final cursor position under the assumption that the user will not modify any of the linked fields.</p>
<p>This concludes our overview of Orion’s content assist infrastructure. As these examples illustrate, it is very easy to get started with writing your own content assist service for Orion. Writing a truly powerful content assist service requires much more in depth source code analysis, but Orion takes care of all the basic editing infrastructure to let you focus on the language analysis. Check out the complete <a href="https://github.com/jarthorn/orion.ruby">Ruby editor example</a> and <a href="http://wiki.eclipse.org/Orion/Documentation/Developer_Guide/Plugging_into_the_editor#orion.edit.contentAssist">Developer guide</a> for the most up to date details.</p>
<p><br/>
</p></div>
    </content>
    <updated>2012-01-16T18:12:35Z</updated>
    <category term="Tips &amp; Tricks"/>
    <author>
      <name>John Arthorne</name>
    </author>
    <source>
      <id>http://planetorion.org/news</id>
      <link href="http://planetorion.org/news/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://planetorion.org/news" rel="alternate" type="text/html"/>
      <subtitle>News for the Eclipse Orion project</subtitle>
      <title>Orion News</title>
      <updated>2012-02-01T15:01:42Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://www.toedter.com/blog/?p=765</id>
    <link href="http://www.toedter.com/blog/?p=765" rel="alternate" type="text/html"/>
    <title>GWT Contacts Demo with MVP and Testing</title>
    <summary>On Monday, January 23th, I am going to talk about some cool features of the Google Web Toolkit (GWT) at the OOP 2012 conference in Munich. To have a live demo for discussion, I implemented a GWT port of my Eclipse 4 Contacts Demo. In this blog post, I talk a bit about my ...</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>On Monday, January 23th, I am going to talk about some cool features of the Google Web Toolkit (GWT) at the OOP 2012 conference in Munich. To have a live demo for discussion, I implemented a GWT port of my Eclipse 4 Contacts Demo. In this blog post, I talk a bit about my experience with Google’s MVP (Model View Presenter) approach, including activities, places and event bus. Furthermore about UIBinder in combination with GWT Designer and Presenter testing using Mockito.</p>
<p>You can find the latest source of the demo at <a href="https://github.com/toedter/gwt-mvp-contacts">https://github.com/toedter/gwt-mvp-contacts</a>. Here is a screen shot, as you see, I did not focus on nice design. Click on the image to see it in original size.</p>
<p><a href="http://www.toedter.com/blog/wp-content/uploads/2012/01/gwt-contacts.png"><img alt="" class="alignnone size-medium wp-image-766" height="225" src="http://www.toedter.com/blog/wp-content/uploads/2012/01/gwt-contacts-300x225.png" title="gwt-contacts" width="300"/></a></p>
<p><strong>Model View Presenter (MVP)</strong></p>
<p>The Model View Presenter Pattern has different flavors: “<a href="http://www.martinfowler.com/eaaDev/PassiveScreen.html">Passive View</a>” and “<a href="http://www.martinfowler.com/eaaDev/SupervisingPresenter.html">Supervising controller</a>“. In Passive View there is no dependency between model and view, Supervising Controller is not so strict and allows e.g. data binding from model to view. In GWT, presenters are represented by Activities, views are implemented by GWT UI classes. There are 2 common ways to define the binding between views and presenters: Either the presenter defines a display interface that the view has to implement, or the view interface provides a presenter interface. The latter one is often used in GWT when the UI is created with UIBinder, because it makes it easier for the view to call back to his presenter. In the contacts demo, the view interface for the list view looks like</p>
<pre class="brush: java; title: ; notranslate">public interface IContactListView extends IsWidget, AcceptsOneWidget {
  public interface Presenter {
    void goTo(Place place);
    void select(int index);
    void select(Contact contact);
  }

  void setPresenter(Presenter presenter);
  void selectInitialContact(Contact contact);
  void initialize(List contacts);
}
</pre>
<p>As you see, for laziness reasons I don’t use “Passive View” since I pass a domain object (Contact) to the view. A good introduction into GWT MVP you find at the <a href="http://code.google.com/webtoolkit/doc/latest/DevGuideMvpActivitiesAndPlaces.html">GWT Web site</a>. If you have a more application-like layout with kind of toolbar and several display regions, you might think you will need nested presenters/activities, but you don’t have to nest them. Thomas Broyer wrote a<a href="http://tbroyer.posterous.com/gwt-21-activities-nesting-yagni"> nice article</a> about this issue, and I used his approach in my demo.</p>
<p><strong>UIBinder and GWT Designer</strong></p>
<p>UIBinder splits a UI component into a Java part and an XML/CSS part. That makes it easier to separate concerns and helps designers and developers working together. <a href="http://code.google.com/webtoolkit/tools/download-gwtdesigner.html">GWT Designer</a> is a nice and free GWT UI Editor for Eclipse. One feature is the automatic creation of MPV related infrastructure, like corresponding activities and places. In the demo I have several implementations of the list view and the details view. You can change them by altering the ClientFactory implementation. The screen shot below shows a small details view example in GWT Designer, klick on it to see the image in original size.</p>
<p><a href="http://www.toedter.com/blog/wp-content/uploads/2012/01/gwt-designer.png"><img alt="" class="alignnone size-medium wp-image-770" height="174" src="http://www.toedter.com/blog/wp-content/uploads/2012/01/gwt-designer-300x174.png" title="gwt-designer" width="300"/></a></p>
<p><strong>Presenter Testing with mockito</strong></p>
<p>One advantage of MVP based approaches is the good testability. For that purpose I wrote a few exemplary tests using <a href="http://code.google.com/p/mockito/">mockito </a>as Mocking framework. The reason for using plain JUnit tests together with mocks is mostly speed. With mockito it is pretty easy to mock all the involved GWT MVP infrastructure like activities, places, event bus and even a GWT Remote Procedure Call. Here is an example for a presenter test:</p>
<pre class="brush: java; title: ; notranslate">@RunWith(MockitoJUnitRunner.class)
public class ContactListActivityTest {

	@Mock
	private IClientFactory clientFactoryMock;

	@Mock
	private PlaceController placeControllerMock;

	@Mock
	private IContactListView contactListViewMock;

	@Mock
	private AcceptsOneWidget acceptsOneWidgetMock;

	@Mock
	private IContactServiceAsync contactServiceAsyncMock;

	@Mock
	private EventBus eventBusMock;

	private List contacts;
	private Contact contact1;
	private Contact contact2;

	@SuppressWarnings("unchecked")
	@Before
	public void setUp() throws Exception {
		when(clientFactoryMock.getPlaceController()).thenReturn(placeControllerMock);
		when(clientFactoryMock.getContactListView()).thenReturn(contactListViewMock);
		when(clientFactoryMock.getContactService()).thenReturn(contactServiceAsyncMock);

		// Mock a GWT RPC
		Answer answer = new Answer() {
			@Override
			public Void answer(InvocationOnMock invocation) {
				Object[] args = invocation.getArguments();
				AsyncCallback&gt; asyncCallback = (AsyncCallback&gt;) args[0];
				contact1 = new Contact();
				contact1.setFirstName("Kai");
				contact1.setLastName("Toedter");
				contact1.setEmail("kai@toedter.com");
				contact2 = new Contact();
				contact2.setFirstName("Kai2");
				contact2.setLastName("Toedter2");
				contact2.setEmail("kai2@toedter.com");
				final List contacts2 = new ArrayList();
				contacts2.add(contact1);
				contacts2.add(contact2);
				asyncCallback.onSuccess(contacts2);
				return null;
			}
		};

		doAnswer(answer).when(contactServiceAsyncMock).
                getAllContacts(any(AsyncCallback.class));

		// set the real contacts object, when clientFactory.setContacts is
		// called
		Answer setContactsAnswer = new Answer() {
			@Override
			public Void answer(InvocationOnMock invocation) throws Throwable {
				contacts = (List) invocation.getArguments()[0];
				// System.out.println("answer() to setContacts(): " + contacts);
				return null;
			}
		};

		doAnswer(setContactsAnswer).when(clientFactoryMock).setContacts(any(List.class));

		// Return the real contacts object, when clientFactory.getContacts is
		// called
		Answer&gt; getContactsAnswer = new Answer&gt;() {
			@Override
			public List answer(InvocationOnMock invocation) throws Throwable {
				return contacts;
			}
		};

		doAnswer(getContactsAnswer).when(clientFactoryMock).getContacts();
	}

	@Test
	public void testGotoPlace() {
		ContactListActivity contactListActivity =
                new ContactListActivity(new ContactPlace(null), clientFactoryMock);

		ContactPlace contactPlace = new ContactPlace("kai@toedter.com");
		contactListActivity.goTo(contactPlace);

		verify(placeControllerMock).goTo(contactPlace);
	}

	@Test
	public void testStartWithEmptyToken() {
		clientFactoryMock.setContacts(null); // force RCP
		ContactListActivity contactListActivity =
                   new ContactListActivity(new ContactPlace(""), clientFactoryMock);
		contactListActivity.start(acceptsOneWidgetMock, eventBusMock);

		verify(contactListViewMock).setPresenter(contactListActivity);
		verify(contactListViewMock).initialize(contacts);
	}

	@Test
	public void testStartWithToken() {
		String token = "kai@toedter.com";
		clientFactoryMock.setContacts(null); // force RCP

		ContactListActivity contactListActivity =
                new ContactListActivity(new ContactPlace(token), clientFactoryMock);
		contactListActivity.start(acceptsOneWidgetMock, eventBusMock);

		verify(contactListViewMock).setPresenter(contactListActivity);
		verify(contactListViewMock).initialize(contacts);
		verify(contactListViewMock).selectInitialContact(contact1);
		verify(eventBusMock).fireEvent(any(ContactViewEvent.class));
	}

	@Test
	public void testMayStop() {
		ContactListActivity contactListActivity =
                new ContactListActivity(new ContactPlace(null), clientFactoryMock);
		contactListActivity.start(acceptsOneWidgetMock, eventBusMock);
		contactListActivity.mayStop();

		verify(contactListViewMock).setPresenter(null);
	}

	@Test
	public void clientFactoryTest() {
		List testList = new ArrayList();
		clientFactoryMock.setContacts(testList);
		Assert.assertNotNull(clientFactoryMock.getContacts());
	}
}
</pre>
<p>If you are interested in above stuff and happen to be in Munich on January 23th 2012, join my Night School, 6:30pm at the OOP 2012.</p>
<p>Have Fun!</p>
<p>Kai</p>
<p>You find me on <a href="http://twitter.com/kaitoedter">Twitter</a> and <a href="http://gplus.to/toedter">Google+</a>.<br/>
Next <a href="http://www.rcptraining.de/kurstermine/">Eclipse RCP 3.x/4.x trainings</a> in Munich</p>
<p class="wp-flattr-button"/> <p><a href="http://www.toedter.com/blog/?flattrss_redirect&amp;id=765&amp;md5=38f2c54a7e263f7b7e7d6a01c1b0d4bd" target="_blank" title="Flattr"><img alt="flattr this!" src="http://www.toedter.com/blog/wp-content/plugins/flattr/img/flattr-badge-large.png"/></a></p></div>
    </content>
    <updated>2012-01-16T12:52:58Z</updated>
    <category term="Eclipse"/>
    <category term="General"/>
    <category term="Java"/>
    <author>
      <name>Kai Tödter</name>
    </author>
    <source>
      <id>http://www.toedter.com/blog</id>
      <link href="http://www.toedter.com/blog/?feed=rss2&amp;cat=2" rel="self" type="application/rss+xml"/>
      <link href="http://www.toedter.com/blog" rel="alternate" type="text/html"/>
      <subtitle>Java, Eclipse, OSGi, and other cool stuff</subtitle>
      <title>Kai's Blog » Eclipse</title>
      <updated>2012-01-17T11:28:07Z</updated>
    </source>
  </entry>

  <entry>
    <id>http://www.winklerweb.net/index.php/blog/4-eclipse/18-imapfilter</id>
    <link href="http://www.winklerweb.net/index.php/blog/4-eclipse/18-imapfilter" rel="alternate" type="text/html"/>
    <title>Separating the Wheat from the Chaff — Or: How to Sort Bugzilla Mails</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>One challenge in my daily work with my email is dealing with automated mails from Hudson or Bugzilla. As I am involved with several customer projects, I cannot keep track of all the Eclipse committer-related mail during the day.</p>
<p>As I am using GMail, I have become used to the mail filtering mechanism GMail offers to make email sent from Bugzilla or Hudson bypass the inbox and land in a separate IMAP folder (GMail uses a label metaphor, but when accessing mails via IMAP, GMail labels are mapped to IMAP folders).</p>
<p>Until recently, however, there was one problem, which I had not solved for months. As perhaps a lot of people do, I am not only receiving Bugzilla notifications related to bugs for which I am reporter, assignee, or on the CC list, but I also watch other Bugzilla accounts; most notably I, follow the emf.cdo-inbox@eclipse.org Bugzilla notifications to keep myself up to date (at least theoretically ...) with all the current bugs of CDO. The problem was that I wanted to separate the more important notifications (those for which I am reporter, assignee or explicitly part of the CC list) from the less important ones (namely those to emf.cdo-inbox). Most of the time (and here comes practice ...), I have too little time to dig through all the Bugzilla notifications and identify the important ones which I should really care about (or at least read) right now.</p>

<p> </p>
<p>Of course, this is not a fault of Bugzilla, as Bugzilla sets really useful headers for its emails. In particular, the mails which I denoted as "more important" above can be identified by checking the content of the <strong>X-Bugzilla-Reason</strong> header. If this header contains <strong>CC</strong>, <strong>Reporter</strong>, or <strong>AssignedTo</strong>, I regard the notification as important. The actual problem is that GMail does not support filtering emails by arbitrary headers (or at least they have hidden that feature so well that I did not find it ...)</p>
<p>To solve the problem for me, I have not installed a small Unix utility called IMAPFilter on my virtual server which I am also using to host this blog. IMAPFilter can be configured via a config file written in the <em>Lua</em> programming language. This way, one can write arbitrary (and sophisticated, if needed) rules and commands to process email stored on one or more IMAP servers. In my case, a quite simple config file does the trick (Note: I still use GMail filtering rules to sort Bugzilla emails into the <em>CDO/Bugzilla</em> folder, because this was configured already, and it makes the IMAPFilter configuration a bit easier):</p>
<div class="rj_insertcode">
<div class="rj_insertcode_lua" style="overflow: auto; width: 100%; height: auto; border: 1px solid #054b6e; background: #f8f8f8;">
<table class="lua" style="border-collapse: collapse; width: 100%;">
<thead> 
<tr>
<td colspan="2" style="background: #dddddd; color: #054b6e; padding: 2px 0px; text-align: center; font: bold italic 12px Verdana, Geneva, Arial, Helvetica, sans-serif;">config.lua</td>
</tr>
</thead> 
<tbody>
<tr class="li1">
<td style="width: 1px; background: #f0f0f0; vertical-align: top; color: #676f73; border-right: 1px dotted #dddddd; font-size: 12px; text-align: right;">
<pre style="margin: 0; background: none; vertical-align: top; padding: 0px 4px; font-size: 12px;"/>
</td>
<td style="margin: 0; background: none; vertical-align: top; padding: 0px 4px; font-size: 12px;">
<pre style="margin: 0; background: none; vertical-align: top; padding: 0px 4px; font-size: 12px;"><span style="vertical-align: top;">myaccount <span style="color: #66cc66;">=</span> IMAP <span style="color: #66cc66;">{</span></span>
<span style="vertical-align: top;">   server <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'imap.googlemail.com'</span>,</span>
<span style="vertical-align: top;">   username <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'myself@googlemail.com'</span>,</span>
<span style="vertical-align: top;">   password <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'S3cr3t!!!'</span>,</span>
<span style="vertical-align: top;">   ssl <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'ssl3'</span></span>
<span style="vertical-align: top;"><span style="color: #66cc66;">}</span></span>

<span style="vertical-align: top;">results <span style="color: #66cc66;">=</span> myaccount<span style="color: #66cc66;">[</span><span style="color: #ff0000;">'CDO/Bugzilla'</span><span style="color: #66cc66;">]</span>:contain_field<span style="color: #66cc66;">(</span><span style="color: #ff0000;">'X-Bugzilla-Reason'</span>,<span style="color: #ff0000;">'Reporter'</span><span style="color: #66cc66;">)</span> </span>
<span style="vertical-align: top;">  + myaccount<span style="color: #66cc66;">[</span><span style="color: #ff0000;">'CDO/Bugzilla'</span><span style="color: #66cc66;">]</span>:contain_field<span style="color: #66cc66;">(</span><span style="color: #ff0000;">'X-Bugzilla-Reason'</span>,<span style="color: #ff0000;">'CC'</span><span style="color: #66cc66;">)</span> </span>
<span style="vertical-align: top;">  + myaccount<span style="color: #66cc66;">[</span><span style="color: #ff0000;">'CDO/Bugzilla'</span><span style="color: #66cc66;">]</span>:contain_field<span style="color: #66cc66;">(</span><span style="color: #ff0000;">'X-Bugzilla-Reason'</span>,<span style="color: #ff0000;">'AssignedTo'</span><span style="color: #66cc66;">)</span> </span>

<span style="vertical-align: top;">results:move_messages<span style="color: #66cc66;">(</span>myaccount<span style="color: #66cc66;">[</span><span style="color: #ff0000;">'CDO/Bugzilla-Important'</span><span style="color: #66cc66;">]</span><span style="color: #66cc66;">)</span></span></pre>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p>(Note: the plus signs have to be read as logical <em>OR</em>)</p>
<p>That's almost it. The <strong>config.lua</strong> file goes into <strong>~/.imapfilter </strong>and to execute the utility on a regular basis, I have created a crontab entry which calls <strong>imapfilter</strong> all 15 minutes:</p>
<pre>0,15,30,45 * * * *     /usr/bin/imapfilter</pre>
<p>Naturally, the above is only a simple example. Experiment for yourself to unleash the power of complex mail sorting.</p></div>
    </summary>
    <updated>2012-01-15T18:48:26Z</updated>
    <author>
      <name>Stefan Winkler</name>
      <email>stefan@winklerweb.net</email>
    </author>
    <source>
      <id>http://www.winklerweb.net/</id>
      <link href="http://www.winklerweb.net/" rel="alternate" type="text/html"/>
      <link href="http://www.winklerweb.net/index.php?option=com_ninjarsssyndicator&amp;feed_id=1&amp;format=raw" rel="self" type="application/rss+xml"/>
      <subtitle>Notes and bits of information from the day-to-day work of Stefan Winkler</subtitle>
      <title>CDO, EMF, and Eclipse</title>
      <updated>2012-02-04T04:52:09Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://blog.objectteams.org/?p=129</id>
    <link href="http://blog.objectteams.org/2012/01/a-little-statistics-of-the-day/" rel="alternate" type="text/html"/>
    <link href="http://blog.objectteams.org/2012/01/a-little-statistics-of-the-day/#comments" rel="replies" type="text/html"/>
    <link href="http://blog.objectteams.org/2012/01/a-little-statistics-of-the-day/feed/atom/" rel="replies" type="application/atom+xml"/>
    <title xml:lang="en">A little statistics of the day</title>
    <summary xml:lang="en">My latest query in Eclipse’s bugzilla answered 189 bugs.
Out of these a certain TLA was mentioned just in the bug summaries 54 times.
Additionally, the long form of the same word occurred 5 times.
Those who have followed my previous posts, know which three letters I’m referring to. Looks like they’re even more relevant in some Eclipse [...]</summary>
    <content type="xhtml" xml:lang="en"><div xmlns="http://www.w3.org/1999/xhtml"><p>My latest query in Eclipse’s bugzilla answered <strong>189 bugs</strong>.</p>
<p>Out of these a certain TLA was mentioned just in the bug summaries <strong>54 times</strong>.<br/>
Additionally, the long form of the same word occurred <strong>5 times</strong>.</p>
<p>Those who have followed my previous posts, know which three letters I’m referring to. Looks like they’re even more relevant in some Eclipse components than I ever fancied (no - not telling, in which component I searched <img alt=":)" class="wp-smiley" src="http://blog.objectteams.org/wp-includes/images/smilies/icon_smile.gif"/> ).</p></div>
    </content>
    <updated>2012-01-15T18:28:33Z</updated>
    <published>2012-01-15T18:27:14Z</published>
    <category scheme="http://blog.objectteams.org" term="Eclipse"/>
    <category scheme="http://blog.objectteams.org" term="bug"/>
    <author>
      <name>stephan</name>
    </author>
    <source>
      <id>http://blog.objectteams.org/feed/atom/</id>
      <link href="http://blog.objectteams.org" rel="alternate" type="text/html"/>
      <link href="http://blog.objectteams.org/category/eclipse/feed/atom" rel="self" type="application/atom+xml"/>
      <subtitle xml:lang="en">Everthing Object Teams - adding team spirit to your objects.</subtitle>
      <title xml:lang="en">The Object Teams Blog » Eclipse</title>
      <updated>2012-01-26T14:32:23Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://waynebeaton.wordpress.com/?p=1808</id>
    <link href="http://waynebeaton.wordpress.com/2012/01/13/open-source-rules-of-engagement/" rel="alternate" type="text/html"/>
    <title>Open Source Rules of Engagement</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">The Eclipse Development Process (EDP) defines–in its section on principles–three open source rules of engagement: Openness, Transparency, and Meritocracy: Open – Eclipse is open to all; Eclipse provides the same opportunity to all. Everyone participates with the same rules; there … <a href="http://waynebeaton.wordpress.com/2012/01/13/open-source-rules-of-engagement/">Continue reading <span class="meta-nav">→</span></a><img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=waynebeaton.wordpress.com&amp;blog=19425814&amp;post=1808&amp;subd=waynebeaton&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>The <a href="http://www.eclipse.org/projects/dev_process/development_process.php">Eclipse Development Process</a> (EDP) defines–in its section on principles–three open source rules of engagement: Openness, Transparency, and Meritocracy:</p>
<blockquote><p><strong>Open</strong> – Eclipse is open to all; Eclipse provides the same opportunity to all. Everyone participates with the same rules; there are no rules to exclude any potential contributors which include, of course, direct competitors in the marketplace.<br/>
<strong>Transparent</strong> – Project discussions, minutes, deliberations, project plans, plans for new features, and other artifacts are open, public, and easily accessible.<br/>
<strong>Meritocracy</strong> – Eclipse is a meritocracy. The more you contribute the more responsibility you will earn. Leadership roles in Eclipse are also merit-based and earned by peer acclaim.</p></blockquote>
<p>In more concise terms, transparency is about inviting participation; openness is about actually accepting it; and meritocracy is a means of limiting participation to those individuals who have demonstrated the desire and means to actually participate.</p>
<p>Transparency is one of those things that I believe most people understand in principle. Do everything in public: bug reports are public, along with all discussion; mailing lists are public; team meetings are public and minutes are captured (and disseminated). By operating transparently, the community around the project can gain insight into the direction that the project is moving and adjust their plans accordingly.</p>
<p>In practice, however, transparency is difficult to motivate in the absence of openness. What is the value to the community of discussing every little detail of an implementation in public? Does anybody really care? The fact of the matter is that a lot of people really don’t care. Most users of Eclipse are blissfully unaware that we even have bug tracking software and mailing lists. But some people do care, and transparency is a great way to hook those people who do are and get them to participate.</p>
<p>A lot of open source projects understand transparency. A lot, however, don’t understand openness. They’re not the same thing. To be “open” means that a project is “open” to participation. More than that, an “open” invites and actively courts participation. Participation in an open source project takes many forms. It starts by creating bug reports and providing patches, tests, and other bits of code. Overtime, contribution increases, and–eventually–some contributors become full-blown members of the project. Courting the community for contributors should be one of the first-class goals of every open source project.</p>
<p>But openness isn’t just about getting more help to implement your evil plans for world domination. It’s also about allowing participants to change your evil plans for world domination. Openness is about being open to new ideas, even–as the EDP states–if those new ideas come from your direct competitors in the marketplace. A truly open project actively courts diversity. Having different interests working together is generally good for the overall health of an open source project and the community that forms around it.</p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/waynebeaton.wordpress.com/1808/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/waynebeaton.wordpress.com/1808/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/waynebeaton.wordpress.com/1808/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/waynebeaton.wordpress.com/1808/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/waynebeaton.wordpress.com/1808/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/waynebeaton.wordpress.com/1808/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/waynebeaton.wordpress.com/1808/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/waynebeaton.wordpress.com/1808/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/waynebeaton.wordpress.com/1808/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/waynebeaton.wordpress.com/1808/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/waynebeaton.wordpress.com/1808/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/waynebeaton.wordpress.com/1808/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/waynebeaton.wordpress.com/1808/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/waynebeaton.wordpress.com/1808/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=waynebeaton.wordpress.com&amp;blog=19425814&amp;post=1808&amp;subd=waynebeaton&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-13T17:25:01Z</updated>
    <category term="Community"/>
    <category term="EDP"/>
    <category term="Uncategorized"/>
    <author>
      <name>waynebeaton</name>
    </author>
    <source>
      <id>http://waynebeaton.wordpress.com</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://waynebeaton.wordpress.com/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://waynebeaton.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://waynebeaton.wordpress.com/osd.xml" rel="search" title="Eclipse Hints, Tips, and Random Musings" type="application/opensearchdescription+xml"/>
      <link href="http://waynebeaton.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Wayne's Eclipse Blog</subtitle>
      <title>Eclipse Hints, Tips, and Random Musings</title>
      <updated>2012-02-04T04:49:02Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-856092880743554053.post-5358224405175553602</id>
    <link href="http://codifyit.blogspot.com/feeds/5358224405175553602/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=856092880743554053&amp;postID=5358224405175553602" rel="replies" title="2 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/856092880743554053/posts/default/5358224405175553602" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/856092880743554053/posts/default/5358224405175553602" rel="self" type="application/atom+xml"/>
    <link href="http://codifyit.blogspot.com/2011/12/after-quite-long-time-i-chanced-upon.html" rel="alternate" title="Eclipse Tips -Part 4" type="text/html"/>
    <title>Eclipse Tips -Part 4</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><div dir="ltr" style="text-align: left;">After quite a long time i chanced upon some UI programming. So the thought of putting the next edition of Eclipse Tips came to my mind.<br/><br/><b><u>File Browsing Dialog </u></b><br/><b><u><br/></u></b><br/>It may happen that you would like to browse for a file in the file system and then select it for further processing.Remember how you browse for projects when you import projects from your local file system.<br/><br/>The File browsing dialog can be brought by using FileDialog. You can also use the FileDialog to filter on the file names, extensions etc through the APIs such as public void setFilterNames (String [] names) and public void setFilterNames (String [] names) respectively.<br/><br/>This is how you can use FileDialog in your code<br/><br/><code/><br/><code> FileDialog dialog = new FileDialog(parentComposite.getShell());</code><br/><br/><b><u>EMF Unparseable content</u></b><br/><br/>I also ventured into some intricacies of EMF Models.Part of my work was to evaluate the possiblity of sending non parseable content through the EMF Models. So i finalized two options Base64 Binary and CDATA.CDATA being the standard way caught my attention first. Here is the link which describes the difference CDATA and Base64 Binary. <a href="http://forums.devx.com/showthread.php?t=4667">http://forums.devx.com/showthread.php?t=4667</a><br/><br/><u>CDATA</u><br/><u><br/></u><br/><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-yMOXWoVGgwA/Tw55GHPL8_I/AAAAAAAAAqE/y5AP7bjvBEc/s1600/article-page-main_ehow_images_a04_s0_bp_use-cdata-xml-800x800.jpg" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="http://3.bp.blogspot.com/-yMOXWoVGgwA/Tw55GHPL8_I/AAAAAAAAAqE/y5AP7bjvBEc/s1600/article-page-main_ehow_images_a04_s0_bp_use-cdata-xml-800x800.jpg"/></a></div> In EMF you can pass the CDATA if you annotize your model with the mixed content.Please follow the steps to model a mixed content.<br/><br/>(a) Define the EClass for which you want to have the mixed content.Lets say I want to send my java script code through my Request EClass.<br/>So i would define an EClass saying Request.Annotate the Request class by giving the source as Source<span class="Apple-tab-span" style="white-space: pre;"> </span>http:///org/eclipse/emf/ecore/util/ExtendedMetaData.<br/><br/>(b) Create a new Details Entry value for that annotation with name as 'request' and kind as 'mixed'.So it makes the Request class to contain an attribute of type mixed content.<br/><br/>(c) Then define the actual attribute which will contain the mixed content for e.g. JSCode of type EFeatureMapEntry Then annotate JSCode with ExtendedMetadata and then put the Details Entry value with name as mixed and kind of elementWildCard.<br/><br/>How to add the CDATA from your code<br/><br/>//get the instance of the Request class<br/><code><br/></code><br/><code>FeatureMapUtil.addCDATA(request.getJSCode(),"js code");</code><br/><code><br/></code><br/>The FeatureMapUtil adds the CDATA to your mixed content attribute.<br/><br/>Another example i do is for the famous ExtLibrary model. I add an attribute called content in the Library class which contains the mixed content.Below is the xml of the ecore for that part.For this blog purpose i have removed all the other attributes and references of the Library class.<br/><br/><br/><br/>Check how the Library is class is told to contain a mixed attribute and then attribute called content is added which is the actual mixed content.<br/><br/><u>Base64 Binary</u><br/><u><br/></u><br/>I also tried to explore the Base64Binary way of passing the content.<br/><br/>It is very simple as how to pass the Base64 binary data.Just create the attribute of type Base64Binary.EMF comes with a datatype built in for that.<br/><br/>I end this post here.<br/><br/>Happy working on eclipse.</div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/856092880743554053-5358224405175553602?l=codifyit.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-12T16:55:13Z</updated>
    <published>2011-12-26T15:39:00Z</published>
    <author>
      <name>Saurav</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/03782822163533795578</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-856092880743554053</id>
      <category term="Servlets"/>
      <category term="XSD"/>
      <category term="MVC"/>
      <category term="Architecture"/>
      <category term="WTP"/>
      <category term="JSP"/>
      <category term="Helios"/>
      <category term="Image"/>
      <category term="EMF"/>
      <category term="Resource Plugin"/>
      <category term="HSQLDB"/>
      <category term="new"/>
      <category term="Eclipse Demo Camp"/>
      <category term="Tutorial"/>
      <category term="YUI"/>
      <category term="Java"/>
      <category term="Middleware"/>
      <category term="Programming"/>
      <category term="Web"/>
      <category term="Editor"/>
      <category term="Google APIs"/>
      <category term="problem solving"/>
      <category term="trac"/>
      <category term="Meets"/>
      <category term="Frameworks"/>
      <category term="Flash"/>
      <category term="Charts"/>
      <category term="Tests"/>
      <category term="RCP"/>
      <category term="Firefox"/>
      <category term="Enterprise Apps"/>
      <category term="Eclipse"/>
      <category term="Flex"/>
      <category term="Plug-in"/>
      <category term="Technologies"/>
      <category term="Spring"/>
      <category term="Legacy"/>
      <category term="Query2"/>
      <category term="Facebook"/>
      <category term="SWT"/>
      <author>
        <name>Saurav</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/03782822163533795578</uri>
      </author>
      <link href="http://codifyit.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/856092880743554053/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://codifyit.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/856092880743554053/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>Exploring the new dimensions and my notes</subtitle>
      <title>codify</title>
      <updated>2012-01-18T14:06:59Z</updated>
    </source>
  </entry>

  <entry>
    <id>http://njbartlett.github.com/2012/01/12/osgi-devcon-bof</id>
    <link href="http://njbartlett.name/2012/01/12/osgi-devcon-bof.html" rel="alternate" type="text/html"/>
    <title>Free OSGi BOF at DevCon 2012</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>The programme for the Birds-of-a-Feather (BOF) session at OSGi DevCon 2012 – co-hosted with EclipseCon 2012 – has been <a href="https://www.osgi.org/DevCon2012/HomePage#bof">announced</a>. I will be speaking about the Java 8 module system, Jigsaw and how they relate to OSGi: what are the differences; the pros and cons of each in different environments; and the potential for them to work together.</p>

<p>There will also be sessions on: OSGi Subsystems; simplifying development with the upcoming OSGi Bundle Repository (OBR) standard; and finally a surprise session from a mystery speaker.</p>

<p>The BOF is free to attend, you don’t need to be registered for OSGi DevCon/EclipseCon. So if you’re in the Washington DC area and interested in learning more about OSGi or meeting several of the top OSGi experts… you know where to go.</p>

<p><img alt="" src="http://njbartlett.github.com/images/posts/2012devcon_bof.png"/></p></div>
    </content>
    <updated>2012-01-12T12:00:00Z</updated>
    <source>
      <id>http://njbartlett.github.com/</id>
      <author>
        <name>Neil Bartlett</name>
        <email>njbartlett@gmail.com</email>
      </author>
      <link href="http://njbartlett.name/atom.xml" rel="self" type="application/atom+xml"/>
      <link href="http://njbartlett.name/" rel="alternate" type="text/html"/>
      <title>Neil Bartlett</title>
      <updated>2012-01-12T10:04:00Z</updated>
    </source>
  </entry>

  <entry>
    <id>http://njbartlett.github.com/2012/01/11/osgi-trainings</id>
    <link href="http://njbartlett.name/2012/01/11/osgi-trainings.html" rel="alternate" type="text/html"/>
    <title>OSGi Training in 2012; London, NY, DC and Sydney</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>I will be running a series of <a href="http://bndtools.org/training.html">OSGi training courses</a> this year, with the first two being held in London and New York in February. The early bird pricing for London will expire in the next couple of days, so please do hurry to secure your place!</p>

<p>If you’re in North America and can’t make NY in February then there will be another chance to take the training in the Washington DC area (very close to Dulles airport). Then later in the year I will be down in Sydney, Australia.</p>

<p>You might be wondering about the “Masterclass in OSGi” series that I previously ran with Peter Kriens, who recently <a href="http://www.osgi.org/blog/2012/01/moving-on.html">announced</a> his resignation from the OSGi Alliance. Peter is very busy completing his duties for the Alliance and then will be fully engaged with his next venture, so he has told me that he is not able to participate in the masterclasses for the foreseeable future.</p>

<p>My new course is heavily based on the subjects and discussions that arose from the masterclasses that took place in 2010/11, though it is intended to be more accessible for OSGi beginners. I still believe it’s the absolute best way to quickly achieve a deep understanding and mastery of OSGi and modularity in Java, and I very much look forward to seeing you there.</p></div>
    </content>
    <updated>2012-01-11T18:00:00Z</updated>
    <source>
      <id>http://njbartlett.github.com/</id>
      <author>
        <name>Neil Bartlett</name>
        <email>njbartlett@gmail.com</email>
      </author>
      <link href="http://njbartlett.name/atom.xml" rel="self" type="application/atom+xml"/>
      <link href="http://njbartlett.name/" rel="alternate" type="text/html"/>
      <title>Neil Bartlett</title>
      <updated>2012-01-12T10:04:00Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-18772002.post-673207874305481430</id>
    <link href="http://www.osgi.org/blog/feeds/673207874305481430/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=18772002&amp;postID=673207874305481430&amp;isPopup=true" rel="replies" title="9 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/18772002/posts/default/673207874305481430" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/18772002/posts/default/673207874305481430" rel="self" type="application/atom+xml"/>
    <link href="http://www.osgi.org/blog/2012/01/java-generics-are-lemon.html" rel="alternate" title="Java Generics are a Lemon" type="text/html"/>
    <title>Java Generics are a Lemon</title>
    <summary>After working with Java for almost 15 years and deep knowledge of Java generics on the class format level I learned something very basic the really, really hard way. I knew the collections in Java were not that good in comparison what you find in other environments (immutable anyone?) but now I learned that even adding all that extra cruft on my classes is useless when you have a major</summary>
    <updated>2012-01-11T17:24:19Z</updated>
    <published>2012-01-11T17:24:00Z</published>
    <author>
      <name>Peter Kriens</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/11373850803487010328</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-18772002</id>
      <category term="osgi qcon eclipsecon interface21 grails hibernate quartz"/>
      <category term="embedded"/>
      <category term="felix"/>
      <category term="eclipse osgi"/>
      <category term="osgi"/>
      <category term="eeg osgi sca j2ee jee"/>
      <category term="eclipsecon"/>
      <category term="jsr 294"/>
      <category term="superpackages"/>
      <category term="summer school"/>
      <category term="object oriented oo component design software osgi structured coupling soa webservices"/>
      <category term="bretagne"/>
      <category term="france"/>
      <category term="eclipse"/>
      <category term="modules"/>
      <category term="osgi hibernate felix equinox eclipse knopflerfish sql"/>
      <category term="c++"/>
      <category term="native code"/>
      <category term="jsr 277"/>
      <author>
        <name>OSGi Alliance</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/03796133538243294756</uri>
      </author>
      <link href="http://www.osgi.org/blog/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/18772002/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://www.osgi.org/blog/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/18772002/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>OSGi Alliance Blog</title>
      <updated>2012-02-01T13:48:37Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://openchrom.wordpress.com/?p=155</id>
    <link href="http://openchrom.wordpress.com/2012/01/11/waiting-for-java7-on-mac-os-x-10-6-3-snow-leopard/" rel="alternate" type="text/html"/>
    <title>Waiting for Java7 on Mac OS X 10.6.3 “Snow Leopard”</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Somehow, it was a good decision to switch OpenChrom to Eclipse 3.7.1 (Indigo) and Java7 except of Mac 10.6.3 “Snow Leopard”. Why on earth do they not support Java7? I don’t know. But I was aware of, that I needed … <a href="http://openchrom.wordpress.com/2012/01/11/waiting-for-java7-on-mac-os-x-10-6-3-snow-leopard/">Continue reading <span class="meta-nav">→</span></a><img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=openchrom.wordpress.com&amp;blog=25006439&amp;post=155&amp;subd=openchrom&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>Somehow, it was a good decision to switch <a href="http://www.openchrom.net/main/content/downloads-preview.php" target="_blank" title="OpenChrom">OpenChrom</a> to <a href="http://www.eclipse.org/downloads" target="_blank" title="Eclipse 3.7.1 (Indigo)">Eclipse 3.7.1 (Indigo)</a> and Java7 except of Mac 10.6.3 “Snow Leopard”. Why on earth do they not support Java7? I don’t know. But I was aware of, that I needed a quick workaround to make it running.</p>
<p><strong>Hence, here’s my solution how to start RCP applications on Mac OS X using Java7:</strong></p>
<p>First of all, create the folder “<strong>JavaVirtualMachines</strong>” in the directory “<strong>/Library/Java</strong>“. Unless it’s not created, you’re not able to install the <a href="http://code.google.com/p/openjdk-osx-build" target="_blank" title="Java7 Developer Preview">Java7 Developer Preview</a>.</p>
<p/><pre class="brush: bash;">user$ sudo mkdir /Library/Java/JavaVirtualMachines
</pre><p/>
<p>You can choose between the <a href="http://openjdk-osx-build.googlecode.com/files/OpenJDK-OSX-1.7-universal-jdk-b222-20111220.dmg" target="_blank" title="JDK">JDK</a> or <a href="http://openjdk-osx-build.googlecode.com/files/OpenJDK-OSX-1.7-universal-jre-b222-20111220.dmg" target="_blank" title="JRE">JRE</a> package. I took the JDK.</p>
<p>Install it by dragging it into the specified folder.</p>
<p><a href="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_001.png"><img alt="" class="alignnone size-full wp-image-156" height="602" src="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_001.png?w=640&amp;h=602" title="Install openJDK7" width="640"/></a></p>
<p>Now, we need to create a program specific launcher called “<strong>start.sh</strong>“, but you’re free to choose nearby any name you like. Therefore we dive into the application.app (in this case <strong>openchrom.app</strong>).</p>
<p><a href="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_002.png"><img alt="" class="alignnone size-full wp-image-157" height="480" src="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_002.png?w=640&amp;h=480" title="Show app content" width="640"/></a></p>
<p><a href="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_003.png"><img alt="" class="alignnone size-full wp-image-158" height="364" src="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_003.png?w=640&amp;h=364" title="Dive into Contents folder" width="640"/></a></p>
<p><a href="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_004.png"><img alt="" class="alignnone size-full wp-image-159" height="364" src="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_004.png?w=640&amp;h=364" title="Dive into MacOS folder" width="640"/></a></p>
<p>Create a file called “<strong>start.sh</strong>“.</p>
<p><a href="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_005.png"><img alt="" class="alignnone size-full wp-image-160" height="364" src="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_005.png?w=640&amp;h=364" title="Create a file called starter.sh" width="640"/></a></p>
<p><a href="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_006.png"><img alt="" class="alignnone size-full wp-image-161" height="364" src="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_006.png?w=640&amp;h=364" title="Open the file starter.sh with the default text editor" width="640"/></a></p>
<p>The content of the starter “<a href="http://www.openchrom.net/main/downloads/MacOSX-Java7/start.sh" target="_blank" title="start.sh">start.sh</a>” depends on the specific settings of your RCP application. I took the settings from the application.ini file (in this case <strong>openchrom.ini</strong>).</p>
<p><a href="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_007.png"><img alt="" class="alignnone size-full wp-image-162" src="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_007.png?w=640" title="start.sh"/></a></p>
<p/><pre class="brush: bash;">#!/bin/sh

export JAVA_HOME=/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home
LAUNCHER_JAR=../../../plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar

java \
-Xms128M \
-Xmx500M \
-Dosgi.install.area.readOnly \
-Dosgi.configuration.area=@user.home/.openchrom/0.6.0/OpenChrom/configuration \
-Dosgi.instance.area.default=@user.home/OpenChrom/workspace \
-Dsun.awt.xembedserver=true \
-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts \
-jar $LAUNCHER_JAR
</pre><p/>
<p>Start the <strong>terminal</strong> and navigate to the “<strong>start.sh</strong>” script. It is necessary to set the executable bit once using “<strong>chmod a+x</strong>“. The RCP application can now be started by starting the script using “<strong>./start.sh</strong>“.</p>
<p><a href="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_008.png"><img alt="" class="alignnone size-full wp-image-163" height="480" src="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_008.png?w=640&amp;h=480" title="Mac start the terminal" width="640"/></a></p>
<p><a href="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_009.png"><img alt="" class="alignnone size-full wp-image-165" height="363" src="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_009.png?w=640&amp;h=363" title="Mac OS X - start the terminal" width="640"/></a></p>
<p><a href="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_010.png"><img alt="" class="alignnone size-full wp-image-166" height="480" src="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_010.png?w=640&amp;h=480" title="Navigate to the start.sh script" width="640"/></a></p>
<p/><pre class="brush: bash;">user$ cd Desktop/0.6.0-PREV/OpenChrom/openchrom.app/Contents/MacOS/
user$ chmod a+x start.sh
user$ ./start.sh
</pre><p/>
<p><a href="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_015.png"><img alt="" class="alignnone size-full wp-image-167" height="480" src="http://openchrom.files.wordpress.com/2012/01/openchrom_mac-os-x-10-6-3_015.png?w=640&amp;h=480" title="OpenChrom 0.6.0 preview on Mac OS X using Java7" width="640"/></a></p>
<p><strong>This tutorial presented a workaround for OpenChrom. But it is applicable in the same way for Eclipse and other RCP applications.</strong></p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/openchrom.wordpress.com/155/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/openchrom.wordpress.com/155/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/openchrom.wordpress.com/155/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/openchrom.wordpress.com/155/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/openchrom.wordpress.com/155/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/openchrom.wordpress.com/155/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/openchrom.wordpress.com/155/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/openchrom.wordpress.com/155/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/openchrom.wordpress.com/155/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/openchrom.wordpress.com/155/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/openchrom.wordpress.com/155/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/openchrom.wordpress.com/155/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/openchrom.wordpress.com/155/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/openchrom.wordpress.com/155/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=openchrom.wordpress.com&amp;blog=25006439&amp;post=155&amp;subd=openchrom&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-11T14:00:11Z</updated>
    <category term="Uncategorized"/>
    <category term="developer preview"/>
    <category term="jdk contents"/>
    <category term="mac os x"/>
    <category term="snow leopard"/>
    <author>
      <name>eselmeister</name>
    </author>
    <source>
      <id>http://openchrom.wordpress.com</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://openchrom.wordpress.com/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://openchrom.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://openchrom.wordpress.com/osd.xml" rel="search" title="OpenChrom" type="application/opensearchdescription+xml"/>
      <link href="http://openchrom.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>open source software for chromatography and mass spectrometry</subtitle>
      <title>OpenChrom</title>
      <updated>2012-02-04T04:49:40Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-24248206.post-5797081556272561038</id>
    <link href="http://blog.efftinge.de/feeds/5797081556272561038/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=24248206&amp;postID=5797081556272561038&amp;isPopup=true" rel="replies" title="2 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/24248206/posts/default/5797081556272561038" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/24248206/posts/default/5797081556272561038" rel="self" type="application/atom+xml"/>
    <link href="http://blog.efftinge.de/2012/01/upcoming-presentations-on-xtext-xtend.html" rel="alternate" title="Upcoming Presentations on Xtext / Xtend" type="text/html"/>
    <title>Upcoming Presentations on Xtext / Xtend</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">There will be a couple of opportunities to learn about the <a href="http://xtext.org/">Xtext</a> / <a href="http://xtend-lang.org/">Xtend</a> technology stack in the next couple of months. Here are the dates:<br/><ul><li><a href="http://xtext_xtend.eventbrite.com/">January 12 - Java User Group Ostfalen, Braunschweig</a></li><li><a href="http://www.meetup.com/Londonjavacommunity/events/41282572/?value=Xtend+and+Xtext">February 1 - Java Community, London</a></li><li><a href="http://www.itemis.de/itemis-ag/veranstaltungen/2012/language=de/taps=646/41198/vortragsreihe-bonn-domaenenspezifische-sprachen-mit-xtext">February 2 - Bonn</a></li><li><a href="http://lanyrd.com/2012/jfokus/smtht/">February 14 - Jfokus, Stockholm</a></li><li><a href="http://www.eclipsecon.org/2012/sessions/dsls-java-developers-xtext">March 29</a> - <a href="http://www.eclipsecon.org/2012/sessions/eclipse-xtend-language-made-java-developers">EclipseCon, Washington D.C.</a></li><li><a href="http://www.rcp-vision.com/?page_id=1938">May 4- Eclipse Day, Florence</a></li></ul>Hope to see you there!<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/24248206-5797081556272561038?l=blog.efftinge.de" width="1"/></div></div>
    </content>
    <updated>2012-01-11T10:07:14Z</updated>
    <published>2012-01-03T08:25:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="xtend"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="xtext"/>
    <author>
      <name>Sven Efftinge</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/11751196715155150517</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-24248206</id>
      <category term="parser generator"/>
      <category term="case study"/>
      <category term="DSLs"/>
      <category term="helios"/>
      <category term="slides"/>
      <category term="left factoring"/>
      <category term="javascript"/>
      <category term="nordic coding"/>
      <category term="kotlin"/>
      <category term="jdt"/>
      <category term="autosar"/>
      <category term="conference"/>
      <category term="Java multi-line strings"/>
      <category term="xpand"/>
      <category term="scoping"/>
      <category term="extension methods"/>
      <category term="CG2011"/>
      <category term="Galileo"/>
      <category term="itemis"/>
      <category term="UML modeling brumm brumm"/>
      <category term="GSoC"/>
      <category term="Languages"/>
      <category term="git"/>
      <category term="eclipse modeling itemis"/>
      <category term="DSL"/>
      <category term="DSL code generation eclipse xtext slides"/>
      <category term="xtext"/>
      <category term="eclipse"/>
      <category term="Eclipse EclipseCon Modeling Xtext"/>
      <category term="Guice"/>
      <category term="code generation"/>
      <category term="presentations"/>
      <category term="language design"/>
      <category term="builder API"/>
      <category term="guicecon"/>
      <category term="emf index"/>
      <category term="JVM"/>
      <category term="scala"/>
      <category term="OSGi"/>
      <category term="eclipsecon"/>
      <category term="java"/>
      <category term="democamps"/>
      <category term="refactoring"/>
      <category term="english"/>
      <category term="webinar"/>
      <category term="Java testing performance"/>
      <category term="example"/>
      <category term="protocol buffers"/>
      <category term="left recursion"/>
      <category term="jax 2010"/>
      <category term="website"/>
      <category term="fowler"/>
      <category term="api design"/>
      <category term="packrat"/>
      <category term="java.scala"/>
      <category term="oaw eclipse xtext"/>
      <category term="android"/>
      <category term="MDSD"/>
      <category term="expressions"/>
      <category term="xtend"/>
      <category term="groovy"/>
      <category term="eclipse summit"/>
      <category term="index"/>
      <category term="xbase"/>
      <category term="modeling"/>
      <category term="kiel"/>
      <category term="release"/>
      <category term="automotive"/>
      <category term="http://www.blogger.com/img/gl.link.gif"/>
      <category term="xtend 2"/>
      <category term="internal DSLs"/>
      <category term="oAW"/>
      <category term="codegeneration"/>
      <category term="OpenJDK"/>
      <author>
        <name>Sven Efftinge</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/11751196715155150517</uri>
      </author>
      <link href="http://blog.efftinge.de/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/24248206/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://blog.efftinge.de/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/24248206/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>Sven Efftinge's Blog</title>
      <updated>2012-02-01T06:52:06Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-24248206.post-8066747576253081842</id>
    <link href="http://blog.efftinge.de/feeds/8066747576253081842/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=24248206&amp;postID=8066747576253081842&amp;isPopup=true" rel="replies" title="2 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/24248206/posts/default/8066747576253081842" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/24248206/posts/default/8066747576253081842" rel="self" type="application/atom+xml"/>
    <link href="http://blog.efftinge.de/2012/01/i-like-free-beer.html" rel="alternate" title="I like free beer!" type="text/html"/>
    <title>I like free beer!</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Did you know about <a href="http://99-bottles-of-beer.net/">http://99-bottles-of-beer.net</a>?<br/>They list programs generating lyrics for a song about beer in 1440 different programming languages (it will be 1441 very soon ;-)). <a href="http://99-bottles-of-beer.net/lyrics.html">These are the lyrics to generate</a>.<br/><br/>So here is a version written in <a href="http://xtend-lang.org/">Xtend</a>:<br/><div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-LTIZIv4Kq6U/Tw1EzCCQZ2I/AAAAAAAAAXg/hA9Oby_FEAY/s1600/Screen+Shot+2012-01-11+at+9.13.29+AM.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="http://2.bp.blogspot.com/-LTIZIv4Kq6U/Tw1EzCCQZ2I/AAAAAAAAAXg/hA9Oby_FEAY/s1600/Screen+Shot+2012-01-11+at+9.13.29+AM.png"/></a></div><br/><br/>It uses a couple of interesting features:<br/><ul><li><b><a href="http://www.eclipse.org/Xtext/xtend/#templateexpression">Template Expressions</a></b> </li><li><b><a href="http://www.eclipse.org/Xtext/xtend/#extensionmethods">Extension methods</a></b> </li><li><b><a href="http://www.eclipse.org/Xtext/xtend/#switchexpression">Switch Expression</a></b> </li><li><b><a href="http://www.eclipse.org/Xtext/xtend/#everythingisanexpression">Everything is an Expression</a></b> </li></ul>Seriously, I think this is one of the most concise and readable versions. <a href="http://99-bottles-of-beer.net/toplist.html">Compare yourself</a>.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/24248206-8066747576253081842?l=blog.efftinge.de" width="1"/></div></div>
    </content>
    <updated>2012-01-11T08:17:15Z</updated>
    <published>2012-01-11T08:05:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="xtend"/>
    <author>
      <name>Sven Efftinge</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/11751196715155150517</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-24248206</id>
      <category term="parser generator"/>
      <category term="case study"/>
      <category term="DSLs"/>
      <category term="helios"/>
      <category term="slides"/>
      <category term="left factoring"/>
      <category term="javascript"/>
      <category term="nordic coding"/>
      <category term="kotlin"/>
      <category term="jdt"/>
      <category term="autosar"/>
      <category term="conference"/>
      <category term="Java multi-line strings"/>
      <category term="xpand"/>
      <category term="scoping"/>
      <category term="extension methods"/>
      <category term="CG2011"/>
      <category term="Galileo"/>
      <category term="itemis"/>
      <category term="UML modeling brumm brumm"/>
      <category term="GSoC"/>
      <category term="Languages"/>
      <category term="git"/>
      <category term="eclipse modeling itemis"/>
      <category term="DSL"/>
      <category term="DSL code generation eclipse xtext slides"/>
      <category term="xtext"/>
      <category term="eclipse"/>
      <category term="Eclipse EclipseCon Modeling Xtext"/>
      <category term="Guice"/>
      <category term="code generation"/>
      <category term="presentations"/>
      <category term="language design"/>
      <category term="builder API"/>
      <category term="guicecon"/>
      <category term="emf index"/>
      <category term="JVM"/>
      <category term="scala"/>
      <category term="OSGi"/>
      <category term="eclipsecon"/>
      <category term="java"/>
      <category term="democamps"/>
      <category term="refactoring"/>
      <category term="english"/>
      <category term="webinar"/>
      <category term="Java testing performance"/>
      <category term="example"/>
      <category term="protocol buffers"/>
      <category term="left recursion"/>
      <category term="jax 2010"/>
      <category term="website"/>
      <category term="fowler"/>
      <category term="api design"/>
      <category term="packrat"/>
      <category term="java.scala"/>
      <category term="oaw eclipse xtext"/>
      <category term="android"/>
      <category term="MDSD"/>
      <category term="expressions"/>
      <category term="xtend"/>
      <category term="groovy"/>
      <category term="eclipse summit"/>
      <category term="index"/>
      <category term="xbase"/>
      <category term="modeling"/>
      <category term="kiel"/>
      <category term="release"/>
      <category term="automotive"/>
      <category term="http://www.blogger.com/img/gl.link.gif"/>
      <category term="xtend 2"/>
      <category term="internal DSLs"/>
      <category term="oAW"/>
      <category term="codegeneration"/>
      <category term="OpenJDK"/>
      <author>
        <name>Sven Efftinge</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/11751196715155150517</uri>
      </author>
      <link href="http://blog.efftinge.de/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/24248206/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://blog.efftinge.de/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/24248206/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>Sven Efftinge's Blog</title>
      <updated>2012-02-01T06:52:06Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-3879044552984472733.post-384431579347066252</id>
    <link href="http://ed-merks.blogspot.com/feeds/384431579347066252/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=3879044552984472733&amp;postID=384431579347066252" rel="replies" title="4 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/3879044552984472733/posts/default/384431579347066252" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/3879044552984472733/posts/default/384431579347066252" rel="self" type="application/atom+xml"/>
    <link href="http://ed-merks.blogspot.com/2012/01/modeling-daze-to-come.html" rel="alternate" title="Modeling Daze to Come" type="text/html"/>
    <title>Modeling Daze to Come</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">My transition to Germany is nearing completion.  I now have a three year visa to stay in Germany and I'm registered as living in Berlin.  Amazingly the visa was acquired with roughly eight hours of time investment, including the four hour wait for the appointment, along with zero euros of financial investment. The best things in life are free.<br/><br/><a href="http://4.bp.blogspot.com/-wzEctoUE0xQ/Tww3PNdxS2I/AAAAAAAAB4c/oCGeKUcdyZc/s1600/EdVisa.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5695988363168926562" src="http://4.bp.blogspot.com/-wzEctoUE0xQ/Tww3PNdxS2I/AAAAAAAAB4c/oCGeKUcdyZc/s320/EdVisa.png" style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; cursor: hand; width: 320px; height: 176px;"/></a><br/>The German process stands in sharp contrast to the Canadian process we followed for Frank.  That cost many thousands of dollars and took the better part of a year.  All I need now is a German tax number and a German bank account and I'll be ready for business in 2012. Speaking of business, there's a lot going on!  Jonas recently blogged about the <a href="http://eclipsesource.com/blogs/2012/01/05/modeling-symposium/">Eclipse Modeling Symposium</a> scheduled for EclipseCon.  If you'd like an opportunity to showcase Really Cool Things,™ please send in your proposal so that Jonas and I can find an appropriate slot for your facet.<br/><br/><a href="http://1.bp.blogspot.com/-nTEENCMXuSU/Tww5sSYVJHI/AAAAAAAAB4s/gwR0XFr2Lk4/s1600/Architecture.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5695991061727749234" src="http://1.bp.blogspot.com/-nTEENCMXuSU/Tww5sSYVJHI/AAAAAAAAB4s/gwR0XFr2Lk4/s320/Architecture.png" style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; cursor: hand; width: 320px; height: 240px;"/></a><br/>The OMG is holding an <a href="http://www.omg.org/news/meetings/tc/dc-12/special-events/Eclipse.htm">Eclipse Symposium</a> as well.  It will be held the day before EclipseCon starts, i.e., Sunday, March 25th, 2012.  It will focus on Eclipse technologies that implement and support OMG specifications.   Ed Willink is helping organize it.  If you're interested, I suggest you contact him at ed at willink dot me dot uk . You can also <a href="http://www.omg.org/registration/eclipse/index.htm">register just to attend</a>. I'm looking forward to seeing the juxtaposition of the old and the new.<br/><br/><a href="http://4.bp.blogspot.com/-f8eNr08iYEg/Tww6SFIpHdI/AAAAAAAAB44/PFt-Ub3SHOM/s1600/OldAndNew.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5695991711007317458" src="http://4.bp.blogspot.com/-f8eNr08iYEg/Tww6SFIpHdI/AAAAAAAAB44/PFt-Ub3SHOM/s320/OldAndNew.png" style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; cursor: hand; width: 320px; height: 240px;"/></a><br/>As you may have  noticed, you simply can't have too many Modeling Days, so of course there will be <a href="http://jax.de/2012/specialdays">another modeling day at JAX this year</a>. <a href="http://blog.efftinge.de/">Sven</a>, <a href="http://thegordian.blogspot.com/">Eike</a>, and I are organizing it.  If you'd like to get involved, please send your proposal to ed dot merks at gmail dot com. I expect I'll be able to understand more of the German content this year than I did last year.  Maybe I'll even have plodded along far enough to speak some broken German by then.<br/><br/><a href="http://2.bp.blogspot.com/-CUS35DNRqXU/Tww7uYVCocI/AAAAAAAAB5I/RmHB6UFdn1Y/s1600/Plodding.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5695993296707559874" src="http://2.bp.blogspot.com/-CUS35DNRqXU/Tww7uYVCocI/AAAAAAAAB5I/RmHB6UFdn1Y/s320/Plodding.png" style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; cursor: hand; width: 320px; height: 282px;"/></a><br/>To further round off an already well rounded event schedule, there's an <a href="http://www.rcp-vision.com/?page_id=1938&amp;lang=en">Eclipse Day in Florence</a> on May 4th. Can you think of a lovelier place to hold a Eclipse event? We're really looking forward to having a peek at part of the community we've seen less frequently.<br/><br/><a href="http://3.bp.blogspot.com/-FqfP3e4hBxc/Tww8zXHj9SI/AAAAAAAAB5Y/XuBT9AtueOI/s1600/Peeking.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5695994481793561890" src="http://3.bp.blogspot.com/-FqfP3e4hBxc/Tww8zXHj9SI/AAAAAAAAB5Y/XuBT9AtueOI/s320/Peeking.png" style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; cursor: hand; width: 320px; height: 274px;"/></a><br/>At this point you might be wondering about deadlines for submissions.  All I can say is don't ask about deadlines!  Do it now.  There's no time like the present. Time waits for no one, and most especially not for you.  If you have time, and you expect to be in Berlin, Eike and I will be at the <a href="https://www.xing.com/events/2-stammtisch-emf-user-group-berlin-852872">Eclipse User Group Stammtisch</a> on January 31st.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/3879044552984472733-384431579347066252?l=ed-merks.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-11T07:00:29Z</updated>
    <published>2012-01-10T12:00:00Z</published>
    <author>
      <name>Ed Merks</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/05000982591510437551</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-3879044552984472733</id>
      <author>
        <name>Ed Merks</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/05000982591510437551</uri>
      </author>
      <link href="http://ed-merks.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/3879044552984472733/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://ed-merks.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/3879044552984472733/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle>The opinions expressed here are my own, not someone else's.  If they seem rational, that's purely coincidental and you are likely reading far too much between the lines.</subtitle>
      <title>Merks' Meanderings</title>
      <updated>2012-02-03T14:42:00Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://www.toedter.com/blog/?p=729</id>
    <link href="http://www.toedter.com/blog/?p=729" rel="alternate" type="text/html"/>
    <title>My Upcoming Events &amp; Sessions</title>
    <summary>In the next months I am going to give sessions/trainings at several conferences and other events, mostly Eclipse related. I'd be happy to meet you there.



January 20th, 7:00 pm (free event):
Java User Group Ostfalen, Braunschweig, Germany:
"Was ist neu bei der Eclipse Rich Client Platform 4.x?",

January 23th, 6:30 pm:
OOP 2012, Munich, Germany:
"Google Web Toolkit: Ausgewählte ...</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>In the next months I am going to give sessions/trainings at several conferences and other events, mostly Eclipse related. I’d be happy to meet you there.</p>
<p><a href="http://www.toedter.com/blog/wp-content/uploads/2012/01/conferences.png"><img alt="" class="alignnone size-full wp-image-758" height="146" src="http://www.toedter.com/blog/wp-content/uploads/2012/01/conferences.png" title="conferences" width="375"/></a></p>
<p>January 20th, 7:00 pm (free event):<br/>
Java User Group Ostfalen, Braunschweig, Germany:<br/>
“<a href="http://eclipse4.eventbrite.com/">Was ist neu bei der Eclipse Rich Client Platform 4.x?</a>“,</p>
<p>January 23th, 6:30 pm:<br/>
OOP 2012, Munich, Germany:<br/>
“<a href="http://www.sigs-datacom.de/oop2012/konferenz/sessiondetails.html?tx_mwconferences_pi1[showUid]=809&amp;tx_mwconferences_pi1[anchor]=%23Nmo3&amp;tx_mwconferences_pi1[s]=0">Google Web Toolkit: Ausgewählte coole Features</a>“,</p>
<p>January 26th, 11:00 am (free event):<br/>
Oracle Developer Day, Munich, Germany:<br/>
“<a href="http://www.sigs-datacom.de/oop2012/fachmesse/oracle-developer-day.html">JavaFX 2.0 Integration with the Eclipse 4.x Application Platform</a>“,</p>
<p>March 26th, 1:00 pm:<br/>
EclipseCon 2012, Reston, USA:<br/>
“<a href="http://www.eclipsecon.org/2012/sessions/creating-rich-clients-eclipse-rcp-4x">Creating Rich Clients with Eclipse RCP 4.x</a>“,<br/>
3 hour tutorial</p>
<p>March 28th, 1:30 pm:<br/>
EclipseCon 2012, Reston, USA:<br/>
“<a href="http://www.eclipsecon.org/2012/sessions/dynamic-rias-equinox-and-vaadin">Dynamic RIAs with OSGi and Vaadin</a>“,</p>
<p>April 16th – 19th:<br/>
Jax 2012, Mainz, Germany:<br/>
“Dynamische RIAs mit Equinox und Vaadin”,</p>
<p>April 20th, 9:00 am:<br/>
Jax 2012, Mainz, Germany:<br/>
“<a href="http://jax.de/2012/workshops/?tid=2345#session-20574">Rich-Client-Entwicklung mit Eclipse RCP 4.x</a>“,</p>
<p>April 23th, 9:00 am:<br/>
3 days training in Munich, Germany:<br/>
“<a href="http://eclipsercp-esearch.eventbrite.com/?srnk=1">Eclipse Rich Client Platform 3.x: Fundamentals</a>“,</p>
<p>April 26th, 9:00 am:<br/>
1 day training in Munich, Germany:<br/>
“<a href="http://eclipsercpadvanced-esearch.eventbrite.com/?srnk=4">Eclipse Rich Client Platform 3.x: Advanced</a>“,</p>
<p>April 27th, 9:00 am:<br/>
1 day training in Munich, Germany:<br/>
“<a href="http://richcliententwicklung-esearch.eventbrite.com/?srnk=2">Rich Client Development mit der Eclipse 4 Application Platform</a>“,</p>
<p>Have Fun!</p>
<p>Kai</p>
<p>You find me on <a href="http://twitter.com/kaitoedter">Twitter</a> and <a href="http://gplus.to/toedter">Google+</a>.</p>
<p class="wp-flattr-button"/> <p><a href="http://www.toedter.com/blog/?flattrss_redirect&amp;id=729&amp;md5=81f169fb087abb1bdb7a941deee7752f" target="_blank" title="Flattr"><img alt="flattr this!" src="http://www.toedter.com/blog/wp-content/plugins/flattr/img/flattr-badge-large.png"/></a></p></div>
    </content>
    <updated>2012-01-11T05:36:26Z</updated>
    <category term="Eclipse"/>
    <category term="General"/>
    <category term="Java"/>
    <author>
      <name>Kai Tödter</name>
    </author>
    <source>
      <id>http://www.toedter.com/blog</id>
      <link href="http://www.toedter.com/blog/?feed=rss2&amp;cat=2" rel="self" type="application/rss+xml"/>
      <link href="http://www.toedter.com/blog" rel="alternate" type="text/html"/>
      <subtitle>Java, Eclipse, OSGi, and other cool stuff</subtitle>
      <title>Kai's Blog » Eclipse</title>
      <updated>2012-01-17T11:28:07Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-7721121862516881677.post-8248964215053602811</id>
    <link href="http://www.blogger.com/comment.g?blogID=7721121862516881677&amp;postID=8248964215053602811" rel="replies" title="0 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/7721121862516881677/posts/default/8248964215053602811" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/7721121862516881677/posts/default/8248964215053602811" rel="self" type="application/atom+xml"/>
    <link href="http://www.thescreencast.com/2012/01/how-to-install-and-run-dart-editor.html" rel="alternate" title="How to install and run Dart Editor" type="text/html"/>
    <title>How to install and run Dart Editor</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">In this short screencast (2:30 min) you will see how to install and use new Google Dart editor (currently in alpha).  <br/>
<div><br/>
</div><div><br/>
</div>  <br/>
<div><br/>
</div>Share and enjoy!<br/>
<br/>
<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/7721121862516881677-8248964215053602811?l=www.thescreencast.com" width="1"/></div></div>
    </content>
    <updated>2012-01-10T21:09:40Z</updated>
    <published>2012-01-10T21:07:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="dart"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="google"/>
    <author>
      <name>thescreencast</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-7721121862516881677</id>
      <category term="facebook"/>
      <category term="dart"/>
      <category term="RAP"/>
      <category term="android"/>
      <category term="design patterns"/>
      <category term="RCP"/>
      <category term="spring roo"/>
      <category term="jsf"/>
      <category term="alfresco"/>
      <category term="java"/>
      <category term="seam"/>
      <category term="python"/>
      <category term="refactoring"/>
      <category term="javaFX"/>
      <category term="ajax"/>
      <category term="jboss"/>
      <category term="gwt"/>
      <category term="games"/>
      <category term="eclipse"/>
      <category term="jee"/>
      <category term="gme"/>
      <category term="gae"/>
      <category term="google"/>
      <author>
        <name>thescreencast</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://www.thescreencast.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/7721121862516881677/posts/default/-/eclipse" rel="self" type="application/atom+xml"/>
      <link href="http://www.thescreencast.com/search/label/eclipse" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <title>The Screencast Blog</title>
      <updated>2012-01-28T10:07:55Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://eclipsehowl.wordpress.com/?p=766</id>
    <link href="http://eclipsehowl.wordpress.com/2012/01/10/moving-forward-vex-1-0-0-m8/" rel="alternate" type="text/html"/>
    <title>Moving Forward – Vex 1.0.0 M8</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Vex has moved from being a component in the WTP Incubator project to being a project on its own in Mylyn Docs. Like all other Eclipse projects Vex has its own home page: eclipse.org/vex. Our project lead is Florian Thienel, currently the 99% of Vex (only you can change this). 1.0.0 M8 Last week milestone [...]<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=eclipsehowl.wordpress.com&amp;blog=11064764&amp;post=766&amp;subd=eclipsehowl&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p><img alt="" class="size-full wp-image-767 alignright" src="http://eclipsehowl.files.wordpress.com/2012/01/vex_packing_case.png?w=450" title="Vex packing case"/></p>
<p>Vex has moved from being a component in the WTP Incubator project to being a project on its own in Mylyn Docs. Like all other Eclipse projects Vex has its own home page: <em><a>eclipse.org/vex</a></em>. Our project lead is <a href="http://eclipse.org/projects/project.php?id=mylyn.docs.vex">Florian Thienel, currently the 99% of Vex</a> (only you can change this).</p>
<h3>1.0.0 M8</h3>
<p>Last week <a href="http://dev.eclipse.org/mhonarc/lists/mylyn-vex-dev/msg00003.html">milestone 8 was released</a>. If you already use Vex then you have to migrate your <em>vex-plugin.xml</em> files. Otherwise you should give Vex a try to edit XML files word processor like.</p>
<p>The next big thing is XML Schema support in addition to the good old DTDs. Already 1.0.0 M8 contains basic support for it. At the moment you have to <a href="http://git.eclipse.org/c/mylyn/org.eclipse.mylyn.docs.vex.git/tree/org.eclipse.vex.projectplan/plugin.xml">register the XML Schema</a> manually by editing the <em>vex-plugin.xml</em> file – the UI to do this is under development. So stay tuned. Vex is moving forward slowly but surely.</p>
<p><a href="http://eclipsehowl.files.wordpress.com/2012/01/vex_projectplan.png"><img alt="" class="alignnone size-full wp-image-772" height="324" src="http://eclipsehowl.files.wordpress.com/2012/01/vex_projectplan.png?w=450&amp;h=324" title="Screenshot: Editing Eclipse Project Plan which is based on XML Schema with Vex" width="450"/></a></p>
<p><a href="http://flattr.com/thing/52042/Eclipse-Howl" target="_blank"><br/>
<img alt="Flattr this" border="0" src="http://api.flattr.com/button/flattr-badge-large.png" title="Flattr this"/></a></p>
<br/>  <a href="http://feeds.wordpress.com/1.0/gocomments/eclipsehowl.wordpress.com/766/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/eclipsehowl.wordpress.com/766/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/eclipsehowl.wordpress.com/766/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/eclipsehowl.wordpress.com/766/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/eclipsehowl.wordpress.com/766/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/eclipsehowl.wordpress.com/766/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/eclipsehowl.wordpress.com/766/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/eclipsehowl.wordpress.com/766/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/eclipsehowl.wordpress.com/766/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/eclipsehowl.wordpress.com/766/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/eclipsehowl.wordpress.com/766/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/eclipsehowl.wordpress.com/766/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/eclipsehowl.wordpress.com/766/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/eclipsehowl.wordpress.com/766/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=eclipsehowl.wordpress.com&amp;blog=11064764&amp;post=766&amp;subd=eclipsehowl&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-10T15:22:55Z</updated>
    <category term="Eclipse"/>
    <category term="Vex"/>
    <author>
      <name>howlger</name>
    </author>
    <source>
      <id>http://eclipsehowl.wordpress.com</id>
      <logo>http://1.gravatar.com/blavatar/563f1f0fd9329430c05856b0cc041857?s=96&amp;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</logo>
      <link href="http://eclipsehowl.wordpress.com/category/eclipse/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://eclipsehowl.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://eclipsehowl.wordpress.com/osd.xml" rel="search" title="eclipse howl" type="application/opensearchdescription+xml"/>
      <link href="http://eclipsehowl.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Lets howl at the things in the Eclipse universe and at software development in general</subtitle>
      <title>eclipse howl » Eclipse</title>
      <updated>2012-01-28T08:39:21Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://alexruiz.developerblogs.com/?p=2080</id>
    <link href="http://alexruiz.developerblogs.com/?p=2080" rel="alternate" type="text/html"/>
    <title>Associating Xtext editors to file names, instead of file extensions</title>
    <summary>I’m currently working on a Xtext-based editor for Google’s BUILD language, as described in our Google Engineering Blog. BUILD files do not contain an extension, they are simply named “BUILD.” This naming convention made working with Xtext quite challenging. I needed to change Xtext’s default behavior: instead of associating Xtext editors to file extensions, I [...]</summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>I’m currently working on a <a href="http://xtext.org" target="_blank">Xtext</a>-based editor for Google’s BUILD language, as described in our <a href="http://google-engtools.blogspot.com/2011/08/build-in-cloud-how-build-system-works.html" target="_blank">Google Engineering Blog</a>. BUILD files do not contain an extension, they are simply named “BUILD.” This naming convention made working with Xtext quite challenging. I needed to change Xtext’s default behavior: instead of associating Xtext editors to file extensions, I needed to associate them to file names. In this blog post I’m describing how I was able to accomplish this.</p>
<p>In this post I’ll be using a brand-new Xtext project. To keep things simple, I’ll use the default file extension (mydsl) and grammar. You can get the source code of this post from <a href="http://code.google.com/p/xtext-samples/" target="_blank">Xtext Samples</a>, a new open source project where I plan to store the code I use in Xtext-related posts. All code is released under the <a href="http://www.eclipse.org/legal/epl-v10.html" target="_blank">Eclipse Public License (EPL) 1.0</a>.</p>
<p>The following steps assume we are going to associate our Xtext editor with the file name “MyDsl.”</p>
<ol>
<li>Modify the plug-in’s <code>XtextEditor</code> to make it understand file names, instead of file extensions.</li>
<li>Create a <code>ContentHandler</code> that describes the content of files with name “MyDsl.” As part of this step we need to create a new content type for “MyDsl” files.</li>
<li>Create an <code>IResourceServiceProvider</code> that provides services (e.g. validation, content description, encoding) to files with name “MyDsl.”</li>
<li>Register the classes created in the previous steps, to make them visible to <a href="http://www.eclipse.org/modeling/emf/" target="_blank">EMF</a> and Xtext.</li>
</ol>
<h3>1. Modify the plug-in’s <code>XtextEditor</code> to make it understand file names</h3>
<p>This is the easiest of all steps:</p>
<ol>
<li>Open the file plugin.xml in the “ui” project.</li>
<li>Select the “plugin.xml” tab at the bottom of the editor, to edit the XML code directly.</li>
<li>In the <code>editor</code> element, replace <code>extensions="mydsl"</code> with <code>filenames="MyDsl"</code></li>
</ol>
<h3>2. Create a <code>ContentHandler</code> that describes the content of files with name “MyDsl”</h3>
<p>Here is a simplified version of our <code>ContentHandler</code>. You can find the complete file <a href="http://code.google.com/p/xtext-samples/source/browse/work-with-file-names/com.google.eclipse.xtext.filename/src/com/google/eclipse/xtext/filename/resource/MyDslContentHandler.java" target="_blank">here</a>.</p>

<div class="wp_syntax"><table><tbody><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
</pre></td><td class="code"><pre class="java" style="font-family: monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> MyDslContentHandler <span style="color: #000000; font-weight: bold;">extends</span> ContentHandlerImpl <span style="color: #009900;">{</span>
  <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000000; font-weight: bold;">final</span> <span style="color: #003399;">String</span> MY_DSL_FILE_CONTENT_TYPE <span style="color: #339933;">=</span> <span style="color: #0000ff;">"com.google.eclipse.MyDsl"</span><span style="color: #339933;">;</span>
 
  @Override <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">boolean</span> canHandle<span style="color: #009900;">(</span>URI uri<span style="color: #009900;">)</span> <span style="color: #009900;">{</span>
    <span style="color: #000000; font-weight: bold;">return</span> isMyDslFile<span style="color: #009900;">(</span>uri<span style="color: #009900;">)</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">}</span>
 
  @Override <span style="color: #000000; font-weight: bold;">public</span> Map<span style="color: #339933;">&lt;</span>String, Object<span style="color: #339933;">&gt;</span> contentDescription<span style="color: #009900;">(</span>URI uri, <span style="color: #003399;">InputStream</span> inputStream,
      Map<span style="color: #339933;">&lt;?</span>, <span style="color: #339933;">?&gt;</span> options, <span style="color: #003399;">Map</span> context<span style="color: #009900;">)</span> <span style="color: #000000; font-weight: bold;">throws</span> <span style="color: #003399;">IOException</span> <span style="color: #009900;">{</span>
    Map<span style="color: #339933;">&lt;</span>String, Object<span style="color: #339933;">&gt;</span> description <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">super</span>.<span style="color: #006633;">contentDescription</span><span style="color: #009900;">(</span>uri, inputStream, options, context<span style="color: #009900;">)</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">(</span>canHandle<span style="color: #009900;">(</span>uri<span style="color: #009900;">)</span><span style="color: #009900;">)</span> <span style="color: #009900;">{</span>
      description.<span style="color: #006633;">put</span><span style="color: #009900;">(</span>VALIDITY_PROPERTY, VALID<span style="color: #009900;">)</span><span style="color: #339933;">;</span>
      description.<span style="color: #006633;">put</span><span style="color: #009900;">(</span>CONTENT_TYPE_PROPERTY, MY_DSL_FILE_CONTENT_TYPE<span style="color: #009900;">)</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">}</span>
    <span style="color: #000000; font-weight: bold;">return</span> description<span style="color: #339933;">;</span>
  <span style="color: #009900;">}</span>
<span style="color: #009900;">}</span></pre></td></tr></tbody></table></div>

<p>Line 2: We define a new content type for “MyDsl” files. We keep the constant <code>public</code> since we will be using it later.<br/>
Line 4: We specify that file names with name “MyDsl” can be handled by the <code>ContentHandler</code>. We call the utility method <code>isMyDslFile(URI)</code> from the class <code><a href="http://code.google.com/p/xtext-samples/source/browse/work-with-file-names/com.google.eclipse.xtext.filename/src/com/google/eclipse/xtext/filename/resource/URIs.java" target="_blank">URIs</a></code>.<br/>
Line 8: We declare the content of “MyDsl” files as <em>valid</em> and associate its type to the one defined in line 2.</p>
<h3>3. Create an <code>IResourceServiceProvider</code> that provides services to files with name “MyDsl”</h3>
<p>Here is a simplified version of our <code>IResourceServiceProvider</code>. You can find the complete file <a href="http://code.google.com/p/xtext-samples/source/browse/work-with-file-names/com.google.eclipse.xtext.filename/src/com/google/eclipse/xtext/filename/resource/MyDslResourceServiceProvider.java" target="_blank">here</a>.</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family: monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> MyDslResourceServiceProvider <span style="color: #000000; font-weight: bold;">extends</span> DefaultResourceServiceProvider <span style="color: #009900;">{</span>
  @Override <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">boolean</span> canHandle<span style="color: #009900;">(</span>URI uri<span style="color: #009900;">)</span> <span style="color: #009900;">{</span>
    <span style="color: #000000; font-weight: bold;">return</span> isMyDslFile<span style="color: #009900;">(</span>uri<span style="color: #009900;">)</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">}</span>
<span style="color: #009900;">}</span></pre></div></div>

<p>We call the utility method <code>isMyDslFile(URI)</code> from the class <code><a href="http://code.google.com/p/xtext-samples/source/browse/work-with-file-names/com.google.eclipse.xtext.filename/src/com/google/eclipse/xtext/filename/resource/URIs.java" target="_blank">URIs</a></code> to specify that this <code>IResourceServiceProvider</code> can handle files with names “MyDsl.”</p>
<h3>4. Register the classes created in the previous steps, to make them visible to EMF and Xtext</h3>
<p>Now it’s time to wire up everything together. First, we bind <code>IResourceServiceProvider</code> to our <code>MyDslResourceServiceProvider</code> in the plug-in <a href="http://code.google.com/p/xtext-samples/source/browse/work-with-file-names/com.google.eclipse.xtext.filename/src/com/google/eclipse/xtext/filename/MyDslRuntimeModule.java" target="_blank">runtime module</a>:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family: monospace;">  <span style="color: #000000; font-weight: bold;">public</span> Class<span style="color: #339933;">&lt;?</span> <span style="color: #000000; font-weight: bold;">extends</span> IResourceServiceProvider<span style="color: #339933;">&gt;</span> bindIResourceServiceProvider<span style="color: #009900;">(</span><span style="color: #009900;">)</span> <span style="color: #009900;">{</span>
    <span style="color: #000000; font-weight: bold;">return</span> MyDslResourceServiceProvider.<span style="color: #000000; font-weight: bold;">class</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">}</span></pre></div></div>

<p>Now we tell Xtext and EMF, in <code><a href="http://code.google.com/p/xtext-samples/source/browse/work-with-file-names/com.google.eclipse.xtext.filename.ui/src/com/google/eclipse/xtext/filename/ui/MyDslUiModule.java" target="_blank">MyDslUiModule</a></code>‘s constructor, to understand files named “MyDsl.”</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family: monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> MyDslUiModule <span style="color: #000000; font-weight: bold;">extends</span> AbstractMyDslUiModule <span style="color: #009900;">{</span>
 
  <span style="color: #000000; font-weight: bold;">public</span> MyDslUiModule<span style="color: #009900;">(</span>AbstractUIPlugin plugin<span style="color: #009900;">)</span> <span style="color: #009900;">{</span>
    <span style="color: #000000; font-weight: bold;">super</span><span style="color: #009900;">(</span>plugin<span style="color: #009900;">)</span><span style="color: #339933;">;</span>
    configureXtextToWorkWithFileNames<span style="color: #009900;">(</span><span style="color: #000000; font-weight: bold;">new</span> InjectorProvider<span style="color: #009900;">(</span><span style="color: #009900;">)</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">}</span>
<span style="color: #009900;">}</span></pre></div></div>

<p>We pass an <code><a href="http://code.google.com/p/xtext-samples/source/browse/work-with-file-names/com.google.eclipse.xtext.filename.ui/src/com/google/eclipse/xtext/filename/ui/InjectorProvider.java" target="_blank">InjectorProvider</a></code> that obtains the plugin’s <code>Injector</code> only at the moment when it is needed. At this point we cannot pass the <code>Injector</code> directly, since it has not been fully constructed when <code>configureXtextToWorkWithFileNames</code> is called.</p>
<p>The method <code>configureXtextToWorkWithFileNames(InjectorProvider)</code> is defined in <a href="http://code.google.com/p/xtext-samples/source/browse/work-with-file-names/com.google.eclipse.xtext.filename.ui/src/com/google/eclipse/xtext/filename/ui/XtextSetup.java" target="_blank">XtextSetup</a>:</p>

<div class="wp_syntax"><table><tbody><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
</pre></td><td class="code"><pre class="java" style="font-family: monospace;"><span style="color: #000000; font-weight: bold;">final</span> <span style="color: #000000; font-weight: bold;">class</span> XtextSetup <span style="color: #009900;">{</span>
 
  <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> configureXtextToWorkWithFileNames<span style="color: #009900;">(</span>InjectorProvider injectorProvider<span style="color: #009900;">)</span> <span style="color: #009900;">{</span>
    register<span style="color: #009900;">(</span><span style="color: #000000; font-weight: bold;">new</span> MyDslContentHandler<span style="color: #009900;">(</span><span style="color: #009900;">)</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
    register<span style="color: #009900;">(</span><span style="color: #000000; font-weight: bold;">new</span> ResourceFactoryDescriptor<span style="color: #009900;">(</span>injectorProvider<span style="color: #009900;">)</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
    register<span style="color: #009900;">(</span><span style="color: #000000; font-weight: bold;">new</span> ResourceServiceProvider<span style="color: #009900;">(</span>injectorProvider<span style="color: #009900;">)</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">}</span>
 
  <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> register<span style="color: #009900;">(</span><span style="color: #003399;">ContentHandler</span> h<span style="color: #009900;">)</span> <span style="color: #009900;">{</span>
    <span style="color: #003399;">ContentHandler</span>.<span style="color: #003399;">Registry</span> registry <span style="color: #339933;">=</span> <span style="color: #003399;">ContentHandler</span>.<span style="color: #003399;">Registry</span>.<span style="color: #006633;">INSTANCE</span><span style="color: #339933;">;</span>
    registry.<span style="color: #006633;">put</span><span style="color: #009900;">(</span>HIGH_PRIORITY, h<span style="color: #009900;">)</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">}</span>
 
  <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> register<span style="color: #009900;">(</span>Resource.<span style="color: #006633;">Factory</span>.<span style="color: #006633;">Descriptor</span> d<span style="color: #009900;">)</span> <span style="color: #009900;">{</span>
    Resource.<span style="color: #006633;">Factory</span>.<span style="color: #003399;">Registry</span> registry <span style="color: #339933;">=</span> Resource.<span style="color: #006633;">Factory</span>.<span style="color: #003399;">Registry</span>.<span style="color: #006633;">INSTANCE</span><span style="color: #339933;">;</span>
    registry.<span style="color: #006633;">getContentTypeToFactoryMap</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>.<span style="color: #006633;">put</span><span style="color: #009900;">(</span>MY_DSL_FILE_CONTENT_TYPE, d<span style="color: #009900;">)</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">}</span>
 
  <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> register<span style="color: #009900;">(</span>Provider<span style="color: #339933;">&lt;</span>IResourceServiceProvider<span style="color: #339933;">&gt;</span> p<span style="color: #009900;">)</span> <span style="color: #009900;">{</span>
    IResourceServiceProvider.<span style="color: #003399;">Registry</span> registry <span style="color: #339933;">=</span> IResourceServiceProvider.<span style="color: #003399;">Registry</span>.<span style="color: #006633;">INSTANCE</span><span style="color: #339933;">;</span>
    registry.<span style="color: #006633;">getContentTypeToFactoryMap</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>.<span style="color: #006633;">put</span><span style="color: #009900;">(</span>MY_DSL_FILE_CONTENT_TYPE, p<span style="color: #009900;">)</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">}</span>
<span style="color: #009900;">}</span></pre></td></tr></tbody></table></div>

<p>Line 4: We register the <code>ContentHandler</code> we created in step 2.<br/>
Line 5: We associate the <code>IResourceFactory</code> in the plug-in’s Guice module with the content type defined in step 2.<br/>
Line 6: We associate the <code>IResourceServiceProvider</code> we created in step 3 (and later on registered in the plug-in’s Guice module) with the content type defined in step 2.</p>
<h3>Testing the editor</h3>
<p>To run the editor, right-click any of the projects and select “Run As” &gt; “Eclipse Application” from the context menu.</p>
<p>Here is a screenshot of the editor opening a file named “MyDsl”</p>
<p><img alt="" class="aligncenter size-full wp-image-2141" height="462" src="http://alexruiz.developerblogs.com/files/2012/01/open-mydsl-file.png" width="613"/></p>
<h3>Summary</h3>
<p>In this post I have shown how to make Xtext understand file names in four easy steps. You can find the code for this post in the project <a href="http://code.google.com/p/xtext-samples/" target="_blank">Xtext Samples</a>. You can <a href="http://code.google.com/p/xtext-samples/source/checkout" target="_blank">checkout</a> the code, <a href="http://code.google.com/p/xtext-samples/source/browse/" target="_blank">browse</a> it or <a href="http://code.google.com/p/xtext-samples/downloads/detail?name=work-with-file-names.zip&amp;can=2&amp;q=">download</a> it.</p>
<p>Even though I spent a good amount of time reading Xtext and EMF code to figure this out, I cannot claim my solution is the best one. Please let me know if you know a better way to do what I described in this post :)</p>
<p>Feedback is always welcome.</p></div>
    </content>
    <updated>2012-01-10T12:49:19Z</updated>
    <category term="Eclipse"/>
    <category term="Google"/>
    <category term="Tips"/>
    <category term="Xtext"/>
    <category term="How-to"/>
    <category term="Programming"/>
    <author>
      <name>Alex Ruiz</name>
    </author>
    <source>
      <id>http://alexruiz.developerblogs.com</id>
      <link href="http://alexruiz.developerblogs.com/?feed=rss2" rel="self" type="application/rss+xml"/>
      <link href="http://alexruiz.developerblogs.com" rel="alternate" type="text/html"/>
      <subtitle>Having Fun with Java!</subtitle>
      <title>Alex Ruiz's Blog</title>
      <updated>2012-01-24T14:02:40Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-36941363.post-7762233462938874502</id>
    <link href="http://ganoro.blogspot.com/feeds/7762233462938874502/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=36941363&amp;postID=7762233462938874502" rel="replies" title="1 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/36941363/posts/default/7762233462938874502" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/36941363/posts/default/7762233462938874502" rel="self" type="application/atom+xml"/>
    <link href="http://ganoro.blogspot.com/2011/12/big-dot-release.html" rel="alternate" title="A (Big) Dot Release" type="text/html"/>
    <title>A (Big) Dot Release</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Although dot releases don't get as much attention as major releases , this one should definitely get highlighted:<br/><br/><pre>      "Zend is pleased to announce the release of Zend Studio 9.0.1!"</pre><br/>This new release focuses on improving source code editing experience, improving editor performance, smart indentation when pasting code. It also extends the code formatter so PHP comments are well structured. Working with PHPUnit made easier with the addition of smart configuration (and bootstrap)  detection. Community plugins updates provide advanced features with Git, ZenCoding and Symfony2.<br/><br/>The changes include:<br/><ul><li>Improved editor performance for multi-line statements and auto indentation scenarios</li><li>Adjust indentation when pasting code</li><li>New code formatter rules for PHP Comments</li><li>Disable/Enable Code formatter with special @formatter:off/on tags</li><li>Git history graph</li><li>PHPUnit auto-detection of configuration (and bootstrap) file</li><li>Improved PHP Class creation for namespace code generation</li><li>Easy installation of community plugins <a href="http://code.google.com/p/zen-coding/" target="_blank">ZenCoding</a> and <a href="http://symfony.dubture.com/" target="_blank">Symfony2 and Twig</a> </li><li>Various bug fixes</li></ul><div>Read <a href="http://static.zend.com/topics/Zend-Studio-9-0-1-Release-Notes.txt" target="_blank">more about this release</a> and <a href="http://www.zend.com/studio" target="_blank">download Zend Studio 9.0</a>.</div><div><br/></div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/36941363-7762233462938874502?l=ganoro.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-10T06:29:38Z</updated>
    <published>2011-12-15T05:26:00Z</published>
    <author>
      <name>Roy Ganor</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/10470159818677369634</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-36941363</id>
      <category term="&quot;end of line&quot; java"/>
      <category term="zend phpcloud studio developer cloud"/>
      <category term="phpcloud zend webapi"/>
      <category term="webtop webtops operating systems future roy ganor"/>
      <category term="Enterprise2.0 zportal"/>
      <category term="phpcloud eclipse zend sdk pdt"/>
      <category term="eclipse test framework"/>
      <category term="facebook app development phpcloud"/>
      <category term="eclipse flash adobe"/>
      <category term="zend studio server php"/>
      <category term="zend developer cloud platform sdk"/>
      <category term="git github zend sdk server"/>
      <category term="zend studio ajax php"/>
      <category term="eclipse democamp telaviv zend"/>
      <category term="phpcloud zend studio cloud best practices development"/>
      <author>
        <name>Roy Ganor</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/10470159818677369634</uri>
      </author>
      <link href="http://ganoro.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/36941363/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://ganoro.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/36941363/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>Ganor's Blog</title>
      <updated>2012-02-02T11:27:09Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-1706439134994847071.post-7709848527192187582</id>
    <link href="http://feedproxy.google.com/~r/MetaBeta/~3/5j1IG4_MKhU/joining-tasktop-team.html" rel="alternate" type="text/html"/>
    <title>Joining the Tasktop Team</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Last week I said that I had some really exciting news to share, and this is it: As of today, I am part of the Tasktop team. I've long been an admirer of Tasktop, for a number of reasons...<br/>
<br/>
First, as all Eclipse users know already, they've built some really cool Eclipse technology including the Mylyn task-focussed interface. But many companies have built cool open source tools...<br/>
<br/>
More impressive is to take those cool ideas, discipline them and build a growing, dynamic company on top of them. But plenty of companies have also done that...<br/>
<br/>
But what's really impressed me about Tasktop -- what's made me want to join rather than observe the effort -- is that Tasktop has gone far beyond the "packaged solution with bundled service and support" that typifies most open source derived business efforts. Many companies take a "fill-in-the-blank" approach to open source business models, creating a captive open source market around their offering. Tasktop has created and nurtured a healthy open source eco-system around core open source offerings, but it then re-imagines and re-purposes the technology, leveraging that technology and expertise to uniquely address real customer pain. That takes real vision, and to me it's a clear signal that the Tasktop leadership is able to imagine <i>and</i> execute at an entirely different energy level.<br/>
<br/>
So I first approached Mik and David in the middle of last year to discuss what they were doing and how I might add real value to the effort. That lead into consulting work with Tasktop last year developing the <a href="http://milesparker.blogspot.com/2011/09/mylyn-modeling-love.html">initial implementation</a> of what has become the <a href="http://www.eclipse.org/projects/project.php?id=mylyn.context.mft">Model Focusing Tools</a> project. That was a great opportunity to get to know some of the team and the Tasktop way. Everything I saw then fit nicely with what I'd already intuited. We have a really great combination of engineering excellence, creativity, and light-weight organization.<br/>
<br/>
It's nice to say "we" again after over seven years of working by myself or as part of a small team. Yes, I had a lot of close associations with very smart and capable folks through collaborative science efforts and open source projects, but it just isn't the same thing if you're not working toward a shared set of goals. And I hadn't realized just how much I'd missed having colleagues to work with on hard problems together until I got involved in that last project.<br/>
<br/>
This morning as I've checked in my email, I've been getting emails from everyone at Tasktop welcoming me to the team. I must admit to a bit of cynicism about the whole "team" thing -- like so much else, it often seems an empty set of words that don't match up at all to reality -- but in this case it feels very genuine. So heartfelt thanks to everyone -- I'm working remotely so I won't get to meet you in person right away, but I look forward to it. And don't worry, you won't have to <a href="http://milesparker.blogspot.com/2011/06/indolent-programming-manifesto.html">"buy me lunch"</a>. ;)<br/>
<br/>
(And yes, I'm afraid to say that you'll still be seeing irreverent and irrelevant blog entries on Eclipse Planet, but I am going to try to keep a closer eye on the four-letter word count.)<br/>
<br/>
Obviously I'm going to be focussed on and very occupied with my new role at Tasktop, and you may be wondering how this will affect the other efforts I'm involved in... With the <a href="http://milesparker.blogspot.com/2012/01/butterflyzer-beta.html">new Beta</a>, Butterflyzer has grown wings -- or for the crossword lovers out there, it's pre-Imago. That's as much as I can say right now, except I'll continue to keep a close eye on its maturation process. I'll also still be leading the Agent Modeling Platform, doing what I can in my off-time to support builds and provide project leadership. The project provides a wide-array of functionality now, and pretty decent quality. Now it is time for people who are interested in moving the ABM effort forward to step up to the plate with their own time and energy. I think the future of tools for modeling real world systems at Eclipse is very bright.<br/>
<br/>
As I said last week it's an exciting time to be building software tools! I know it sounds funny, but I like to think of software development as a helping profession. That's because I think that software products really can help people live more fulfilling, interesting and even happy lives. And I'm delighted to be at Tasktop helping to create those tools.<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/1706439134994847071-7709848527192187582?l=milesparker.blogspot.com" width="1"/></div>
<p><a href="http://feedads.g.doubleclick.net/~a/u9iP42gcz0AbdYqVrdac3_MakPk/0/da"><img border="0" ismap="true" src="http://feedads.g.doubleclick.net/~a/u9iP42gcz0AbdYqVrdac3_MakPk/0/di"/></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/u9iP42gcz0AbdYqVrdac3_MakPk/1/da"><img border="0" ismap="true" src="http://feedads.g.doubleclick.net/~a/u9iP42gcz0AbdYqVrdac3_MakPk/1/di"/></a></p><img height="1" src="http://feeds.feedburner.com/~r/MetaBeta/~4/5j1IG4_MKhU" width="1"/></div>
    </summary>
    <updated>2012-01-10T02:06:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="life"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="business"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://milesparker.blogspot.com/2012/01/joining-tasktop-team.html</feedburner:origLink>
    <author>
      <name>Miles Parker</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-1706439134994847071</id>
      <category term="visualization"/>
      <category term="business"/>
      <category term="emf"/>
      <category term="java"/>
      <category term="mylyn"/>
      <category term="escape"/>
      <category term="web"/>
      <category term="biomed"/>
      <category term="dharma"/>
      <category term="politics"/>
      <category term="xtext"/>
      <category term="graphics"/>
      <category term="amf"/>
      <category term="eclipse"/>
      <category term="ascape"/>
      <category term="osx"/>
      <category term="abm"/>
      <category term="butterflyzer"/>
      <category term="xpand"/>
      <category term="science"/>
      <category term="life"/>
      <category term="amp"/>
      <category term="ip"/>
      <author>
        <name>Miles Parker</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://milesparker.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/MetaBeta" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Emerging thoughts and ideas about science, software and a sacred world. Topics might include Agent-Based Modeling, Java, Eclipse, Model-Driven Software Development, Social Science. And may occasionally veers off into politics, buddhism, music, skiing...</subtitle>
      <title>meta beta</title>
      <updated>2012-01-18T05:13:51Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-18490491.post-6245263748556457574</id>
    <link href="http://martinlippert.blogspot.com/feeds/6245263748556457574/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=18490491&amp;postID=6245263748556457574" rel="replies" title="2 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/18490491/posts/default/6245263748556457574" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/18490491/posts/default/6245263748556457574" rel="self" type="application/atom+xml"/>
    <link href="http://martinlippert.blogspot.com/2012/01/open-and-transparent-demo-camp.html" rel="alternate" title="open and transparent demo camp sponsoring" type="text/html"/>
    <title>open and transparent demo camp sponsoring</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Its been a while since Peter Friese and I started to organize the Eclipse Demo Camp in Hamburg. And since the early days, we couldn't have done it without companies sponsoring the event so that we could sit in a nice location, have free drinks and quite often even free food for everybody joining us to watch great demos and great speakers.<div><br/></div><div>Since sponsoring was always an important part of organizing that event, we decided to try something new in this area. For the next demo camp (the Juno release camps in the summer of 2012), we try a totally open and transparent sponsoring. <b>Everybody</b> is invited to join us sponsoring this event. All you (as a sponsor) need to do is: <a href="http://wiki.eclipse.org/Eclipse_DemoCamps_Juno_2012/Hamburg">register yourself as a sponsor on the demo camp wiki page</a> with your name and the amount of money you would like to spend. And we explicitly invite everybody: from big companies spending several hundreds of Euros to individuals spending only a few bucks. Every single Euro is welcome and highly appreciated.</div><div><br/></div><div>The sponsoring will have absolutely zero effect on the selection of speakers or demos and we continue to have no sponsored talks or company presentations at the beginning (the only exception to this is if the management of the company that is giving us the room for free is asking for a small intro at the beginning, but we try to avoid that as well). And attendance will be free, as usual... :-)</div><div><br/></div><div><b>Ah, one more thing: </b>We will donate 20% of the food/drinks that we order for the event to a local organization that helps homeless people. We think its not fair when we sit inside having more food than we can eat and having other people sitting on the street being hungry. Therefore 20% of all the drinks/food that we order will be delivered directly to that organization on the evening of the demo camp.</div><div><br/></div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/18490491-6245263748556457574?l=martinlippert.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-09T17:41:43Z</updated>
    <published>2012-01-09T17:41:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="Eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Planet-Eclipse"/>
    <author>
      <name>Martin Lippert</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-18490491</id>
      <category term="Agile Software Development"/>
      <category term="AOP"/>
      <category term="Conferences"/>
      <category term="Planet-Eclipse"/>
      <category term="Sessionfire"/>
      <category term="OSGi"/>
      <category term="Architecture"/>
      <category term="Equinox"/>
      <category term="Podcast"/>
      <category term="Eclipse"/>
      <category term="Spring"/>
      <category term="Refactoring"/>
      <category term="Virgo"/>
      <author>
        <name>Martin Lippert</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://martinlippert.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/18490491/posts/default/-/Planet-Eclipse" rel="self" type="application/atom+xml"/>
      <link href="http://martinlippert.blogspot.com/search/label/Planet-Eclipse" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/18490491/posts/default/-/Planet-Eclipse/-/Planet-Eclipse?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <subtitle type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">I work at vmware as engineer on the Eclipse-based developer tooling for Spring. My main work and research focuses on Agile Software Development, Refactoring, Eclipse-Technology, OSGi, Spring and Aspect-Oriented Programming. Contact me at: <a href="mailto:lippert@acm.org">lippert@acm.org</a></div>
      </subtitle>
      <title>Martin Lippert</title>
      <updated>2012-01-31T12:16:36Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://computerfloss.com/blog/?p=1079</id>
    <link href="http://computerfloss.com/blog/2012/01/eclipse-trainings-available/" rel="alternate" type="text/html"/>
    <title>Eclipse trainings available</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">I delivered my first Eclipse training just before Christmas last year. I’m happy to say that the clients, just under a dozen programmers working for a large German corporation, have reported being “very satisfied” with my two-day seminar. I’m also happy to say I enjoyed it even more than I thought I would, probably due… <a href="http://computerfloss.com/blog/2012/01/eclipse-trainings-available/" rel="bookmark">read more</a></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>I delivered my first Eclipse training just before Christmas last year. I’m happy to say that the clients, just under a dozen programmers working for a large German corporation, have reported being “very satisfied” with my two-day seminar. I’m also happy to say I enjoyed it even more than I thought I would, probably due to the lack of nervousness I thought I might experience. In fact, I was so at ease and enjoying myself, I’m now hugely looking forward to delivering it again for other clients.</p>
<p>For anyone who wishes to know more about the Eclipse training I provide (perhaps you’re interested in it yourself?) here’s the basic overview:</p>
<ul>
<li>Downloading and installing</li>
<li>Introducing the working environment (workbench, views, perspectives)</li>
<li>Programming using the editor, basic functions</li>
<li>Backup and versioning, local history</li>
<li>Using plug-ins and updates sites</li>
<li>Project administration</li>
<li>Features for object-oriented programming</li>
<li>Features for Java development</li>
<li>Debugging and Running programs</li>
<li>GUI development using visual editors</li>
<li>Automated testing using JUnit</li>
<li>Version control using Subversion and Subclipse</li>
<li>Developing UML diagrams</li>
<li>Editing XML files</li>
<li>Plug-in development</li>
<li>Practical tips and tricks</li>
</ul>
<p>These subjects are by no means carved in stone, but they certainly embody what is necessary for beginners to learn (with the possible exceptions of UML, XML and plug-in development) and represent what can be covered in a minimum of two days. Beyond that, my curriculum is flexible and open to discussion.</p>
<p>If you’re interested in knowing more or booking a training, then please feel free to get in touch via <a href="mailto:mail@karlbeecher.com">mail@karlbeecher.com</a>.</p></div>
    </content>
    <updated>2012-01-09T14:10:14Z</updated>
    <category term="News"/>
    <category term="Eclipse"/>
    <category term="Java"/>
    <category term="JUnit"/>
    <category term="Subclipse"/>
    <category term="Subversion"/>
    <category term="training"/>
    <category term="UML"/>
    <category term="XML"/>
    <author>
      <name>Karl Beecher</name>
    </author>
    <source>
      <id>http://computerfloss.com/blog</id>
      <link href="http://computerfloss.com/blog/tag/eclipse/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://computerfloss.com/blog" rel="alternate" type="text/html"/>
      <subtitle>Delightful digital distractions in free/libre/open source software</subtitle>
      <title>Computer Floss » Eclipse</title>
      <updated>2012-01-19T20:02:56Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-34692233.post-322290190007010585</id>
    <link href="http://underlap.blogspot.com/feeds/322290190007010585/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=34692233&amp;postID=322290190007010585" rel="replies" title="6 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/34692233/posts/default/322290190007010585" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/34692233/posts/default/322290190007010585" rel="self" type="application/atom+xml"/>
    <link href="http://underlap.blogspot.com/2011/08/new-releases-virgo-30-and-gemini-web-20.html" rel="alternate" title="New Releases: Virgo 3.0 and Gemini Web 2.0" type="text/html"/>
    <title>New Releases: Virgo 3.0 and Gemini Web 2.0</title>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">Virgo 3.0 and Gemini Web 2.0, collectively known as the <a href="http://wiki.eclipse.org/Virgo/Future#Release_Branding">Maya</a> release, are available for <a href="http://www.eclipse.org/virgo/download/">download</a> and <a href="http://www.eclipse.org/gemini/web/download/">download</a>, respectively.<br/><br/>The team of committers has expanded considerably and, although the team is now distributed geographically, we have a great working relationship. I'm delighted that these projects are now community collaborations rather than the work of a single vendor.<br/><br/>The theme of Virgo 3.0 is better integration with EclipseRT technologies. To that end, we have created a Jetty variant of the Virgo web server and have switched from Felix to Equinox implementations of some OSGi services. <a href="http://underlap.blogspot.com/2011/07/exploiting-p2-in-eclipsert-projects.html">Integration with p2</a> is proving a tough nut to crack and is deferred to the Bondi (3.5) release, although we expect to issue a milestone soon to get some feedback from the user community.<br/><br/>Gemini Web and the Tomcat variant of the Virgo web server have been upgraded to Tomcat 7 and Servlet 3.0.<br/><br/>Gemini Web 2.0 passes the OSGi Web Applications compliance tests and will replace the SpringSource OSGi Web Container as the OSGi Web Applications reference implementation.<br/><br/>The <i>snaps</i> framework for modular web applications is also released as part of Maya. This started life as the SpringSource <i>slices</i> prototype.<br/><br/>Virgo kernel 3.0 has a new shell based on Apache Felix <a href="http://felix.apache.org/site/apache-felix-gogo.html">Gogo</a> for both the kernel and user region and accessible via telnet or ssh.<br/><br/>The 3.0 kernel also uses a new implementation of regions, the <a href="http://underlap.blogspot.com/2011/05/equinox-digraph-ready-for-use.html">region digraph</a>, based on OSGi standard framework hooks. The digraph should position Virgo well for implementing the OSGi Subsystems specification in a future release. (The specification is still under development, but we expect a public draft from the OSGi Alliance before long.) The digraph has moved from Virgo to Equinox to enable it to be used by other projects, especially those that are aiming to implement the Subsystems spec.<br/><br/>Highlights:<br/><ul><li>New Virgo Jetty Server</li><li>Virgo Tomcat Server and Gemini Web upgraded to Tomcat 7 and Servlet 3.0</li><li>New Snaps framework for modular web applications with <a href="http://www.eclipse.org/virgo/documentation/virgo-documentation-3.0.0.RELEASE/docs/snaps-guide/htmlsingle/virgo-snaps-guide.html">new guide</a></li><li>New Gogo shell</li><li><a href="http://www.eclipse.org/gemini/web/documentation/gemini-web-documentation-2.0.1.RELEASE/gemini-web-user-guide/htmlsingle/gemini-web-user-guide.html">New user guide</a> for Gemini Web</li><li>Updated <a href="http://www.eclipse.org/virgo/samples/">GreenPages sample</a> with <a href="http://www.eclipse.org/virgo/documentation/greenpages-documentation-2.4.0.RELEASE/docs/htmlsingle/greenpages-guide.html">new guide</a></li></ul><div>See the release notes for details.</div><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/34692233-322290190007010585?l=underlap.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-09T11:56:31Z</updated>
    <published>2011-08-25T09:46:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="OSGi"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Virgo"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Equinox"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Felix"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Jetty"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="Gemini"/>
    <author>
      <name>Glyn</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/08741529390385812080</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-34692233</id>
      <category term="Hotspot"/>
      <category term="p2"/>
      <category term="subsystems"/>
      <category term="sunbug"/>
      <category term="plans"/>
      <category term="Dolphin"/>
      <category term="design patterns"/>
      <category term="Libra"/>
      <category term="EclipseRT"/>
      <category term="SourceTree"/>
      <category term="BigDecimal"/>
      <category term="cloning"/>
      <category term="CORBA"/>
      <category term="Newton"/>
      <category term="maven"/>
      <category term="Java 7"/>
      <category term="CICS"/>
      <category term="interfaces"/>
      <category term="CaseInsensitiveMap"/>
      <category term="Oracle"/>
      <category term="Karaf"/>
      <category term="SOA"/>
      <category term="WebLogic"/>
      <category term="Aries"/>
      <category term="Harmony"/>
      <category term="Felix"/>
      <category term="EBR"/>
      <category term="dm Server"/>
      <category term="RAP"/>
      <category term="Scala"/>
      <category term="Jetty"/>
      <category term="git"/>
      <category term="survey"/>
      <category term="Equinox"/>
      <category term="JDK 7"/>
      <category term="Free Burma"/>
      <category term="Structure101"/>
      <category term="Grails"/>
      <category term="services"/>
      <category term="Java 8"/>
      <category term="jps"/>
      <category term="Spring"/>
      <category term="Apache"/>
      <category term="SpringSource"/>
      <category term="Geronimo"/>
      <category term="RFC 66"/>
      <category term="Interface21"/>
      <category term="JSR 277"/>
      <category term="Mule"/>
      <category term="JBoss"/>
      <category term="JVM"/>
      <category term="snaps"/>
      <category term="OSGi"/>
      <category term="eclipsecon"/>
      <category term="nano"/>
      <category term="example"/>
      <category term="tutorial"/>
      <category term="GlassFish"/>
      <category term="SCA"/>
      <category term="JSIG"/>
      <category term="Jigsaw"/>
      <category term="EEG"/>
      <category term="software design"/>
      <category term="Osxa"/>
      <category term="cloud"/>
      <category term="web services"/>
      <category term="Java"/>
      <category term="Gemini"/>
      <category term="WebSphere"/>
      <category term="Refactoring"/>
      <category term="Virgo"/>
      <category term="SOAP"/>
      <category term="JSR 294"/>
      <category term="IIOP"/>
      <category term="JCP"/>
      <category term="Enterprise"/>
      <category term="CloudFoundry"/>
      <category term="Gradle"/>
      <category term="SpringSource Application Platform OSGi"/>
      <category term="Ruby"/>
      <category term="JSR 291"/>
      <category term="kernel"/>
      <category term="Eclipse"/>
      <category term="design"/>
      <category term="release"/>
      <category term="jconsole"/>
      <category term="gitx"/>
      <category term="deadlock"/>
      <category term="OpenJDK"/>
      <category term="interoperation"/>
      <category term="Pax Exam"/>
      <author>
        <name>Glyn</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/08741529390385812080</uri>
      </author>
      <link href="http://underlap.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/34692233/posts/default" rel="self" type="application/atom+xml"/>
      <link href="http://underlap.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <link href="http://www.blogger.com/feeds/34692233/posts/default?start-index=26&amp;max-results=25" rel="next" type="application/atom+xml"/>
      <title>Mind the Gap</title>
      <updated>2012-01-24T15:38:01Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://gyrex.wordpress.com/?p=29</id>
    <link href="http://gyrex.wordpress.com/2012/01/09/how-we-do-release-engineering/" rel="alternate" type="text/html"/>
    <title>How we do release engineering?</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">One of the challenging parts at Eclipse is doing the release engineering work. Large projects may have dedicated resources as well as well established processes. We don’t. However, I like the way the Eclipse project is doing their builds. They have (over simplified) a “version.properties” file that contains a list of bundles and a SCM tag to [...]<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=gyrex.wordpress.com&amp;blog=20109624&amp;post=29&amp;subd=gyrex&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>One of the challenging parts at Eclipse is doing the release engineering work. Large projects may have dedicated resources as well as well established processes. We don’t. However, I like the way the Eclipse project is doing their builds. They have (over simplified) a “version.properties” file that contains a list of bundles and a SCM tag to use. They are called map files and they drive the build.</p>
<p>For a long piece of Eclipse history, the map files were tagged manually by hand. Whenever a committer modified a bundle (aka. plug-in or feature). He also had to release those changes by tagging the bundle and updating the map file. When the Eclipse project migrated to Git they automated this process. A script is started before the real build begins. The script scans a branch for new commits since the last tag. If any new commits are found, the repository will be tag with a new tag and the map file will be updated.</p>
<p>I started migrating Gyrex to Git last week. The CVS to Git part was easy. Our build is running again. Thanks to an update to PDE Build it fully supports Git map files. Our process has always been as close to the Eclipse project as possible. We also use the map files which drive our build. We also used to tag our (CVS) projects by hand and we also used to update the map files by hand. Now with the change to Git we’ll also stop doing that.</p>
<p>I took the scripts from the Eclipse project and adapted them. We don’t run the script as part of our Hudson build job. Due to security concerns, the Hudson machines aren’t able to push changes back to Git repos. Thus, I run the tagging scripts on build.eclipse.org by cron. At the end of the run, a Hudson build will be triggered by the script via and Hudson API call.</p>
<p>You can find the scripts here:<br/>
<a href="http://git.eclipse.org/c/gyrex/gyrex-releng.git/tree/org.eclipse.gyrex.releng/builder/environments/build.eclipse.org/tagging" target="_blank" title="Browse Gyrex Releng Repo">gyrex-releng.git/tree/org.eclipse.gyrex.releng/builder/environments/build.eclipse.org/tagging</a></p>
<br/>Filed under: <a href="http://gyrex.wordpress.com/category/documentation/">Documentation</a>, <a href="http://gyrex.wordpress.com/category/updates/">Updates</a> Tagged: <a href="http://gyrex.wordpress.com/tag/cvs/">CVS</a>, <a href="http://gyrex.wordpress.com/tag/git/">Git</a>, <a href="http://gyrex.wordpress.com/tag/releng/">Releng</a> <a href="http://feeds.wordpress.com/1.0/gocomments/gyrex.wordpress.com/29/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/gyrex.wordpress.com/29/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/gyrex.wordpress.com/29/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/gyrex.wordpress.com/29/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/gyrex.wordpress.com/29/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/gyrex.wordpress.com/29/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/gyrex.wordpress.com/29/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/gyrex.wordpress.com/29/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/gyrex.wordpress.com/29/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/gyrex.wordpress.com/29/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/gyrex.wordpress.com/29/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/gyrex.wordpress.com/29/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/gyrex.wordpress.com/29/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/gyrex.wordpress.com/29/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=gyrex.wordpress.com&amp;blog=20109624&amp;post=29&amp;subd=gyrex&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-09T07:49:49Z</updated>
    <category term="Documentation"/>
    <category term="Updates"/>
    <category term="CVS"/>
    <category term="Git"/>
    <category term="Releng"/><geo:lat xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">50.926999</geo:lat><geo:long xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">11.587011</geo:long>
    <author>
      <name>Gunnar</name>
    </author>
    <source>
      <id>http://gyrex.wordpress.com</id>
      <logo>http://s2.wp.com/i/buttonw-com.png</logo>
      <link href="http://gyrex.wordpress.com/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://gyrex.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://gyrex.wordpress.com/osd.xml" rel="search" title="Hacking Eclipse Gyrex" type="application/opensearchdescription+xml"/>
      <link href="http://gyrex.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>Gyrex buzz for fun an profit</subtitle>
      <title>Hacking Eclipse Gyrex</title>
      <updated>2012-02-04T04:49:48Z</updated>
    </source>
  </entry>

  <entry xml:lang="en">
    <id>http://ekkescorner.wordpress.com/?p=3239</id>
    <link href="http://ekkescorner.wordpress.com/2012/01/07/git-and-mobile-development-branches/" rel="alternate" type="text/html"/>
    <title>Git and mobile development (Git branching model)</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">mobile development == development for different API versions As you know, the last years I was using Mercurial (hg) as DVCS for my projects. 2012 will become the year of Git While I like the easy-to-use-and-understand Mercurial, which is a good way to start with DVCS, the last weeks I experimented using Git for some [...]<img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=ekkescorner.wordpress.com&amp;blog=7691743&amp;post=3239&amp;subd=ekkescorner&amp;ref=&amp;feed=1" width="1"/></div>
    </summary>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><h1>mobile development == development for different API versions</h1>
<p>As you know, the last years I was using Mercurial (hg) as DVCS for my projects.<br/>
2012 will become the year of Git <img alt=";-)" class="wp-smiley" src="http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif"/><br/>
While I like the easy-to-use-and-understand Mercurial, which is a good way to start with DVCS, the last weeks I experimented using Git for some special workflows not so easy possible using Mercurial.</p>
<p>If you’re developing for mobile devices (doesn’t matter if this is Android or BlackBerry etc) sooner or later you run into the situation that you have to support some platform OS versions.<br/>
per ex. for BlackBerry:</p>
<ul>
<li>…</li>
<li>BlackBerry OS 5</li>
<li>BlackBerry OS 6</li>
<li>BlackBerry OS 7</li>
<li>…</li>
</ul>
<p>there are different strategies how to solve this:</p>
<ul>
<li>manage different projects for each OS Version</li>
<li>use a pre-processor</li>
<li>encapsulate different API’s in libraries and build different products</li>
</ul>
<p>both doesn’t make me happy: I don’t want to manage different projects parallel and I also don’t want to use a preprocessor because the code becomes more unreadable with all those if OS5 then….. if OS 6 then….. instructions. Also the library-per-API.-differences solution isn’t really flexible.</p>
<p>So I was looking for new ways HowTo solve this and sketched up what I’ll need.</p>
<p>Reading <a href="http://alblue.bandlem.com/2011/11/git-tip-of-week-git-flow.html" target="_blank" title="Al Blue: GitFlow">Al Blues Git Tip of the week: GitFlow</a> I found out that most of my ideas were already published here: <a href="http://nvie.com/posts/a-successful-git-branching-model/" target="_blank">A successful Git branching model</a> <img alt=";-)" class="wp-smiley" src="http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif"/> </p>
<p><a href="http://nvie.com/posts/a-successful-git-branching-model/"><img alt="" class="alignnone  wp-image-3241" height="489" src="http://ekkescorner.files.wordpress.com/2012/01/git-branching-model.png?w=367&amp;h=489" title="git-branching-model" width="367"/></a></p>
<p>I don’t need it exactly this way, but if you should read the article to get the idea how all will work.</p>
<p>so back to the mobile development.</p>
<p>let’s take an actual example:</p>
<h1>logging4bb using a special Git Branching model</h1>
<h2>Overview</h2>
<p>I developed a logging framework for BlackBerry OS 6+. As you probably know, under BlackBerry OS Java you couldn’t use any of the modern logging frameworks like Log4J, SLF4J, LogBack, java.util-logging etc.</p>
<p>Logging is always an important part for my development, so I implemented a logging framework (<strong><a href="https://ekkesapps.wordpress.com/oss/blackberry/logging4bb/" target="_blank">logging4bb</a></strong>) where I can</p>
<ul>
<li>log to SQlite on BlackBerry</li>
<li>or through Socket Connection to Lilith as LogMonitor.</li>
</ul>
<p>If you followed my blogs you know that I’m using Lilith since years to monitor the logging of OSGi – Equinox applications together with SLF4F / LogBack.</p>
<p>I’m sending LogEvents to Lilith using the same format as LogBack does this using a Lilith Appender, so Lilith doesn’t know that there’s not LogBack but a BlackBerry device sending events.</p>
<p>This works from Simulator and also real Devices through WLAN or CellTower. The best thing: now you can watch log statements from server and mobile clients side-by-side <img alt=":)" class="wp-smiley" src="http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif"/> </p>
<p><a href="https://ekkesapps.wordpress.com/oss/blackberry/logging4bb/"><img alt="" class="alignnone" height="237" src="http://ekkesapps.files.wordpress.com/2012/01/logging4bboverview01.png?w=490&amp;h=237&amp;h=237" title="logging4bb" width="490"/></a></p>
<p>read <a href="https://ekkesapps.wordpress.com/oss/blackberry/logging4bb/" target="_blank">more here about the logging4bb</a> project itself.</p>
<p>Between BlackBerry OS 6 and OS 7 APIs supporting SQLite and also Remote Command Framework are different, so I wanted to support both OS versions.</p>
<p>Next problem because the project should be Open-Sourced:</p>
<p>The Socket Connection uses BIS (BlackBerry Internet Service), which makes it very easy to switch between WLAN and CellTower and still using the same SocketConnection.</p>
<p>As a BlackBerry partner you’re allowed to use BIS as a free BlackBerry Service in your products (per ex. my Apps in the Appworld), but it’s not allowed to publish the special connection String.</p>
<p>To launch and run the application I have to use the String. How to make development possible with these goals:</p>
<ul>
<li>support different OS versions (API)</li>
<li>support public (OSS) and private development</li>
<li>support OSS project and Appworld Product</li>
</ul>
<p>all without the standard ways like pre-processor etc.</p>
<h2>public and private repositories</h2>
<p>of course I want to use source repositories for the public parts (OSS) and also the private parts (secret connection and also appworld product and/or customer products).</p>
<p>that’s the reason why the projects are hosted at Bitbucket: I can have unlimited private repositories for free.</p>
<p>Great that Bitbuckit also supports both: hg and Git projects.</p>
<p><a href="https://bitbucket.org/ekkescorner"><img alt="" class="alignnone size-full wp-image-3250" height="63" src="http://ekkescorner.files.wordpress.com/2012/01/bitbucket-logo.png" title="bitbucket-logo" width="154"/></a></p>
<h2>Git Branching Model</h2>
<p>Here’s an example how the branching model could look like from different tools:</p>
<p>EGit:</p>
<p><a href="https://eclipse.org/egit/"><img alt="" class="alignnone" height="63" src="http://ekkesapps.files.wordpress.com/2012/01/egit-logo.png?w=140&amp;h=63&amp;h=63" width="140"/></a></p>
<p><a href="http://ekkescorner.files.wordpress.com/2012/01/repos-egit.png"><img alt="" class="alignnone size-full wp-image-3251" height="316" src="http://ekkescorner.files.wordpress.com/2012/01/repos-egit.png" title="repos-egit" width="359"/></a></p>
<p>Tower (OSX):</p>
<p><a href="http://www.git-tower.com/"><img alt="" class="alignnone" height="125" src="http://ekkesapps.files.wordpress.com/2012/01/tower-logo.png?w=91&amp;h=125&amp;h=125" width="91"/></a></p>
<p><a href="http://ekkescorner.files.wordpress.com/2012/01/repos-tower.png"><img alt="" class="alignnone size-full wp-image-3252" height="472" src="http://ekkescorner.files.wordpress.com/2012/01/repos-tower.png" title="repos-tower" width="247"/></a></p>
<p>I’m working with Tower because then it’s easy to have one single place where I can manage all my repositories from Eclipse Workspaces on OSX (my main development) and also Eclipse Workspaces from the unfortunately-Windows-only-BlackBerry development.</p>
<p>Hint: I’m using Parallels and mapped a directory on OSX as Drive W:\ to Parallels-Windows7 running on top of OSX. so I can manage all from Tower on OSX <img alt=":)" class="wp-smiley" src="http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif"/> </p>
<p>Here’s an overview how my branching model works:</p>
<p><a href="http://ekkescorner.files.wordpress.com/2012/01/branchingmodel.png"><img alt="" class="alignnone size-full wp-image-3258" height="778" src="http://ekkescorner.files.wordpress.com/2012/01/branchingmodel.png" title="branchingmodel" width="544"/></a></p>
<p>let’s take a look into the details:</p>
<p><strong>Who’s the Master ?</strong></p>
<p>There’s no Master branch as usual, because there are dev-* branches working like a Master branch for the different OS Versions.</p>
<p>The Master only has a readme.txt file with a short description of the branching model.</p>
<p>Then development started with the dev-public Branch – in this case development started with OS 6 API. Some times later after finishing the OS 6 version, the development continues using the newest OS 7, so a branch os6/dev-public was created.</p>
<p>Each branch works like a Master for the specific OS Version.</p>
<p>Hint: I’m using the “/” in the names to get a folder-like structure in tooles like Tower.</p>
<p><strong>What about Bugs ?</strong></p>
<p>Bugfixes only for OS 6 API will be done on the os6/dev-public branch – bugs for all versions will be fixed on the newest branch.</p>
<p>If some parts of the new development or generic branches should be back-ported to the older os6 version, then GIT Cherry-Pick is an easy way to do this.</p>
<p><strong>How to use the “secret” private Repository ?</strong></p>
<p>This repository is only needed in workflows where the project ist Open Source and public, but some parts are not allowed to be publicly visible.</p>
<p>In this special case I need dev-secret* branches, where I add the secret parts. Now it becomes difficult: without the secret connection code I cannot run and test the application or launch the simulator. So normaly I’ll work in the *secret* branches, test-run-change code etc.</p>
<p>But these changes must be part  of the public branches. So after some steps I want to commit and I also want to be sure, that all works from the OSS public branch.</p>
<p>Now GIT Stashing comes into play:</p>
<ul>
<li>all changes from secret branch will be staged</li>
<li>then stashed</li>
<li>now switching to public branch</li>
<li>applying stash to public branch and see if all compiles</li>
<li>committing to public branch</li>
<li>pushing to remote public OSS repository</li>
<li>switching back to secret branch</li>
<li>merging public branch into secret branch</li>
<li>pushing changes to private secret repository</li>
</ul>
<p>sounds complicated, but it works very well and after some weeks working with this branching model I like the flexibility</p>
<p><strong>How to work with Customer Repositories ?</strong></p>
<p>workflows are easier, I only merge regulary from the public development branches, because normaly special customer-cases won’t be given back to the public area.</p>
<p>but if – from time to time – something should go back: as usual cherry-picking is your friend.</p>
<h2>HowTo organize local development Repositories</h2>
<p>this is totally up to you how you organize your local repositories. It depends from your team-size, project structures etc. some examples what could be done:</p>
<ol>
<li>One local repo for all Braches of a specific project: You can have one workspace for all branches and always switch between public – secret – customers – OS Versions. Again Stashing can help to make the workspace clean before switching.</li>
<li>One local repo for each platform OS: Then your local Repository has some branches for different projects from different remote repositories, but all for the same OS Version</li>
<li>One local repo for each Customer: Then all Customer Branches will be inside one workspace.</li>
</ol>
<p>To cherry-pick and move changes back to other branches one member of your development team should have a local Repository like 1.</p>
<h2>Local branches</h2>
<p>The Branching Model above was all about public remote branches tracked by your local branches.</p>
<p>Of course al the usual workflows work as with ‘normal’ projects referring to a Master Branch only:</p>
<p>create local branches for bugfixes, new features etc.</p>
<p>Hint: if not already done please read the article above: <a href="http://nvie.com/posts/a-successful-git-branching-model/" target="_blank">A successful Git branching model</a></p>
<h2>What Users should Clone / Check-Out ?</h2>
<p>Users simply clone the public Repository and then have to decide which public branch they should check out and always pull against to get the newest things.</p>
<p>Everyone who only needs the OS 6 version simply checks out the os6/dev-public branch, who needs the newest one checks out dev-public branch. Who needs all, can switch between the branches or have different workspaces for different OS Versions or ….</p>
<p>GIT really makes it easy for everyone to follow their specific workflows and project structures.</p>
<h1>Tooling</h1>
<p>Tooling is important if you want to manage complex workflows with GIT.</p>
<p>If you’re a friend of the commandline, then you can do it all from there very fast and all options are open to you.</p>
<p>But I don’t like the commandline and prefer UI Tools.</p>
<p>If you’re working with Eclipse only then EGit is the best way to do it. <a href="http://aniszczyk.org/2011/12/23/egit-and-jgit-1-2-released/" target="_blank">Newest versions of EGit</a> / JGit now are supporting most what GIT provides. If you like Gerrit for code-reviews then again EGit is a good solution.</p>
<p>I’m now using Tower, which is a great UI Tooling for OSX. (Thx @PeterFriese mentioning Tower some time ago at twitter)</p>
<p>With Tower I can manage all my repositories at a single place – doesn’t matter if they’re from OSX – Eclipse workspaces, Windows (on-Parallels) Eclipse workspaces or from non-Eclipse sources.</p>
<p>All the workflows are easy to manage from Tower. The UI is a really good looking OSX UI. I’ll provide some Videos later.</p>
<h1>Thanks</h1>
<p>…to <a href="http://alblue.bandlem.com/search/label/gtotw" target="_blank">Al Blue’s Git Tips of the week</a> – series – this is a must-read for everyone starting with Git to understand the power of Git.</p>
<p>I’ll blog some more about my GIT experiences soon as part of my DVCS blogging series.</p>
<p>—————————————————————————————————————————</p>
<p><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.en"><img alt="" class="size-full wp-image-189 alignnone" height="20" src="http://redvoodo.files.wordpress.com/2011/05/cc-license-icons.png" title="cc-license BY-NC-SA 3.0" width="60"/></a></p>
<p><em>(c) 2011 <a href="http://creativecommons.org/licenses/by-nc-sa/3.0/deed.en" title="Creative Commons License 3.0">Creative Commons License 3.0 (BY-NC-SA)</a> by  <a href="http://en.gravatar.com/ekkescorner" target="_blank" title="the author">ekkescorner</a> </em></p>
<br/>Filed under: <a href="http://ekkescorner.wordpress.com/category/blackberry/">Blackberry</a>, <a href="http://ekkescorner.wordpress.com/category/eclipse/">Eclipse</a>, <a href="http://ekkescorner.wordpress.com/category/egit/">Egit</a>, <a href="http://ekkescorner.wordpress.com/category/logback/">LOGBack</a>, <a href="http://ekkescorner.wordpress.com/category/mobile/">mobile</a>  <a href="http://feeds.wordpress.com/1.0/gocomments/ekkescorner.wordpress.com/3239/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ekkescorner.wordpress.com/3239/"/></a> <a href="http://feeds.wordpress.com/1.0/godelicious/ekkescorner.wordpress.com/3239/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ekkescorner.wordpress.com/3239/"/></a> <a href="http://feeds.wordpress.com/1.0/gofacebook/ekkescorner.wordpress.com/3239/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ekkescorner.wordpress.com/3239/"/></a> <a href="http://feeds.wordpress.com/1.0/gotwitter/ekkescorner.wordpress.com/3239/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ekkescorner.wordpress.com/3239/"/></a> <a href="http://feeds.wordpress.com/1.0/gostumble/ekkescorner.wordpress.com/3239/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ekkescorner.wordpress.com/3239/"/></a> <a href="http://feeds.wordpress.com/1.0/godigg/ekkescorner.wordpress.com/3239/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ekkescorner.wordpress.com/3239/"/></a> <a href="http://feeds.wordpress.com/1.0/goreddit/ekkescorner.wordpress.com/3239/" rel="nofollow"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ekkescorner.wordpress.com/3239/"/></a> <img alt="" border="0" height="1" src="http://stats.wordpress.com/b.gif?host=ekkescorner.wordpress.com&amp;blog=7691743&amp;post=3239&amp;subd=ekkescorner&amp;ref=&amp;feed=1" width="1"/></div>
    </content>
    <updated>2012-01-07T14:39:05Z</updated>
    <category term="Blackberry"/>
    <category term="Eclipse"/>
    <category term="Egit"/>
    <category term="LOGBack"/>
    <category term="mobile"/><geo:lat xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">47.855939</geo:lat><geo:long xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">12.127960</geo:long>
    <author>
      <name>ekkescorner</name>
    </author>
    <source>
      <id>http://ekkescorner.wordpress.com</id>
      <logo>http://0.gravatar.com/blavatar/8582db0cc3f2a753d1517f8516a88ece?s=96&amp;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</logo>
      <link href="http://ekkescorner.wordpress.com/feed/" rel="self" type="application/rss+xml"/>
      <link href="http://ekkescorner.wordpress.com" rel="alternate" type="text/html"/>
      <link href="http://ekkescorner.wordpress.com/osd.xml" rel="search" title="ekkes-corner: eclipse | osgi | mdsd | erp | mobile" type="application/opensearchdescription+xml"/>
      <link href="http://ekkescorner.wordpress.com/?pushpress=hub" rel="hub" type="text/html"/>
      <subtitle>open source and software architecture</subtitle>
      <title>ekkes-corner: eclipse | osgi | mdsd | erp | mobile</title>
      <updated>2012-02-04T04:50:34Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-1706439134994847071.post-1699115306399075391</id>
    <link href="http://feedproxy.google.com/~r/MetaBeta/~3/qNRR0sr-DxA/butterflyzer-beta.html" rel="alternate" type="text/html"/>
    <title>Butterflyzer Beta</title>
    <summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">When Butterflyzer was launched a year ago it was introduced with the following words:<br/>
<br/>
<blockquote><i>"Butterflyzer is in Alpha now. Before we release more polished versions, we need to know if people really want it. So if you like it and want to see a full version, follow us on twitter, and tell your friends. If we get 10 followers we'll release an alpha version. If we get 100 followers we'll release a beta. If we get 250 followers, we'll make a nicely packaged version available commercially at a decent price. Simple as that."</i></blockquote><br/>
A minor problem.. the response was so great that we achieved the Beta milestone in a few months. And the software just wasn't there in terms of Beta quality. Plus, I felt that there were a number of key improvements to the interface and other functionality that just had to be made. So, it's been six months since we hit the milestone, and I'm happy to announce that..<br/>
<br/>
<b><span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: x-large;">The Beta is Finally Here!</span></b><br/>
<br/>
<span style="color: green;"><a href="http://butterflyzer.com/index.php/download"><span class="Apple-style-span" style="font-size: large;">Download Butterflyzer Now</span></a></span><br/>
<br/>
We've had a Beta Preview available for some time, so many of the features won't be news to all of our users, but I think the level of polish -- if you can talk about a beta release having polish -- is pretty good. There will certainly be issues with it (that's why we have betas!) but it is otherwise feature complete and ready to go to version 1.0. If you're wondering how much work has gone into the release, I'll throw out one measure: the Beta release is Build #995. Here are just some of the many issues big and small that we've addressed along the way..<br/>
<br/>
<h4>User Interface</h4><br/>
The application just didn't fit in well with the target audience and their expectations about how web related tools should look and feel. One of the most important pieces of feedback I heard was that the interface just felt overwhelming. There is a lot that you can do with Butterflyzer, and I wanted to find a way to make that functionality easily accessible while de-cluttering the user environment as much as possible.<br/>
<br/>
The Butterflyzer Alpha was a typical Rich Client (RCP) application built on the rock-solid and powerful Eclipse platform -- the same one that IBM and other leading software companies base their applications on. The downside of that is that the current Eclipse UI support is a bit stodgy. And unfortunately, while the Eclipse environment provides a lot of functionality, it is very difficult to change the overall look and feel. (E4 makes huge improvements in this area, but E4 didn't address all of our requirements and isn't quite mature enough yet.) So we went back to the drawing board, moved a bunch of stuff around, and re-implemented key existing functionality, including interface and workbench components. It wasn't simple to make these changes, but I think they were more that worthwhile. In fact, I think they were necessary. You can build the most powerful, feature-rich program in the world, but if the UI isn't any good, the only people who use it will be the people who don't have any other choice. So yep, we sweated those single pixels.<br/>
<br/>
<h5>Browser Look and Feel</h5><br/>
In the quest for simplification, Butterflyzer copies the overall presentation of a typical web browser like Safari, Chrome or Firefox. Catalogs are like browser tabs and all of the interface elements are consolidated within them. That means that we've essentially turned the typical end-user application inside out, with all of the tools and views being hosted inside each editor.<br/>
<br/>
Here's what the old application looked like:<br/>
<br/>
<div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-yu8DaxV9t3A/TwU-EXU33GI/AAAAAAAABIs/XaO-tim_Iiw/s1600/BetaBlogOldApp.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://4.bp.blogspot.com/-yu8DaxV9t3A/TwU-EXU33GI/AAAAAAAABIs/XaO-tim_Iiw/s1600/BetaBlogOldApp.png"/></a></div><br/>
And here's chrome, our simplicity bogey:<br/>
<br/>
<div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-M1u3Gx74nUU/TwU-E5wRXZI/AAAAAAAABJI/VYJjLP-8rvU/s1600/BetaBlogChrome.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://4.bp.blogspot.com/-M1u3Gx74nUU/TwU-E5wRXZI/AAAAAAAABJI/VYJjLP-8rvU/s1600/BetaBlogChrome.png"/></a></div><br/>
Here's the new and improved Butterflyzer:<br/>
<br/>
<div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-7qU25TyzQBU/TwdkPw81Z3I/AAAAAAAABJo/ff0d4J5hc_Q/s1600/BetaBlogNewApp2.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://2.bp.blogspot.com/-7qU25TyzQBU/TwdkPw81Z3I/AAAAAAAABJo/ff0d4J5hc_Q/s1600/BetaBlogNewApp2.png"/></a></div><br/>
<h6>Why so dark?</h6><br/>
By the way, if you've wondered why Butterflyzer employs a "light on dark" visual style, it's not that we're trying to be trendy or anything. There are sound reasons for keeping the Butterflyzer elements dark:<br/>
<br/>
<ol><li>Colors are easier to distinguish, connect and even read against a black background, and color plays a critical role in establishing implicit relationships within and between the various Butterflyzer user elements. Remember those old green and amber monitors? They really were easier on the eye.</li>
<li>A dark background allows images to pop and reduces the sense of visual clutter, which is a critical issue given the complexity of the information visualized.</li>
<li>Most web pages and other artifacts are black on white, of course -- keeping the Butterflyzer elements dark helps establish the web page elements as the visual foreground for the user. There is the "content manager" and then there is the "content" -- everything we can do to make that separation clear is helpful.</li>
<li>Because we insert the semantic tags directly into the web pages, we need a way to distinguish them clearly from the rest of the web content, and we want those tags to look like the tags in the other views. OK, it's not always that attractive, but you can always turn the semantic feature off if you just want to look at the web page content.</li>
<li>A dark background allows us to employ more obvious color highlights for buttons themselves. That's important because most of the buttons are monochrome and a simple as possible; we can then color them as appropriate for user interaction.</li>
</ol>Plus it looks cool, right?<br/>
<br/>
<h5>New Help System</h5><br/>
We've implemented a new Help System that includes dynamic help, so that when you scroll over an interface item, you can get live help. Speaking of help, there is a lot of it! And since we have it now, I'll use it to help tell the story.<br/>
<br/>
<div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-rc8TvDL-5Vs/TwUj74MnDJI/AAAAAAAABII/RcGxFGl0m0k/s1600/BetaBlogHelp.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="379" src="http://2.bp.blogspot.com/-rc8TvDL-5Vs/TwUj74MnDJI/AAAAAAAABII/RcGxFGl0m0k/s640/BetaBlogHelp.png" width="640"/></a></div><br/>
Eclipse software developers might be interested to know that the majority of the documentation is actually produced directly from our properties files. (Yes, Butterflyzer is fully designed for Internationalization, but we don't have any translations for other languages yet.) That means that we only have to maintain this information in one place. Custom Java code reads the properties and converts them to Wiki text and the help system dynamically loads the property information for context sensitive help, including links to related documentation. From there, we use <a href="http://wiki.eclipse.org/Mylyn/WikiText">Mylyn Wiki Text</a> to generate the Eclipse Help system artifacts, <a href="http://butterflyzer.com/index.php/support/help">online documentation</a>, and even a <a href="http://butterflyzer.com/docs/butterflyzer.pdf">PDF manual</a>.<br/>
<br/>
<h5>Palette Menus</h5><br/>
<div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-diOoF1ymZRA/TwUj8Jta8tI/AAAAAAAABIQ/AsH3-SIzzkM/s1600/BetaBlogMenu.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="200" src="http://2.bp.blogspot.com/-diOoF1ymZRA/TwUj8Jta8tI/AAAAAAAABIQ/AsH3-SIzzkM/s200/BetaBlogMenu.png" width="140"/></a></div>One major goal was reducing the number of mouse-clicks needed to perform common tasks. I think that number and frequency of mouse-clicks have a large effect on end-user perception of ease of use and efficiency for an application. We needed to reduce the proliferation of toolbar buttons without causing a lot of mouse thrashing. Popup menus work fine for supporting changes in options, but they have a big usability issue. Every time you want to make a change, you have to reopen the menu. You could put options into a tool widget as many Apple applications do -- and we do that for more complex settings involving sliders -- but then users have to get rid of it when they're done. Instead, we created our own menu type that displays as long as the mouse is within the target menu area. This required replacing a lot of the normal Eclipse menu implementation.<br/>
<br/>
If you still think all of those buttons are a bit bewildering, you can find out what they all do <a href="http://butterflyzer.com/docs/html/Toolbar_Items.html">here</a>.<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<h5>Context Popups</h5><br/>
<div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-HIujlAMf4nY/TwaL2dUEzQI/AAAAAAAABJQ/KIjF-HJooNc/s1600/BetaBlogPopup.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="144" src="http://2.bp.blogspot.com/-HIujlAMf4nY/TwaL2dUEzQI/AAAAAAAABJQ/KIjF-HJooNc/s200/BetaBlogPopup.png" width="200"/></a></div>If a mouse-click takes time and mental effort, a right-click takes even more. There is just something that feels slow and uncomfortable about the whole interaction. I think that's a major issue with the Eclipse user experience actually, and one of the reasons that people like Web interfaces so much -- you see something, you click on it, it does something. Simple. At the same time, it's even worse to have to mouse up to a toolbar to perform a common task on an item. And the worst thing of all is a hover. There is nothing like waiting for a machine that can do billions of instructions per second to take half a second to decide that you want to do something!<br/>
<br/>
In Butterflyzer, we wanted to support a sense of flow when working with items. And we need commonality between the different kinds of views so that for example the options that you have when working with an item in the graph view are the same as when you mouse over the item in the browser. The solution was a context menu that appears automatically . It's still a bit experimental -- there are some usability and consistency aspects to fine-tune -- but I think it works pretty well. Currently you hold down that "CTRL" key in order to make the menu appear on any item -- having it appear in all cases made interaction a bit busy feeling.<br/>
<br/>
<h4>Windows</h4><br/>
Yes, Butterflyzer has always done Windows. Just not very well, frankly. Apologies to the legions (well, dozens anyway!) of Windows downloaders out there..we think this latest version will make you much happier.<br/>
<br/>
<div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-aNrCXm5u4V4/TwUj8ErNtII/AAAAAAAABIg/EpWWaTwnW-o/s1600/BetaBlogWindows.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="432" src="http://1.bp.blogspot.com/-aNrCXm5u4V4/TwUj8ErNtII/AAAAAAAABIg/EpWWaTwnW-o/s640/BetaBlogWindows.png" width="640"/></a></div><br/>
<h4>Visualization</h4><br/>
There have been significant strides in this critical area as well, including innovative approaches to taming, filtering, and cleaning up visualizations and related data. For more on all of that, check out <a href="http://butterflyzer.com/docs/html/Visualizing_the_Web.html">this section</a> in our comprehensive documentation.<br/>
<br/>
<h4>Internals</h4><br/>
The list of enhancements here is too long to get into, but we've put a lot of effort into creating a system that has the highest throughput and integration without compromising data integrity. It's been a challenge, and there have to be some gotchas lurking out there, but I'm really happy with how the system is handling the large volume of data that we can pull in. To see what I mean by "large volume of data", check out <a href="http://butterflyzer.com/docs/html/Browsing_and_Searching.html#Searching_the_Web">this page</a> for details on what you get from a single Butterflyzer search.<br/>
<br/>
<h4>Web Site</h4><br/>
The web site has come a long way from the alpha days, where it was deliberately minimal and home grown. Please <a href="http://butterflyzer.com/">visit</a>!<br/>
<br/>
<h4>New Videos</h4><br/>
If you want to see how this all fits together, check out the new videos:<br/>
<br/>
<br/>
<br/>
<br/>
<br/>
<h4>Let's Talk!</h4><br/>
As always, I'd love to hear from you. What are you using Butterflyzer for? What would you like to do with Butterflyzer?<br/>
<br/>
One thing I'd like to mention specifically for people already involved in developing software tools for the Semantic Web: Butterflyzer is an end-user product, but there are many other opportunities for employing core Butterflyzer technology. Perhap you have proprietary or specialized Web information sources that you'd like to integrate with the Butterflyzer Content Management and Visualization services. Perhaps you'd like to license or re-brand Butterflyzer or make use of key components. <a href="http://butterflyzer.com/index.php/support/contact">Contact us</a> and let's discus how you can use Butterflyzer to enhance your efforts.<br/>
<br/>
But what I really hope is that you're someone who just wants a good tool that you can use for web research, and that Butterflyzer scratches that itch for you. I'm reading the new biography of Steve Jobs so I can't help indulging in a little reality distortion of my own -- in the best sense of that phrase, naturally. You'd never know it with all of the talk, but we're still in very early days of semantic technologies, and we're nowhere near exploring the possibility surface, let alone exploiting it. When it comes to web exploration tools, what exists now for the average user is... well, it's a lot of dumb shit, with a nod to Steve. I believe that you need a rich, powerful application to make the most of the deep store of knowledge that is out there, but it needs to be as simple as it possibly can be -- in short, a tool that opens up the <b>Semantic Web for the Rest of Us</b>. And that's what Butterflyzer is all about.<br/>
<br/>
It's an exciting time to be building software tools! There are a lot of interesting things happening, and plenty of opportunities for all of us to make positive changes in how people around the world work and live. I've got some other really exciting news to share, but that will wait until next week...<div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/1706439134994847071-1699115306399075391?l=milesparker.blogspot.com" width="1"/></div>
<p><a href="http://feedads.g.doubleclick.net/~a/vr1inmMxMwrjSAxdVeDyBSxuSrU/0/da"><img border="0" ismap="true" src="http://feedads.g.doubleclick.net/~a/vr1inmMxMwrjSAxdVeDyBSxuSrU/0/di"/></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/vr1inmMxMwrjSAxdVeDyBSxuSrU/1/da"><img border="0" ismap="true" src="http://feedads.g.doubleclick.net/~a/vr1inmMxMwrjSAxdVeDyBSxuSrU/1/di"/></a></p><img height="1" src="http://feeds.feedburner.com/~r/MetaBeta/~4/qNRR0sr-DxA" width="1"/></div>
    </summary>
    <updated>2012-01-06T21:32:00Z</updated>
    <category scheme="http://www.blogger.com/atom/ns#" term="visualization"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="graphics"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="osx"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="mylyn"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="web"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="butterflyzer"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="business"/><feedburner:origLink xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://milesparker.blogspot.com/2012/01/butterflyzer-beta.html</feedburner:origLink>
    <author>
      <name>Miles Parker</name>
      <email>noreply@blogger.com</email>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-1706439134994847071</id>
      <category term="visualization"/>
      <category term="business"/>
      <category term="emf"/>
      <category term="java"/>
      <category term="mylyn"/>
      <category term="escape"/>
      <category term="web"/>
      <category term="biomed"/>
      <category term="dharma"/>
      <category term="politics"/>
      <category term="xtext"/>
      <category term="graphics"/>
      <category term="amf"/>
      <category term="eclipse"/>
      <category term="ascape"/>
      <category term="osx"/>
      <category term="abm"/>
      <category term="butterflyzer"/>
      <category term="xpand"/>
      <category term="science"/>
      <category term="life"/>
      <category term="amp"/>
      <category term="ip"/>
      <author>
        <name>Miles Parker</name>
        <email>noreply@blogger.com</email>
      </author>
      <link href="http://milesparker.blogspot.com/" rel="alternate" type="text/html"/>
      <link href="http://feeds.feedburner.com/MetaBeta" rel="self" type="application/rss+xml"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <subtitle>Emerging thoughts and ideas about science, software and a sacred world. Topics might include Agent-Based Modeling, Java, Eclipse, Model-Driven Software Development, Social Science. And may occasionally veers off into politics, buddhism, music, skiing...</subtitle>
      <title>meta beta</title>
      <updated>2012-01-18T05:13:51Z</updated>
    </source>
  </entry>

  <entry>
    <id>tag:blogger.com,1999:blog-518987099197087911.post-6666641053032190760</id>
    <link href="http://bewarethepenguin.blogspot.com/feeds/6666641053032190760/comments/default" rel="replies" title="Post Comments" type="application/atom+xml"/>
    <link href="http://www.blogger.com/comment.g?blogID=518987099197087911&amp;postID=6666641053032190760&amp;isPopup=true" rel="replies" title="0 Comments" type="text/html"/>
    <link href="http://www.blogger.com/feeds/518987099197087911/posts/default/6666641053032190760" rel="edit" type="application/atom+xml"/>
    <link href="http://www.blogger.com/feeds/518987099197087911/posts/default/6666641053032190760" rel="self" type="application/atom+xml"/>
    <link href="http://bewarethepenguin.blogspot.com/2012/01/ive-censored-following-in-protest-of.html" rel="alternate" title="" type="text/html"/>
    <title/>
    <content type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml"><p>I've censored the following, in protest of a bill that gives any corporation and the US government the power to censor the internet--a bill that could pass THIS WEEK. To see the uncensored text, and to stop internet censorship, visit: <a href="http://americancensorship.org/posts/33408/uncensor">http://americancensorship.org/posts/33408/uncensor</a></p><div class="blogger-post-footer"><img alt="" height="1" src="https://blogger.googleusercontent.com/tracker/518987099197087911-6666641053032190760?l=bewarethepenguin.blogspot.com" width="1"/></div></div>
    </content>
    <updated>2012-01-06T20:57:07Z</updated>
    <published>2012-01-06T20:55:00Z</published>
    <category scheme="http://www.blogger.com/atom/ns#" term="eclipse"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="software"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="web services"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="programming"/>
    <category scheme="http://www.blogger.com/atom/ns#" term="web applications"/>
    <author>
      <name>Eric Rizzo</name>
      <email>noreply@blogger.com</email>
      <uri>http://www.blogger.com/profile/08407727335073173803</uri>
    </author>
    <source>
      <id>tag:blogger.com,1999:blog-518987099197087911</id>
      <category term="travel"/>
      <category term="java"/>
      <category term="baby"/>
      <category term="software"/>
      <category term="greece"/>
      <category term="programming"/>
      <category term="family"/>
      <category term="mac"/>
      <category term="soa"/>
      <category term="corporate life"/>
      <category term="video"/>
      <category term="web applications"/>
      <category term="music"/>
      <category term="eclipse"/>
      <category term="julian"/>
      <category term="OmniPod"/>
      <category term="web services"/>
      <category term="photos"/>
      <category term="humor"/>
      <category term="screencast"/>
      <category term="diabetes"/>
      <author>
        <name>Eric Rizzo</name>
        <email>noreply@blogger.com</email>
        <uri>http://www.blogger.com/profile/08407727335073173803</uri>
      </author>
      <link href="http://bewarethepenguin.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml"/>
      <link href="http://www.blogger.com/feeds/518987099197087911/posts/default/-/eclipse" rel="self" type="application/atom+xml"/>
      <link href="http://bewarethepenguin.blogspot.com/search/label/eclipse" rel="alternate" type="text/html"/>
      <link href="http://pubsubhubbub.appspot.com/" rel="hub" type="text/html"/>
      <title>Beware The Penguin</title>
      <updated>2012-01-24T01:44:59Z</updated>
    </source>
  </entry>
</feed>

