<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-18490491</id><updated>2012-01-30T20:39:30.628+01:00</updated><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'/><title type='text'>Martin Lippert</title><subtitle type='html'>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: &lt;a href="mailto:lippert@acm.org"&gt;lippert@acm.org&lt;/a&gt;</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default?start-index=101&amp;max-results=100'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>176</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-18490491.post-6183603160398770633</id><published>2012-01-18T17:49:00.003+01:00</published><updated>2012-01-18T17:55:08.503+01:00</updated><title type='text'>Slides from Invited Talk at University of Warwick</title><content type='html'>Last week I was invited to give a talk at the department seminars at the Warwick University, UK. A former fellow student of mine is now professor for mathematics and computer science there and invited me to talk to students about my personal experiences doing professional software engineering for about more then ten years now. Here are the slides that I used:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/InvitedTalkUniversityWarwick-Jan2012.pdf"&gt;The daily software engineering life - How to be prepared (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Thanks again for inviting me!!! It was a pleasure to give the talk!!!&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-6183603160398770633?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/6183603160398770633/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=6183603160398770633' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6183603160398770633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6183603160398770633'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2012/01/slides-from-invited-talk-at-university.html' title='Slides from Invited Talk at University of Warwick'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-6245263748556457574</id><published>2012-01-09T18:41:00.000+01:00</published><updated>2012-01-09T18:41:43.514+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>open and transparent demo camp sponsoring</title><content type='html'>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.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;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. &lt;b&gt;Everybody&lt;/b&gt; is invited to join us sponsoring this event. All you (as a sponsor) need to do is: &lt;a href="http://wiki.eclipse.org/Eclipse_DemoCamps_Juno_2012/Hamburg"&gt;register yourself as a sponsor on the demo camp wiki page&lt;/a&gt; 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.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;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... :-)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Ah, one more thing: &lt;/b&gt;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.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-6245263748556457574?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/6245263748556457574/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=6245263748556457574' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6245263748556457574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6245263748556457574'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2012/01/open-and-transparent-demo-camp.html' title='open and transparent demo camp sponsoring'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-2772223945509848852</id><published>2012-01-09T18:12:00.003+01:00</published><updated>2012-01-09T18:16:56.975+01:00</updated><title type='text'>Invited Talk at the University of Warwick, UK</title><content type='html'>I am honored to give an invited talk at the University of Warwick this week:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.dcs.warwick.ac.uk/events/departmentseminars/"&gt;Department Seminars: The daily software engineering life - How to be prepared&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Looking very much forward to it!!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-2772223945509848852?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/2772223945509848852/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=2772223945509848852' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2772223945509848852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2772223945509848852'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2012/01/invited-talk-at-university-of-warwick.html' title='Invited Talk at the University of Warwick, UK'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-2845273892043762323</id><published>2011-11-11T16:20:00.004+01:00</published><updated>2011-11-11T16:33:52.903+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Virgo'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><title type='text'>Conference Slide Updates</title><content type='html'>I went to four conferences over the past weeks, talking about various topics around the Spring and Eclipse tooling universe. All the  talks included a number of live demos, so just looking at the slides doesn't give you the full experience and content of the talk. But anyway, I uploaded the slides for those who want to take a look:&lt;br /&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;SpringOne 2011: Spring Tooling Update - New and Noteworthy (&lt;a href="http://www.martinlippert.org/events/SpringOne2011-SpringToolingUpdate.pdf"&gt;pdf&lt;/a&gt;, &lt;a href="http://www.slideshare.net/martinlippert/spring-tooling-update-new-noteworty-at-springone-2011"&gt;slideshare&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;JAX London 2011: WaveMaker - Spring Roo - SpringSource Tool Suite - Choosing the right tool for the right job (&lt;a href="http://www.martinlippert.org/events/JAXLondon2011-STS-Roo-Wavemaker.pdf"&gt;pdf&lt;/a&gt;, &lt;a href="http://www.slideshare.net/martinlippert/wavemaker-spring-roo-springsource-tool-suite-choosing-the-right-tool-for-the-right-job-10120313"&gt;slideshare&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;EclipseCon Europe 2011: All about Virgo (&lt;a href="http://www.martinlippert.org/events/EclipseConEurope2011-AllAboutVirgo.pdf"&gt;pdf&lt;/a&gt;, &lt;a href="http://www.slideshare.net/cgfrost/eclipsecon-europe-2011-virgo-30"&gt;slideshare&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;WJAX 2011:  WaveMaker - Spring Roo - SpringSource Tool Suite - Choosing the right tool for the right job (&lt;a href="http://www.martinlippert.org/events/WJAX2011-STS-Roo-Wavemaker.pdf"&gt;pdf&lt;/a&gt;, &lt;a href="http://www.slideshare.net/martinlippert/wavemaker-spring-roo-springsource-tool-suite-choosing-the-right-tool-for-the-right-job-10120313"&gt;slideshare&lt;/a&gt;)&lt;/li&gt;&lt;/ul&gt;Enjoy!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-2845273892043762323?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/2845273892043762323/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=2845273892043762323' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2845273892043762323'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2845273892043762323'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/11/conference-slide-updates.html' title='Conference Slide Updates'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-1727923616561691496</id><published>2011-09-15T17:39:00.002+02:00</published><updated>2011-09-15T18:12:26.521+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><title type='text'>Book on Agile Development Practices using Scrum</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/-bAqZF6tIZAY/TnIjyLyxA1I/AAAAAAAAAKc/vU-P1TWUdlk/s1600/IMG_0459.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 300px; height: 400px;" src="http://2.bp.blogspot.com/-bAqZF6tIZAY/TnIjyLyxA1I/AAAAAAAAAKc/vU-P1TWUdlk/s400/IMG_0459.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5652619827369542482" /&gt;&lt;/a&gt;&lt;br /&gt;Quite some time ago I was invited to contribute a book chapter to a new German book on development practices and techniques for Scrum, edited by Roman Pichler and Stefan Roock. What an honor to join them on this book project, so I wrote a chapter on agile software development using the automated refactorings that modern IDEs provide. Meanwhile the book is already out since a few month and contains a collection of really cool chapters from all kind of different authors from the agile universe. Take a look if you are interested in agile software development and willing to read a book in German... :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-1727923616561691496?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/1727923616561691496/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=1727923616561691496' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1727923616561691496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1727923616561691496'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/09/book-on-agile-development-practices.html' title='Book on Agile Development Practices using Scrum'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-bAqZF6tIZAY/TnIjyLyxA1I/AAAAAAAAAKc/vU-P1TWUdlk/s72-c/IMG_0459.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-8516114735717216336</id><published>2011-06-27T17:37:00.003+02:00</published><updated>2011-06-27T17:46:22.306+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Podcast'/><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='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Video podcast from the OSGi Users Forum UK meeting on OSGi Tooling</title><content type='html'>Last week I went to the OSGi Users Forum UK meeting in London to join a panel on OSGi Development Tooling. I was invited as one of the people working on the Virgo IDE, the Eclipse-based developer tooling for the Virgo runtime at Eclipse (which we recently contributed from vmware to Eclipse and made the first milestone build available to the public).&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The idea of the panel was to tell the panelists (all somewhat related to OSGi tooling) what you wanna get from those tools, what you are missing and what you would like to have in the future. Obviously we touched the old discussion whether manifest-first or manifest-generation is the better or more natural way of doing OSGi development, but this was not the only topic.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now there is a video podcast available online:&lt;div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://skillsmatter.com/podcast/java-jee/osgi-development-tooling-panel-2320/js-2154"&gt;OSGi Users' Forum UK: OSGi Development Tooling Panel&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;It was fun having a part of the panel sitting in front of the audience in person while the other part of the panel joined the session via Skype video. Thanks again to the organizers for making this panel happen!!! And enjoy the video!!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-8516114735717216336?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/8516114735717216336/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=8516114735717216336' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8516114735717216336'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8516114735717216336'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/06/video-podcast-from-osgi-users-forum-uk.html' title='Video podcast from the OSGi Users Forum UK meeting on OSGi Tooling'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-312109812111841600</id><published>2011-06-17T22:44:00.002+02:00</published><updated>2011-06-17T23:08:28.257+02:00</updated><title type='text'>Interview with InfoQ</title><content type='html'>&lt;div&gt;I gave an interview for InfoQ talking about the latest release of the SpringSource Tool Suite, upcoming features and a little bit about things behind the scenes, like the distributed agile development we are doing here for building STS. You can read the full interview here:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.infoq.com/news/2011/06/martin-lippert-sstoolsuite-2-6"&gt;InfoQ: Martin Lippert on the newly released SpringSource Tool Suite 2.6&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Enjoy!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-312109812111841600?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/312109812111841600/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=312109812111841600' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/312109812111841600'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/312109812111841600'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/06/interview-with-infoq.html' title='Interview with InfoQ'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-4198965081426631996</id><published>2011-06-01T16:10:00.003+02:00</published><updated>2011-06-01T16:17:11.404+02:00</updated><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='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>OSGi Development Tooling Panel at the OSGi Users Forum UK</title><content type='html'>I will be at the &lt;a href="http://uk.osgiusers.org/Main/HomePage"&gt;OSGi Users Forum UK&lt;/a&gt; in London on June 23rd to participate in a &lt;a href="http://uk.osgiusers.org/Main/MeetingsandEventsCalendar"&gt;panel on OSGi Tooling Development&lt;/a&gt; as a committer for the Virgo tooling, together with Neil Bartlett (BndTools), Peter Kriens (Bnd / OSGi Director of Technology), Simon Maple (RAD / IBM), Stuart McCulloch (Maven / Sonatype) and Kaloyan Raev (Libra / SAP), who will join us via Skype Video. So join us in London to talk about latest OSGi tooling efforts and discuss what is needed for the future.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-4198965081426631996?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/4198965081426631996/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=4198965081426631996' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4198965081426631996'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4198965081426631996'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/06/osgi-development-tooling-panel-at-osgi.html' title='OSGi Development Tooling Panel at the OSGi Users Forum UK'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-4620588357375832584</id><published>2011-06-01T15:37:00.003+02:00</published><updated>2011-06-01T15:45:34.516+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><title type='text'>"Spring Tooling – What’s Cooking" - Article in German Eclipse Magazin</title><content type='html'>&lt;div&gt;Based on my short "New and Noteworthy" kind of talk at the JAX conference I wrote an article for the German &lt;a href="http://it-republik.de/jaxenter/eclipse-magazin-ausgaben/Eclipse-meets-SPRING-000450.html"&gt;Eclipse Magazin&lt;/a&gt; about what is cooking in the Spring tooling world. And the article made it for the top cover story:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://4.bp.blogspot.com/-C6I5Lx_VnFI/TeZBIijh4iI/AAAAAAAAAIg/wJkZL2HMtK0/s1600/IMG_0326.JPG" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 300px; height: 400px;" src="http://4.bp.blogspot.com/-C6I5Lx_VnFI/TeZBIijh4iI/AAAAAAAAAIg/wJkZL2HMtK0/s400/IMG_0326.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5613245600534487586" /&gt;&lt;/a&gt;&lt;div&gt;So if you wanna know more about the latest news from the Spring tooling world, take a look at this. Aside of my quick walkthrough, Eberhard Wolff added a nice feature about the Cloud Foundry PaaS, which provides a great introduction to this platform. Enjoy!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-4620588357375832584?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/4620588357375832584/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=4620588357375832584' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4620588357375832584'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4620588357375832584'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/06/spring-tooling-whats-cooking-article-in.html' title='&quot;Spring Tooling – What’s Cooking&quot; - Article in German Eclipse Magazin'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-C6I5Lx_VnFI/TeZBIijh4iI/AAAAAAAAAIg/wJkZL2HMtK0/s72-c/IMG_0326.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-4209943854269161680</id><published>2011-05-06T22:56:00.004+02:00</published><updated>2011-06-01T15:37:29.131+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>My personal highlights from JAX 2011</title><content type='html'>&lt;div&gt;I spent the past few days visiting the JAX 2011 conference in Mainz. And again, like the past years, it was great to meet a lot of interesting and nice people there. Aside of that, I wrote up some short notes about &lt;a href="http://it-republik.de/jaxenter/artikel/Karate-Kata-Spring-3.1-JavaScript-und-HTML5-%28aka-die-Zukunft-des-Webs%29-3788.html"&gt;my personal highlights of JAX 2011&lt;/a&gt; for jaxenter (in German), so if you are interested, take a look. I especially recommend to watch the Kata video with Arne Roock demoing a real Karate Kata. Enjoy!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-4209943854269161680?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/4209943854269161680/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=4209943854269161680' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4209943854269161680'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4209943854269161680'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/05/my-personal-highlights-from-jax-2011.html' title='My personal highlights from JAX 2011'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-5638397769548727861</id><published>2011-05-04T09:20:00.003+02:00</published><updated>2011-05-04T09:27:59.442+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides from Spring Tooing Talk at JAX 2011</title><content type='html'>Yesterday I gave a short talk at &lt;a href="http://jax.de/2011/"&gt;JAX 2011&lt;/a&gt; called "Spring Tooling - What's Cooking". During the talk I gave an overview of the Spring tooling landscape, demoed some nice features of Spring IDE and the SpringSource Tool Suite and deployed a small Spring app into the hosted &lt;a href="http://www.cloudfoundry.com/"&gt;cloudfoundy.com&lt;/a&gt; PaaS as well as into a local CloudFoundry cloud running exclusively on my notebook. Was fun doing that all in 30min... :-)&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here are the slides from that talk:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/JAX2011-SpringToolingWhatsCooking.pdf"&gt;Spring Tooling - What's Cooking&lt;/a&gt; (pdf)&lt;/li&gt;&lt;/ul&gt;The slides also contain the part that I didn't talked about (the team behind Spring IDE and STS, challenges of distributed agile development and our release cycles). So if you missed that from the talk, take a look at those slides.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-5638397769548727861?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/5638397769548727861/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=5638397769548727861' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5638397769548727861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5638397769548727861'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/05/slides-from-spring-tooing-talk-at-jax.html' title='Slides from Spring Tooing Talk at JAX 2011'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-4831336410674396125</id><published>2011-04-15T18:17:00.002+02:00</published><updated>2011-04-15T18:20:33.003+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>Slides from Nordic Coding Talk</title><content type='html'>Just a few minutes ago I finished my talk at the &lt;a href="http://www.diwish.de/index.php?id=termindetails&amp;amp;no_cache=1&amp;amp;view=single&amp;amp;event_id=498&amp;amp;cHash=ef04de10b9"&gt;Nordic Coding Event&lt;/a&gt; in Kiel about my lessons learned using OSGi. Here are the slides, if you wanna take a look:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/NordicCoding2011-OSGiDieBittereMedizin.pdf"&gt;OSGi kurzgefasst - und warum gute Medizin bitter sein kann&lt;/a&gt; (pdf, in German)&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Enjoy!&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-4831336410674396125?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/4831336410674396125/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=4831336410674396125' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4831336410674396125'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4831336410674396125'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/04/slides-from-nordic-coding-talk.html' title='Slides from Nordic Coding Talk'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-5513096471048736096</id><published>2011-04-08T10:45:00.002+02:00</published><updated>2011-04-08T10:50:48.022+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides from Berlin Expert Days 2011</title><content type='html'>Yesterday I was invited to the &lt;a href="https://bed-con.org/"&gt;Berlin Expert Days 2011&lt;/a&gt; to give two talks, one on my lessons learned from using and coaching agile development methods and techniques and one about my OSGi experiences. Here are the slides now:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.com/events/BED2011-10AgileYearsLater.pdf"&gt;10 Agile Years Later - Lessons Learned&lt;/a&gt; (pdf, in German)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.com/events/BED2011-OSGiBestPractices.pdf"&gt;OSGi Best and Worst Practices&lt;/a&gt; (pdf)&lt;/li&gt;&lt;/ul&gt;Thanks again for inviting me to this nice event!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-5513096471048736096?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/5513096471048736096/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=5513096471048736096' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5513096471048736096'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5513096471048736096'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/04/slides-from-berlin-expert-days-2011.html' title='Slides from Berlin Expert Days 2011'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-6251038316191716791</id><published>2011-03-25T12:08:00.004+01:00</published><updated>2011-03-25T12:21:33.770+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Talk at Nordic Coding - and why OSGi is sometimes a bitter pill</title><content type='html'>I am happy to be invited to speak at &lt;a href="http://www.diwish.de/index.php?id=termindetails&amp;amp;no_cache=1&amp;amp;view=single&amp;amp;event_id=498&amp;amp;cHash=ef04de10b9"&gt;the upcoming Nordic Coding Event in Kiel at April 15th&lt;/a&gt; about OSGi. The title of the talk is: "A quick tour through OSGi - and why it is sometimes a bitter pill". So after giving a short introduction about the basic principles of OSGi and explaining why its often indispensable medicine for your project, I will talk about my experiences using OSGi for many years now. And I will talk about why that medicine could be a necessary, but quite bitter pill for you and your project.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-6251038316191716791?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/6251038316191716791/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=6251038316191716791' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6251038316191716791'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6251038316191716791'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/03/talk-at-nordic-coding-and-why-osgi-is.html' title='Talk at Nordic Coding - and why OSGi is sometimes a bitter pill'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-9036309215134474507</id><published>2011-03-16T12:28:00.002+01:00</published><updated>2011-03-16T12:31:40.890+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>Berlin Expert Days</title><content type='html'>I will be speaking at the &lt;a href="https://bed-con.org/"&gt;Berlin Expert Days&lt;/a&gt; about my experiences from using agile methods over the past 10 years as well as some lessons learned from using OSGi for different kind of settings and situations. Looking forward to meet you at the event on April 7th in Berlin! :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-9036309215134474507?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/9036309215134474507/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=9036309215134474507' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/9036309215134474507'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/9036309215134474507'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/03/berlin-expert-days.html' title='Berlin Expert Days'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-662494217604317954</id><published>2011-02-01T13:37:00.002+01:00</published><updated>2011-02-01T13:45:46.071+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Upcoming Event: JAX 2011</title><content type='html'>I am pretty happy to participate in the upcoming &lt;a href="http://www.jax.de/"&gt;JAX 2011 conference&lt;/a&gt; in Mainz, Germany as part of the &lt;a href="http://jax.de/2011/sessions/?tid=1878"&gt;Eclipse Tools Day&lt;/a&gt; (organized by Lars Vogel). In my talk &lt;a href="http://jax.de/2011/sessions/?tid=1878#session-17825"&gt;"Spring Tooling - What's cooking"&lt;/a&gt; I will talk about the stuff I am doing in my job all day: building Eclipse-based tooling for the Spring development platform. Aside of showing some of the nice features we built into this tooling (like direct deployment to different PaaS clouds and nice improvements for annotation-based spring programming) I will also take a look under the hood. I will take a look at the challenges and problems building this tooling on top of the Eclipse platform and how we adressed them.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;See you at JAX 2011 in Mainz!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-662494217604317954?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/662494217604317954/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=662494217604317954' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/662494217604317954'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/662494217604317954'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/02/upcoming-event-jax-2011.html' title='Upcoming Event: JAX 2011'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-2270166983820527140</id><published>2011-01-07T15:24:00.003+01:00</published><updated>2011-01-07T15:32:09.815+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>Slides from WJAX 2010: Agile Practices in the Real World</title><content type='html'>Last November I gave a talk at the WJAX conference in Munich together with Matthias Lübken about our experiences using agile methods in difficult settings. We went trough our observations adapting or replacing typical agile practices with different ones when necessary and talked about what worked and what didn't. The slides are in a lightweight style, so the real content of our talk was spoken only. Nevertheless you can find the slideware we used here:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.com/events/WJAX2010-AgileTechnikenUngeschminkt.pdf"&gt;Agile Techniken ungeschminkt (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Enjoy!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-2270166983820527140?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/2270166983820527140/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=2270166983820527140' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2270166983820527140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2270166983820527140'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/01/slides-from-wjax-2010-agile-practices.html' title='Slides from WJAX 2010: Agile Practices in the Real World'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-3517236837559191590</id><published>2011-01-07T13:53:00.004+01:00</published><updated>2011-01-07T15:32:18.651+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Upcoming Event: Eclipse Summit India 2011</title><content type='html'>I've been invited to speak at the upcoming Eclipse Summit India at May 26th + 27th in Bangelore, India. The current plan is to talk about:&lt;div&gt;&lt;pre wrap=""&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="white-space: normal;"&gt;&lt;span class="Apple-style-span"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;ul&gt;&lt;li&gt;OSGi Best and Worst Practices&lt;/li&gt;&lt;li&gt;Module Systems and Architectures&lt;/li&gt;&lt;li&gt;Bytecode Weaving in OSGi&lt;/li&gt;&lt;li&gt;Classloading and Type Visibility in OSGi&lt;/li&gt;&lt;/ul&gt;See you in Bangalore!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-3517236837559191590?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/3517236837559191590/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=3517236837559191590' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3517236837559191590'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3517236837559191590'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2011/01/upcoming-event-eclipse-summit-india.html' title='Upcoming Event: Eclipse Summit India 2011'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-3766493396891277120</id><published>2010-10-15T14:39:00.002+02:00</published><updated>2010-10-15T14:45:44.739+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Spring Extension Factory now on Github</title><content type='html'>Two years ago I wrote a tiny little piece of software that lets you combine Spring Dynamic Modules and the Equinox Extension Registry in an easy way. Now I found the time to put this &lt;a href="http://github.com/martinlippert/spring-extension-factory"&gt;SpringExtensionFactory on Github&lt;/a&gt;. So if you ever wanted to use Spring Dynamic Modules to inject dependencies into your RCP view and editors - take a look, its quite simple to use... :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-3766493396891277120?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/3766493396891277120/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=3766493396891277120' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3766493396891277120'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3766493396891277120'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2010/10/spring-extension-factory-now-on-github.html' title='Spring Extension Factory now on Github'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-3939205862844502540</id><published>2010-09-29T11:53:00.001+02:00</published><updated>2010-09-29T11:55:27.042+02:00</updated><title type='text'>Two things...</title><content type='html'>&lt;div&gt;&lt;div&gt;The end of September is approaching fast, so its time for me to announce two things...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;First the sad part of the story: I will leave it-agile at the end of this month. The reason behind this is basically that I am sick of traveling. Don't misunderstand me, I always tried to make my traveling as comfortable as possible (and it was quite comfortable). But I wish to spent more time being in my home town, being with the family, with my two wonderful kids.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I founded it-agile about six years ago, together with great colleagues and friends to start something new, something great about agile software development, something with true employee participation, where transparency becomes reality, something open for cooperations and with honesty to all our customers. We wanted to build a company that makes a real difference, that doesn't promise everything just to get the contract, that isn't focussed and dogmatic on some religion, a consulting company that doesn't know it better just because we are consultants.&lt;/div&gt;&lt;div&gt;And today, looking back over the past six years, I am so proud that we got it all to work. All wishes became true - and we built a really great company. I learned a lot over the past years and I have to thank all of my colleagues within it-agile and within the projects I was involved in for this absolutely awesome and unforgettable time.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What comes next? I got the chance to join the people at the SpringSource devision of VMware to become part of the STS (SpringSource Tool Suite) team. These are the guys behind the STS, AJDT and the Eclipse Groovy tooling and I am looking forward to work with this great team on amazing developer tooling - and I think (and hope) that I will have some more time to work on some open-source projects, including Equinox Weaving. And last but not least, I will mostly work in Hamburg, my lovely home town... :-)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;See you at WJAX in Munich this year!&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-3939205862844502540?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/3939205862844502540/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=3939205862844502540' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3939205862844502540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3939205862844502540'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2010/09/two-things.html' title='Two things...'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-7748258531386537451</id><published>2010-09-27T12:29:00.005+02:00</published><updated>2010-09-27T13:36:10.411+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Podcast'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><title type='text'>SE-Radio Episode with Kent Beck is Online</title><content type='html'>The latest episode on &lt;a href="http://www.se-radio.net/"&gt;Software Engineering Radio&lt;/a&gt; went online yesterday and covers an interview I did with &lt;a href="http://www.se-radio.net/2010/09/episode-167-the-history-of-junit-and-the-future-of-testing-with-kent-beck/"&gt;Kent Beck on the history of JUnit and the future of testing and software engineering&lt;/a&gt;. I am pretty excited that we got Kent on the show and have him talk about these topics. He is definitely one of the most influential guys in software engineering these days - father of extreme programming, inventor of unit testing, co-creator of JUnit, co-creator of the agile movement, created test-driven development - to name just a few things he created/invented that changed the daily life of many software developers across the planet. I don't know why it took more than 160 episodes to have him on the show, but I think this was not the last episode on SE-Radio talking with Kent Beck... :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-7748258531386537451?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/7748258531386537451/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=7748258531386537451' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7748258531386537451'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7748258531386537451'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2010/09/se-radio-episode-with-kent-beck-is.html' title='SE-Radio Episode with Kent Beck is Online'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-2385051467587361903</id><published>2010-08-28T12:21:00.007+02:00</published><updated>2010-08-28T21:53:10.012+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Podcast'/><category scheme='http://www.blogger.com/atom/ns#' term='Refactoring'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><title type='text'>Some More Thoughts on Software Architectures</title><content type='html'>&lt;div&gt;Some month ago I wrote a &lt;a href="http://martinlippert.blogspot.com/2009/12/some-thoughts-on-cathedrals-and.html"&gt;blog post about some of my thoughts on software architecture&lt;/a&gt; and why I think the metaphor of a cathedral is no longer very useful for todays software development. I don't mean that you don't need an architecture when you do agile software development. A good software architecture is absolutely necessary to survive. It is an essential part of each system.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Nevertheless agile software development is based on the idea of embracing change. "Inspect and Adapt" is the secret of success in agile development. The structure of your software emerges over time when you constantly refactor your code. But is this also true for the architecture of the system? Does this architecture emerge over time as well? Or is it adaptable when life changes?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I discussed this a lot over the past years with various people. We typically found two basic contrasting (for this posting simplified) opinions:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Opinion 1: The architecture includes the most important technical decisions. It is hard to change those things later on. Therefore the architecture should be defined at the beginning of a project and should experience only minor changes. Major changes in the architecture are considered a bad thing and should be avoided.&lt;/li&gt;&lt;li&gt;Opinion 2: The architecture of a system is an artifact that emerges over time. It reacts to change by embracing it. Changing the architecture of a system is considered a good thing and part may be part of your daily live.&lt;/li&gt;&lt;/ul&gt;While I was always an opinion-2-guy, I always had to admit that some parts of the architecture of a system are hard to change. So changing a large rich-client app to a web-based app might be expensive. The same might be true for changing the implementation language or refactoring a classical three-tier app into a Quasar-like structure.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then I recorded SE-Radio podcast episode 166 with John Wiegand and listened to him talking about what he calls "Living Architectures":&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.se-radio.net/2010/08/episode-166-living-architectures-with-john-wiegand/"&gt;SE-Radio Episode 166: Living Architectures with John Wiegand&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;During the episode he explains the basic architectural decisions behind the Eclipse platform and the Jazz project at IBM. Both architectures are surprisingly simple. They define the general idea of how parts of the system are built and interact. And both don't contain a single word about those things I mentioned above. Even the language is an implementation detail.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The Jazz system is, for example, built around the idea of the web. RESTful services define the heart of the structure. It doesn't matter how those services are implemented, which frameworks they use or how they are internally structured. The whole system might consists out of various languages, various runtime platforms, various infrastructure settings. Even object-orientation becomes an implementation detail of individual services. All things I often thought of being part of the general architecture. But now I know that I was terribly wrong about this.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Of course there are things that are expensive to change. Reimplementing a huge system with a different language might cost you a lot. But the question is: Why do you need to reimplement everything if you switch to another implementation language? The RESTful style, for example, doesn't require such a tight language binding. Its just an example, but it made me think. And it convinced me that "the definition of architecture as the set of things that are hard or expensive to change" leads into the wrong direction.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Architectures are living things. Don't treat them as dead artifacts. And don't be afraid of change. Its a good thing. It reflects your learning. It helps you build better systems.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-2385051467587361903?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/2385051467587361903/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=2385051467587361903' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2385051467587361903'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2385051467587361903'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2010/08/some-more-thoughts-on-software.html' title='Some More Thoughts on Software Architectures'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-5896047694307829518</id><published>2010-07-14T09:15:00.003+02:00</published><updated>2010-07-14T09:26:57.624+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>Slides from Java-Forum-Stuttgart 2010</title><content type='html'>I gave a talk about some lessons learned when using OSGi in various settings at this years Java-Forum-Stuttgart. It's pretty much the talk I gave together with Chris Anisczcyk, Jeff McAffer and Paul VanderLei at this years EclipseCon. Here are the slides we used:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.com/events/JFS2010-OSGiLessonsLearned.pdf"&gt;OSGi Lessons Learned: Best and Worst Practices (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Enjoy!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-5896047694307829518?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/5896047694307829518/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=5896047694307829518' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5896047694307829518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5896047694307829518'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2010/07/slides-from-java-forum-stuttgart-2010.html' title='Slides from Java-Forum-Stuttgart 2010'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-7425362769006996132</id><published>2010-05-16T20:33:00.004+02:00</published><updated>2010-05-16T21:09:45.257+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Eclipse Demo Camp in Hamburg on July 9th - Don't miss it!!!</title><content type='html'>The upcoming Eclipse Helios Demp Camp in Hamburg on July 9th will be really amazing. Peter and myself are working on a great program for this event and we already have good ideas and suggestions. Apart from that we have organized a new location. The demo camp will take place in the Magazin-Kino in Hamburg, a cinema just for us for this evening. As you can imagine, popcorn, ice-cream, and soft-drinks will be ready for you as well as some more surprises! So don't miss it!!! Join us on July 9th, register here: &lt;a href="http://wiki.eclipse.org/Eclipse_DemoCamps_Helios_2010/Hamburg"&gt;Helios Demo Camp Hamburg Wiki Page&lt;/a&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;See you at the cinema!!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;P.S.: There is no soccer game (FIFA World Cup) that evening. So there is no reason not to come... :-)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-7425362769006996132?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/7425362769006996132/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=7425362769006996132' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7425362769006996132'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7425362769006996132'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2010/05/eclipse-demo-camp-in-hamburg-on-july.html' title='Eclipse Demo Camp in Hamburg on July 9th - Don&apos;t miss it!!!'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-1191493495646477184</id><published>2010-05-08T21:26:00.003+02:00</published><updated>2010-05-08T21:34:08.086+02:00</updated><title type='text'>Slides from JAX-2010</title><content type='html'>I gave a bunch of talks together with colleagues at the JAX 2010 conference last week in Mainz, Germany. Aside of the fact that I enjoyed the conference a lot this year (again), it was fun presenting there. For those of you interested in the slideware:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/JAX2010-AgilerProjektleiter.pdf"&gt;Was wird aus dem Projektleiter in agilen Projekten (in german, together with Henning Wolf)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/JAX2010-UnternehmenOpenSource.pdf"&gt;Was können Unternehmen von Open-Source lernen (in german, together with Bernd Kolb)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/JAX2010-ModulsystemeArchitekturen.pdf"&gt;Wie Modulsysteme Architekturen beeinflussen (mostly english slides)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Sorry for this bulk of German titles. The slides are mostly Presentation Zen style, so not many German words here. Hope you enjoy it anyway! :-)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-1191493495646477184?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/1191493495646477184/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=1191493495646477184' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1191493495646477184'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1191493495646477184'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2010/05/slides-from-jax-2010.html' title='Slides from JAX-2010'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-3180430932299788711</id><published>2010-04-22T16:30:00.005+02:00</published><updated>2010-04-22T16:48:49.624+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Sessionfire'/><title type='text'>Sessionfire Continues to Innovate</title><content type='html'>A few days ago the team at &lt;a href="http://www.sessionfire.com/"&gt;Sessionfire&lt;/a&gt; published its second beta build. Interestingly this new build does not add these basic features you might expect from a presentation tool like direct graphical editing or so. In contrast to that it innovates. Its adds real new stuff to the world of presentations. Things that helps you to improve your presentations, to visualize things for your audience. The big new feature in this build is "Non-Linear Presentations". You no longer need to put your slides in a linear sequence - they aren't anyway. Many of my talks contain different sections and details, sometimes I decide to skip a section, sometimes I just want to show the topics while speaking. This is now directly supported in Sessionfire, giving you the option to create sections and visualize those sections for your audience. You can go into the details on demand or just jump from section to section at your fingertip. Watch the teaser case at YouTube, it shows non-linear presentations among the other new features in a quick overview:&lt;div&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/JsaK9Q1rIgQ&amp;amp;hl=de_DE&amp;amp;fs=1&amp;amp;rel=0"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/JsaK9Q1rIgQ&amp;amp;hl=de_DE&amp;amp;fs=1&amp;amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;The current Sessionfire beta builds are free. You can download your copy for Windows XP/Vista/7, Mac OS X or Linux from &lt;a href="http://www.sessionfire.com/"&gt;http://www.sessionfire.com/&lt;/a&gt;. Just make sure you have the latest Java6 installed... :-)&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-3180430932299788711?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/3180430932299788711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=3180430932299788711' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3180430932299788711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3180430932299788711'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2010/04/sessionfire-continues-to-innovate.html' title='Sessionfire Continues to Innovate'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-426152160884622565</id><published>2010-03-25T22:54:00.002+01:00</published><updated>2010-03-25T22:57:54.109+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>OSGi Best and Worst Practices at EclipseCon 2010</title><content type='html'>Together with Jeff McAffer, Chris Anisczcyk and Paul VanderLei I gave a talk on OSGi Best and Worst Practices here at Eclipse 2010. Here are the slides:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/EclipseCon2010-OSGiBestAndWorstPractices.pdf"&gt;OSGi Best and Worst Practices (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Enjoy!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-426152160884622565?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/426152160884622565/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=426152160884622565' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/426152160884622565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/426152160884622565'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2010/03/osgi-best-and-worst-practices-at.html' title='OSGi Best and Worst Practices at EclipseCon 2010'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-822002658775836927</id><published>2010-03-12T13:38:00.002+01:00</published><updated>2010-03-12T13:46:50.631+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides on OSGi Best and Worst Practices from Java-User-Group-Meeting in Karlsruhe</title><content type='html'>I gave a talk at the &lt;a href="http://jug-ka.de/"&gt;Java User Group Karlsruhe&lt;/a&gt; last week on best and worst practices using OSGi for building business applications (thanks to David for inviting me). You can get the slides from the user group or directly here:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/JUG-KA-2010-OSGiBestPractices.pdf"&gt;OSGi Best and Worst Practices (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Thanks again for joining! The room was full of people and I especially enjoyed all the great questions and discussions during and after the talk. Thanks again, it was a pleasure to be a guest at the event!&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-822002658775836927?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/822002658775836927/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=822002658775836927' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/822002658775836927'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/822002658775836927'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2010/03/slides-on-osgi-best-and-worst-practices.html' title='Slides on OSGi Best and Worst Practices from Java-User-Group-Meeting in Karlsruhe'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-3121682628441050097</id><published>2010-02-12T22:11:00.002+01:00</published><updated>2010-02-12T22:14:01.689+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides on OSGi Lessons Learned from OOP-2010 Conference</title><content type='html'>&lt;div&gt;A few weeks ago I gave a talk at the OOP-2010 conference in Munich about the lessons I learned from building business apps on top of OSGi during the past five years. Finally I put the slides online:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/OOP2010-OSGiLessonsLearned.pdf"&gt;OSGi - Lessons Learned (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Sorry for the delay!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-3121682628441050097?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/3121682628441050097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=3121682628441050097' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3121682628441050097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3121682628441050097'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2010/02/slides-on-osgi-lessons-learned-from-oop.html' title='Slides on OSGi Lessons Learned from OOP-2010 Conference'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-1587641230190830185</id><published>2010-01-30T20:39:00.004+01:00</published><updated>2010-01-30T21:02:49.856+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Podcast'/><title type='text'>A Big Thank You for the Feedback</title><content type='html'>Feedback is an essential force and of priceless value for many things you do in your daily life. It is one of the central elements of agile software development and it is absolutely priceless to get honest and constructive feedback for the work you do. Sometimes its hard to get this feedback, sometimes not. Some of you might know that I am part of the podcast team at &lt;a href="http://www.se-radio.net/"&gt;Software Engineering Radio&lt;/a&gt;, a podcast for professional software developers that publishes a new episode every 14 days under a creative commons license. I don't do as much episodes as I wish, but regularly people write emails to the team saying "thank you for the great work" and telling us that they really like what we do. Now its time for me to say a big &lt;b&gt;THANK YOU&lt;/b&gt; back to those guys. Especially &lt;a href="http://technikhil.wordpress.com/2010/01/27/a-podcast-review-software-engineering-radio-2/"&gt;this blog entry&lt;/a&gt; that I read today is really nice (many many thanks) and gives a lot of motivation!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thank you!!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-1587641230190830185?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/1587641230190830185/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=1587641230190830185' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1587641230190830185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1587641230190830185'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2010/01/big-thank-you-for-feedback.html' title='A Big Thank You for the Feedback'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-1140065734862493105</id><published>2010-01-12T16:39:00.003+01:00</published><updated>2010-01-12T18:19:00.118+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Sessionfire'/><title type='text'>Sessionfire is available as public beta</title><content type='html'>Some of you might know, &lt;a href="http://luebken.com/"&gt;Matthias&lt;/a&gt; and myself are working on a new kind of presentation tool, called &lt;a href="http://www.sessionfire.com/"&gt;Sessionfire&lt;/a&gt;. After a period of private alpha testing we are pretty happy that it has left this period just a few days ago and started its public beta stage. So everybody is invited to grab a copy of it and give it a try. Its not open source (maybe it will be some day in the future), but its free to download and free to use (as well as the next beta builds).&lt;br /&gt;&lt;br /&gt;The current beta version has a quite limited set of features, so you don't get a replacement for your favorite presentation tool right away. We start with something small, far far away from being feature complete, move forward in small steps while always trying to do something useful in a gorgeous way. So you won't be able to create your presentation completely with Sessionfire at the moment, for example. But you can run your show with Sessionfire, using images, animations, timers, three-dimentional optics, reflections, visual fast-forward and -backward, different 3D-layoutings and some more stuff.&lt;br /&gt;&lt;br /&gt;Try it! - Enjoy it!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-1140065734862493105?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/1140065734862493105/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=1140065734862493105' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1140065734862493105'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1140065734862493105'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2010/01/sessionfire-is-available-as-public-beta.html' title='Sessionfire is available as public beta'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-923288710762486635</id><published>2009-12-11T10:39:00.009+01:00</published><updated>2010-04-10T22:14:18.822+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><title type='text'>Some Thoughts on Cathedrals and Software Architectures</title><content type='html'>&lt;div style="text-align: left;"&gt;While preparing a talk on module systems and architectures I remembered some old talks I listened to talking about architectures and arguing why an explicit software architect is necessary within professional projects. Many of them used the analogy of building a dog-house versus building a cathedral. For a small dog house, you don't need an architecture. But for the cathedral you do. Hm, agree, but where is the point?&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 300px; height: 400px;" src="http://2.bp.blogspot.com/_A_IF8Fq8cIQ/SyIbpiPjAXI/AAAAAAAAAH8/NXWnfWBbKiw/s400/IMG_0060.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5413920102433358194" /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I think the world has changed. Today for most software systems the analogy of building something like a cathedral is no longer a good choice. And I hope that people no longer have a cathedral in mind when designing software. We have learned that building software is a learning process, that requirements change all the time, that we need a short time-to-market, and most of all that we need feedback all the time - and react to this feedback quickly. Agile methods reflect this and allows us to move forward to modern ways of software development.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But our view on architectures need to reflect this. Modern software architectures need to be build for flexibility, for changing requirements all the time, for changing even fundamental layers of our software in a flexible way without causing tremendous costs. Having a cathedral in mind don't help you here. But if you still like the analogy of building real buildings (even though I think this is not always a good analogy to building software at all), you should take a look at some modern office buildings. Maybe they are not as beautiful as some of the old cathedrals, but they are built for flexibility.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_A_IF8Fq8cIQ/SyIbQr3WEYI/AAAAAAAAAH0/S3M3dJXMTBc/s400/Flexible-Office-Building.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5413919675519472002" /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But building flexible architectures is not an easy task. We need to build a flexible architecture and at the same time just what we need without designing all possible stuff upfront. Sounds like contradictory goals, eh? Hm, in some way, they are. I think modularity can help you to solve this conflict. Modularity (and I mean modularity on a higher level than individual classes or packages, but more something like Bundles in OSGi) helps you to think about dependencies, coupling, cohesion, and many of these nice design principles. And I think we all agree on having a good, decoupled design makes life easier when things change - and they will change.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-923288710762486635?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/923288710762486635/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=923288710762486635' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/923288710762486635'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/923288710762486635'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/12/some-thoughts-on-cathedrals-and.html' title='Some Thoughts on Cathedrals and Software Architectures'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_A_IF8Fq8cIQ/SyIbpiPjAXI/AAAAAAAAAH8/NXWnfWBbKiw/s72-c/IMG_0060.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-553843351758635082</id><published>2009-12-11T10:23:00.004+01:00</published><updated>2010-04-10T22:13:55.990+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides from Meet-The-Experts on Architecture</title><content type='html'>Last friday I was invited to give a talk at the &lt;a href="http://www.meettheexperts.de/"&gt;Meet-the-Experts event&lt;/a&gt; in Solingen. I talked about my view on architectures in an agile world and how module systems drive those architectures for a flexible future. Here are the slides:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/MeetTheExperts-Architektur-2009-ModuleSystemsAndArchitectures.pdf"&gt;How Module Systems Drive Architectures (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Enjoy!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-553843351758635082?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/553843351758635082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=553843351758635082' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/553843351758635082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/553843351758635082'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/12/slides-from-meet-experts-on.html' title='Slides from Meet-The-Experts on Architecture'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-7927842318862121883</id><published>2009-12-10T14:59:00.004+01:00</published><updated>2009-12-10T15:11:33.153+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>2nd Eclipse DemoCamp Hamburg in 2009</title><content type='html'>I organized a number of demo camps over the past years (always together with my colleague and friend &lt;a href="http://www.peterfriese.de/"&gt;Peter Friese&lt;/a&gt;), but the last one was different. I was overwhelmed by the huge number of registered attendees for the 2nd Eclipse Demo Camp in Hamburg this year. We had over 110 people registered on the wiki - around twice as much as for the other camps in the past. And nearly all of them showed up at the event. This was absolutely amazing! Thanks again to all of you making this event such a big success!!!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Peter posted some notes on the program and what happened during the demo camp, so I don't repeat all this and instead direct you to &lt;a href="http://www.peterfriese.de/eclipse-democamp-hamburg-112009/"&gt;his nice summary of the event&lt;/a&gt;. And I have to say many many thanks to all the wonderful speakers who all gave funny and entertaining talks and made the evening not just full-packed with information and details on Eclipse stuff, but also a fun event. I enjoyed it very very much!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Looking forward to organizing the next demo camps and hoping to see you all there!!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-7927842318862121883?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/7927842318862121883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=7927842318862121883' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7927842318862121883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7927842318862121883'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/12/2nd-eclipse-democamp-hamburg-in-2009.html' title='2nd Eclipse DemoCamp Hamburg in 2009'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-2268531304258897056</id><published>2009-11-16T20:45:00.003+01:00</published><updated>2009-11-16T20:58:00.544+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>OSGi for Eclipse Developers Webinar</title><content type='html'>Today I gave an &lt;a href="http://live.eclipse.org/node/819"&gt;Eclipse webinar on "OSGi for Eclipse Developers"&lt;/a&gt; together with Chris Aniszczyk and Bernd Kolb. We talked about various OSGi things that might sound strange and/or unfamiliar to you if you come from the Eclipse way of developing applications. We talked about the relationship of Eclipse and OSGi, dependency management and why you should use Import-Package instead of Require-Bundle, dynamics with OSGi, services vs. extensions, versioning, some compendium services and tooling for OSGi. If you missed the live broadcast, you can &lt;a href="http://live.eclipse.org/node/819"&gt;watch the entire webinar from here again&lt;/a&gt;.  Enjoy!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-2268531304258897056?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/2268531304258897056/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=2268531304258897056' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2268531304258897056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2268531304258897056'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/11/osgi-for-eclipse-developers-webinar.html' title='OSGi for Eclipse Developers Webinar'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-1461569032763036665</id><published>2009-11-13T10:15:00.004+01:00</published><updated>2009-11-13T10:49:23.512+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Coming Up: Eclipse Demo Camp in Hamburg at December, 4th</title><content type='html'>The &lt;a href="http://wiki.eclipse.org/Eclipse_DemoCamps_November_2009/Hamburg"&gt;Eclipse Demo Camp in Hamburg&lt;/a&gt; is coming up on 4th of December (its a Friday) from 6:30pm - 10pm at the stylish EAST hotel (like the past demo camps in Hamburg). And I am pretty impressed about the number of participants: We already have more than 70 people registered for the event. Wow... Maybe one of the reasons is the exciting program we put together... :-)&lt;div&gt;&lt;ul&gt;&lt;li&gt;Tom Schindl will talk about Eclipse e4&lt;/li&gt;&lt;li&gt;Jan Köhnlein talks about building graphical and textual editors for your domain-specific language.&lt;/li&gt;&lt;li&gt;Jochen Krause will showcase Eclipse RAP and how you can build your rich AJAX apps using the Eclipse UI metaphors.&lt;/li&gt;&lt;li&gt;Nils Hartmann and Gerd Wütherich will share some insights into the various ways of how to realize an automated build process for OSGi and Eclipse applications.&lt;/li&gt;&lt;li&gt;And Ekkehard Gentz will show us "redview", a technology to build dynamic views for enterprise applications based on Riena, EMF and CDO.&lt;/li&gt;&lt;/ul&gt;Thanks to all the speakers who have agreed to join us in Hamburg to give demos on cool technologies - some of them travelling to Hamburg especially for the camp. Thank you all very very very much!!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you haven't registered yet, go to the &lt;a href="http://wiki.eclipse.org/Eclipse_DemoCamps_November_2009/Hamburg"&gt;wiki page&lt;/a&gt; and put your name on the list (if you have no account for the wiki, just create one or send me an email and I will put you on the list). There is no fee or ticket you need to pay for, itemis and it-agile will sponsor the event. Thank you guys for that!!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Its a great opportunity to see the technology in action, meet with the guys building that stuff and have a chat. See you at the Demo Camp in Hamburg. Don't miss it! &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-1461569032763036665?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/1461569032763036665/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=1461569032763036665' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1461569032763036665'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1461569032763036665'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/11/coming-up-eclipse-demo-camp-in-hamburg.html' title='Coming Up: Eclipse Demo Camp in Hamburg at December, 4th'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-8458871933024612099</id><published>2009-11-13T10:03:00.004+01:00</published><updated>2009-11-13T10:08:16.330+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides from WJAX Talk on Building Web-Apps with OSGi</title><content type='html'>I uploaded the slides of my talk on building web applications on top of OSGi that I gave yesterday at &lt;a href="http://www.wjax.de/"&gt;WJAX 2009&lt;/a&gt; together with &lt;a href="http://drupal.wuetherich.com/"&gt;Gerd Wütherich&lt;/a&gt; and &lt;a href="http://www.objektpark.de/"&gt;Peter Roßbach&lt;/a&gt;:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/WJAX2009-WebOSGi.pdf"&gt;Mit OSGi Webanwendungen entwickeln - Was geht, was nicht? (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;The slides are German only. Sorry about that... Hope you enjoy it anyway... :-)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-8458871933024612099?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/8458871933024612099/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=8458871933024612099' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8458871933024612099'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8458871933024612099'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/11/slides-from-wjax-talk-on-building-web.html' title='Slides from WJAX Talk on Building Web-Apps with OSGi'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-702703560939847369</id><published>2009-11-11T22:04:00.005+01:00</published><updated>2009-11-11T22:12:10.053+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>Slides from OSGi Best Practices and OSGi Performance Bloopers talks at WJAX 2009</title><content type='html'>Here are the slides of my two talks that I gave today at the &lt;a href="http://www.wjax.de/"&gt;WJAX conference&lt;/a&gt; in Munich:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/WJAX2009-OSGiBestPractices.pdf"&gt;OSGi Best Practices (pdf)&lt;/a&gt; (together with Matthias Lübken)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/WJAX2009-OSGiPerformanceBloopers.pdf"&gt;OSGi Performance Bloopers (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Enjoy!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-702703560939847369?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/702703560939847369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=702703560939847369' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/702703560939847369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/702703560939847369'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/11/slides-from-osgi-best-practices-and.html' title='Slides from OSGi Best Practices and OSGi Performance Bloopers talks at WJAX 2009'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-2826817206407226254</id><published>2009-10-28T18:01:00.003+01:00</published><updated>2009-10-28T18:05:16.399+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides from Eclipse Summit Europe 2009</title><content type='html'>Today I gave two talks at the &lt;a href="http://www.eclipsecon.org/summiteurope2009/"&gt;Eclipse Summit Europe 2009&lt;/a&gt; in Ludwigsburg. Here are the slides:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/ESE2009-OSGiBestPractices.pdf"&gt;OSGi Best Practices (together with Jeff McAffer) (pdf)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/ESE2009-BytecodeWeavingOSGi.pdf"&gt;Equinox Weaving: Bytecode Weaving for OSGi (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Enjoy!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-2826817206407226254?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/2826817206407226254/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=2826817206407226254' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2826817206407226254'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2826817206407226254'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/10/slides-from-eclipse-summit-europe-2009.html' title='Slides from Eclipse Summit Europe 2009'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-1356888618330350835</id><published>2009-10-26T18:02:00.005+01:00</published><updated>2009-10-26T18:24:06.793+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Ready for Eclipse Summit Europe 2009</title><content type='html'>Tomorrow I will travel to the &lt;a href="http://www.eclipsecon.org/summiteurope2009/"&gt;Eclipse Summit Europe 2009&lt;/a&gt; (Ludwigsburg, Germany) to meet great people, see interesting talks and participate in two session on stage: I am happy to present together with Jeff McAffer from EclipseSource our experiences using OSGi in various settings and the "best practices" that we extracted from that. So if you are interested in avoiding the faults and mistakes I did during the past years, join our talk (&lt;a href="http://www.eclipsecon.org/summiteurope2009/sessions?id=1002"&gt;OSGi Best Practices&lt;/a&gt;) and see me talking about my own failures... :-) Its Wednesday at 1:30pm.&lt;br /&gt;&lt;br /&gt;In the second talk I will give a short overview of the Equinox Weaving project (formerly known as Equinox Aspects), what's new and what's coming up in the future (&lt;a href="http://www.eclipsecon.org/summiteurope2009/sessions?id=857"&gt;Equinox Weaving: Bytecode Weaving in OSGi&lt;/a&gt;). So if you would like to hear more about bytecode weaving classes in an OSGi environment, don't miss these 20 minutes at Wednesday at 3:30pm.&lt;br /&gt;&lt;br /&gt;See you all in Ludwigsburg!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-1356888618330350835?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/1356888618330350835/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=1356888618330350835' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1356888618330350835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1356888618330350835'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/10/ready-for-eclipse-summit-eurrope-2009.html' title='Ready for Eclipse Summit Europe 2009'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-2590316886388153903</id><published>2009-10-08T22:34:00.007+02:00</published><updated>2009-10-09T23:26:30.274+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides from JAOO: OSGi on the Server</title><content type='html'>&lt;div style="text-align: left;"&gt;It was my first time being at &lt;a href="http://jaoo.dk/aarhus-2009/"&gt;JAOO&lt;/a&gt; in Aarhus, Denmark, and it was absolutely great. Lots of interesting talks and discussions and I enjoyed a lot to talk in this fantastic cinema-like room:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 238); -webkit-text-decorations-in-effect: underline; "&gt;&lt;img src="http://4.bp.blogspot.com/_A_IF8Fq8cIQ/Ss-p_XINi3I/AAAAAAAAAHQ/ZwWdaIb3tBA/s400/IMG_0010.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5390714184991083378" style="display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; width: 400px; height: 300px; " /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;I talked about the different settings how you can use OSGi on the server-side and about the dynamics of OSGi applications:&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/JAOO2009-OSGiOnTheServer.pdf"&gt;OSGi on the Server (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;And you can find most of the slides of the other talks at the &lt;a href="http://jaoo.dk/aarhus-2009/schedule/"&gt;schedule pages of the conference&lt;/a&gt;. Enjoy!&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-2590316886388153903?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/2590316886388153903/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=2590316886388153903' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2590316886388153903'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2590316886388153903'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/10/slides-from-jaoo-osgi-on-server.html' title='Slides from JAOO: OSGi on the Server'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_A_IF8Fq8cIQ/Ss-p_XINi3I/AAAAAAAAAHQ/ZwWdaIb3tBA/s72-c/IMG_0010.JPG' height='72' width='72'/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-4864125605671744726</id><published>2009-10-03T11:57:00.000+02:00</published><updated>2009-10-03T11:57:34.240+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>JAOO is coming...</title><content type='html'>I will leave Hamburg this Sunday to travel to Aarhus, Denmark, for this years &lt;a href="http://jaoo.dk/aarhus-2009/"&gt;JAOO conference&lt;/a&gt;. It's my first JAOO and I heart so many good things about it. :-) And I have the great opportunity to give a talk on "&lt;a href="http://jaoo.dk/aarhus-2009/presentation/OSGi+on+the+Server"&gt;OSGi on the Server&lt;/a&gt;". Eberhard Wolff is organizing the "Java Now" track and invited me to this. Thank you very very much for that, Eberhard!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-4864125605671744726?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/4864125605671744726/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=4864125605671744726' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4864125605671744726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4864125605671744726'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/10/jaoo-is-coming.html' title='JAOO is coming...'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-2734033852728096950</id><published>2009-09-19T20:34:00.004+02:00</published><updated>2009-09-19T20:54:07.537+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Eclipse 3.6 M2 is out - and includes Equinox Weaving</title><content type='html'>The &lt;a href="http://download.eclipse.org/eclipse/downloads/drops/S-3.6M2-200909170100/index.php"&gt;second milestone of Eclipse 3.6 is available for download&lt;/a&gt; - and its the first milestone build that includes the Equinox Weaving feature as part of the &lt;a href="http://download.eclipse.org/equinox/drops/S-3.6M2-200909170100/index.php"&gt;Equinox &lt;/a&gt;&lt;a href="http://download.eclipse.org/equinox/drops/S-3.6M2-200909170100/index.php"&gt;3.6 M2 &lt;/a&gt;&lt;a href="http://download.eclipse.org/equinox/drops/S-3.6M2-200909170100/index.php"&gt;downloads&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;After graduating the Equinox Aspects work we renamed it to Equinox Weaving. The reason for this is: The design separates between the base mechanism of modifying bytecode at class loading time and the actual bytecode modification. The AspectJ-based aspect weaving for bundles is just one of many possible bytecode modifiers you can think of. Another one that we implemented (but is not yet part of the Equinox Weaving project) allows you to use Springs load-time weaving infrastructure on top of a OSGi runtime together with Spring Dynamic Modules. And the nice thing about it is: While you are free to choose whatever weaver you like, the caching mechanism of Equinox Weaving works independent from all those weavers.&lt;br /&gt;&lt;br /&gt;We still need to update the Equinox web to reflect the graduation and design changes of Equinox Weaving, but please feel free to take a look at it. We are happy to answer questions on the newsgroup and the mailing list.&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-2734033852728096950?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/2734033852728096950/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=2734033852728096950' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2734033852728096950'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2734033852728096950'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/09/eclipse-36-m2-is-out-and-includes.html' title='Eclipse 3.6 M2 is out - and includes Equinox Weaving'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-1041657929549815814</id><published>2009-09-05T15:44:00.002+02:00</published><updated>2009-09-05T15:51:21.506+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Eclipse Summit Europe 2009 Program Online</title><content type='html'>The &lt;a href="http://www.eclipsecon.org/summiteurope2009/sessions?"&gt;technical program&lt;/a&gt; for &lt;a href="http://www.eclipsecon.org/summiteurope2009/"&gt;Eclipse Summit Europe 2009&lt;/a&gt; is now online and I am pretty happy to be part of it with two sessions:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.eclipsecon.org/summiteurope2009/sessions?id=857"&gt;Equinox Aspects - Bytecode Weaving for OSGi&lt;/a&gt;: This is some kind of an update talk on the Equinox Aspects (or better: Equinox Weaving) project. Will give some insights what has happened and what is planned for the future.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.eclipsecon.org/summiteurope2009/sessions?id=1002"&gt;OSGi Best Practices&lt;/a&gt;: This is a joint talk with Jeff McAffer, Paul Vanderlei and Simon Archer where we will throw together our experiences from building apps on top of OSGi over the past years.&lt;/li&gt;&lt;/ul&gt;Don't forget to register for the event. Looking forward to seeing you all there!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-1041657929549815814?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/1041657929549815814/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=1041657929549815814' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1041657929549815814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1041657929549815814'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/09/eclipse-summit-europe-2009-program.html' title='Eclipse Summit Europe 2009 Program Online'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-6419816440265791623</id><published>2009-07-02T20:22:00.003+02:00</published><updated>2009-07-02T20:33:15.516+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides from Talk at Java-Forum-Stuttgart 2009</title><content type='html'>Today I gave a talk on building dynamic applications with OSGi at the &lt;a href="http://www.java-forum-stuttgart.de/"&gt;Java-Forum-Stuttgart 2009&lt;/a&gt;. This was mostly the talk I gave (and prepared) together with Kai Tödter and Gerd Wütherich for previous conferences. Here are the slides:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/JFS-2009-DynamicOSGiApps.pdf"&gt;Patterns and Best Practices for Dynamic OSGi Applications (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;The talk were in the main hall of the conference center and it was fun standing on that huge stage... :-) And of course I got completely confused during the talk while switching between the demo application and a slide showing a screenshot of that demo app - picking up every possible embarrassment... ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-6419816440265791623?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/6419816440265791623/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=6419816440265791623' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6419816440265791623'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6419816440265791623'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/07/slides-from-talk-at-java-forum.html' title='Slides from Talk at Java-Forum-Stuttgart 2009'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-2334453386962290892</id><published>2009-06-26T22:28:00.006+02:00</published><updated>2009-06-26T22:58:21.302+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><title type='text'>ObjektSpektrum-Article on Agility &amp; Architecture</title><content type='html'>Together with my colleague &lt;a href="http://www.stefanroock.de/"&gt;Stefan Roock&lt;/a&gt; I wrote an article on building architectures in an agile way for &lt;a href="http://www.sigs-datacom.de/sd/publications/os/2009/04/index.htm"&gt;the current issue of the German ObjektSpektrum magazine&lt;/a&gt;. The article is part of a controversy with Thomas Lieder about how to incrementally build architectures in agile projects.&lt;br /&gt;&lt;br /&gt;In the introductory part of the controversy we talk about the basics of agile methods and the goal of keeping a flat cost curve for features over a long period of time. To achieve this goal we need to change and refactor the software all the time. This is an integral part of agile software development. We learned that its not possible to foresee the future and therefore decided to design only the next steps - and refactor, if we learn over time and find better designs if new requirements appear. This is quite clear on the low-level of individual classes and nicely supported by test-driven development and refactoring tools.&lt;br /&gt;&lt;br /&gt;If we use the same argumentation for the architecture of a project, the discussions get a lot more controversy. People don't believe that it is easy to change and refactor the architecture of a system incrementally and flexible over time. We found this discussion often times quite unstructured and using the term architecture in various flavors and meanings. To ease the discussion about agile architectures we divide between the basic architectural style and the concrete architecture of a concrete system. Our opinion is that the basic architectural style is hard to change over time (for example changing a system from a standalone-rich-client application into a multi-user app-server-based system could be quite hard). In contrast to this we believe that changing the concrete architecture and structure of a system could be done incrementally and agile over time. This is obviously not true for every application. They need to be build from ground-up for flexibility and change. But how to build a system that is easier to change over time, even on the architectural level?&lt;br /&gt;&lt;br /&gt;From our point of view, there are three fundamental characteristics of design you need to remember every day to build flexible architectures: &lt;span style="font-weight: bold;"&gt;understandable&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;loosely coupled&lt;/span&gt; and &lt;span style="font-weight: bold;"&gt;free of redundance&lt;/span&gt;. There are many well-known design principles that helps you to build such systems. Keep them in mind, build loosely coupled components, think about good APIs between them - and you are on the right track to build flexible applications and flexible architectures.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-2334453386962290892?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/2334453386962290892/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=2334453386962290892' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2334453386962290892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2334453386962290892'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/06/objektspektrum-article-on-agility.html' title='ObjektSpektrum-Article on Agility &amp; Architecture'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-8187625189843681488</id><published>2009-06-26T11:08:00.006+02:00</published><updated>2009-06-26T16:45:09.737+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>Incremental Design at SEACON 2009</title><content type='html'>A few days ago I gave a &lt;a href="http://www.sigs-datacom.de/sd/kongresse/seacon_2009/session_details.htm?&amp;amp;ID=43"&gt;short talk on Incremental Design&lt;/a&gt; at &lt;a href="http://www.sigs-datacom.de/sd/kongresse/seacon_2009/index.htm"&gt;SEACON 2009&lt;/a&gt;, a new buzzword-free conference in Hamburg, Germany. Aside of the fact that this was the first conference in my beautiful home town (and only 15min away from home), I enjoyed to meet a lot of people there. I also made up a few slides for my talk, which you can now download as PDF (in German):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/SEACON-2009-Inkrementeller-Entwurf.pdf"&gt;Inkrementeller Entwurf (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;And last but not least I used my new presentation tool called &lt;a href="http://www.session-five.com/"&gt;Session Five&lt;/a&gt; for the first time. Was absolutely great!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-8187625189843681488?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/8187625189843681488/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=8187625189843681488' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8187625189843681488'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8187625189843681488'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/06/incremental-design-at-seacon-conference.html' title='Incremental Design at SEACON 2009'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-5060065068753679913</id><published>2009-06-12T16:06:00.003+02:00</published><updated>2009-06-12T16:13:53.929+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>"OSGi on the Server"-Talk at JAOO 2009 in Aarhus</title><content type='html'>I am invited to the &lt;a href="http://jaoo.dk/aarhus-2009/"&gt;JAOO 2009 conference in Aarhus, Denmark&lt;/a&gt;, to talk in the &lt;a href="http://jaoo.dk/aarhus-2009/tracks/show_track.jsp?trackOID=264"&gt;“Java-Now” track&lt;/a&gt; about “&lt;a href="http://jaoo.dk/aarhus-2009/presentation/OSGi+on+the+Server"&gt;OSGi on the Server&lt;/a&gt;”. I am pretty excited to join the folks at JAOO since I heard a lot of good things about this conference and the program already sounds quite interesting. Hope to meet a lot of interesting people there!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-5060065068753679913?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/5060065068753679913/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=5060065068753679913' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5060065068753679913'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5060065068753679913'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/06/osgi-on-server-talk-at-jaoo-2009-in.html' title='&quot;OSGi on the Server&quot;-Talk at JAOO 2009 in Aarhus'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-4441502907554842918</id><published>2009-05-29T14:11:00.004+02:00</published><updated>2009-05-29T14:15:55.670+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides from the OSGi Talks at Java User Group Essen</title><content type='html'>Already two weeks ago I gave two talks together with Gerd Wütherich at the Java User Group Essen meeting at May 14th. We talked about OSGi in general and building web applications on top of OSGi in specific. We had a room full of interested people and I enjoyed a lot talking there. If you are interested in the slides, here they are:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/ruhrJUG-2009-osgi-by-example.pdf"&gt;OSGi Service Platform by Example (pdf, in german)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/ruhrJUG-2009-mit-osgi-webanwendungen-entwickeln.pdf"&gt;Mit OSGi Web-Anwendungen entwickeln (pdf, in german)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-4441502907554842918?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/4441502907554842918/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=4441502907554842918' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4441502907554842918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4441502907554842918'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/05/slides-from-osgi-talks-at-java-user.html' title='Slides from the OSGi Talks at Java User Group Essen'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-6412478176513781711</id><published>2009-05-07T23:07:00.003+02:00</published><updated>2009-05-07T23:15:29.728+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>OSGi Talks at Java User Group Essen</title><content type='html'>I will be at the &lt;a href="http://www.ruhrjug.de/index.php"&gt;Java User Group Essen&lt;/a&gt; meeting next week to talk about OSGi together with my colleague &lt;a href="http://www.gerd-wuetherich.de/"&gt;Gerd Wütherich&lt;/a&gt;. We will talk about the basic ideas behind OSGi as well as building web applications on top of OSGi. Take a look at the &lt;a href="http://www.ruhrjug.de/vorschau/details/8-gerd-wuetherich-martin-lippert--osgi"&gt;announcement &lt;/a&gt;for more details (in German).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-6412478176513781711?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/6412478176513781711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=6412478176513781711' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6412478176513781711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6412478176513781711'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/05/osgi-talks-at-java-user-group-essen.html' title='OSGi Talks at Java User Group Essen'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-1988458804626829775</id><published>2009-05-04T21:41:00.003+02:00</published><updated>2009-05-04T21:48:37.183+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Coming up: Eclipse Demo Camp in Hamburg</title><content type='html'>The tradition of the Eclipse Demo Camps in Hamburg (Germany) will continue with its next edition on Monday, May 25. We will, again, be at the scenic EAST design hotel and have great demos, drinks and, and, and... So don't forget to register yourself by adding your name to the &lt;a href="http://wiki.eclipse.org/Eclipse_DemoCamps_Galileo_2009/Hamburg"&gt;Galileo Demo Camp Hamburg&lt;/a&gt; wiki page. This time, we had the idea to continue with a Stammtisch right after the Demo Camp (please don't forget to add your name to that list as well), so even more drinks can follow... ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-1988458804626829775?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/1988458804626829775/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=1988458804626829775' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1988458804626829775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1988458804626829775'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/05/coming-up-eclipse-demo-camp-in-hamburg.html' title='Coming up: Eclipse Demo Camp in Hamburg'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-8766367047926028474</id><published>2009-05-03T20:50:00.001+02:00</published><updated>2009-05-03T20:53:38.661+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Equinox Aspects 1.0 M7a available for download</title><content type='html'>Because of a stupid bug in the caching area I put a fixed build of the milestone online. So if you tried M7 and observed performance problems with the caching, you should try this fixed milestone build instead from the &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-downloads.php"&gt;Equinox Aspects download area&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-8766367047926028474?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/8766367047926028474/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=8766367047926028474' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8766367047926028474'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8766367047926028474'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/05/equinox-aspects-10-m7a-available-for.html' title='Equinox Aspects 1.0 M7a available for download'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-6585538527270586700</id><published>2009-05-01T15:48:00.002+02:00</published><updated>2009-05-01T15:53:42.183+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Equinox Aspects 1.0 M7 available for download</title><content type='html'>The seventh milestone of &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/"&gt;Equinox Aspects&lt;/a&gt; is available for download from the &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-downloads.php"&gt;Equinox Aspects download page&lt;/a&gt;. This milestone contains quite a large improvement for controlling the weaving of bundles. More details can be found in &lt;a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=255682#c18"&gt;this comment on bug 255682&lt;/a&gt;. Take also a look at the &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-news-1.0-M7.html"&gt;New &amp;amp; Noteworthy list for 1.0M7&lt;/a&gt; on the web to find out more.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-6585538527270586700?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/6585538527270586700/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=6585538527270586700' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6585538527270586700'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6585538527270586700'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/05/equinox-aspects-10-m7-available-for.html' title='Equinox Aspects 1.0 M7 available for download'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-8298423183161977647</id><published>2009-04-28T11:18:00.005+02:00</published><updated>2009-05-01T15:06:34.943+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>Building a Lego Castle Incrementally and Interatively</title><content type='html'>My colleagues Henning Wolf and Arne Roock had a great idea for our company booth at the last JAX conference: Every attendee got a single LEGO brick in his conference pocket. The goal was to jointly build a LEGO castle at the booth, piece by piece, with a huge crowd of developers. So every attendee got a time slot of 30 seconds (a single iteration) to place one or more bricks and/or to refactor the existing building. And we had (and I think the builders, too) a lot of fun with that! Its always fun to work with these creative guys!&lt;br /&gt;&lt;br /&gt;Arne and Marcel recorded a stop-motion-movie from the building process, taking a picture after each 30-seconds iteration. The final movie is published at the companies website:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.it-agile.de/lego-experiment.html"&gt;Stop motion movie: it-agile and the LEGO Experiment at JAX&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Have fun watching the movie!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-8298423183161977647?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/8298423183161977647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=8298423183161977647' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8298423183161977647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8298423183161977647'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/04/building-lego-castle-inkrementally-and.html' title='Building a Lego Castle Incrementally and Interatively'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-8414755986727800633</id><published>2009-04-28T11:07:00.003+02:00</published><updated>2009-04-28T11:15:47.174+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>JAX 2009 Revisited</title><content type='html'>My colleague and friend Matthias Lübken wrote with me a short blog-kind-of-a review, reflecting the JAX conference in Mainz last week. Just some thoughts and impressions on OSGi, Scala, Pecha Kucha (and more...) for the next Eclipse-Magazin. The online version is already available here:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://it-republik.de/jaxenter/news/OSGi-fuer-Web-Anwendungen-Licht-am-Ende-des-Tunnels-048553.html"&gt;JAX-2009-Comments and Thoughts&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;But take care, its German... ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-8414755986727800633?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/8414755986727800633/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=8414755986727800633' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8414755986727800633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8414755986727800633'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/04/jax-2009-revisited.html' title='JAX 2009 Revisited'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-1358730938671139658</id><published>2009-04-26T11:42:00.010+02:00</published><updated>2009-04-26T12:13:34.915+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Load-Time Weaving for Spring-DM</title><content type='html'>Load-time weaving in an OSGi environment is different than in single-classpath-settings like you often have in Java. There you typically use a JVM agent or a specialized classloader that gets ClassFileTransformer components injected from your application. Those ClassFileTransformer components then to the real job of modifying bytecode at load-time. This is also used in the Spring framework to enable aspect weaving or JPA bytecode enhancements.&lt;br /&gt;This gets different when you are working in an OSGi environment. Within OSGi you no longer have a single classpath application, you cannot (or at least should not) create specialized classloaders for yourself to do the magic, maybe the weaving should happen specifically for each bundle or the woven code gets additional dependencies woven into it. Using Spring in an OSGi environment doesn't make things easier. You can use &lt;a href="http://www.springframework.org/osgi"&gt;Spring Dynamic Modules&lt;/a&gt; to implement really cool OSGi applications, but your Spring load-time weaving support remains broken to some degree (see all the related questions in the Spring-DM forum).&lt;br /&gt;I often thought about using &lt;a href="http://www.eclipse.org/equinox/incubator/aspects"&gt;Equinox Aspects&lt;/a&gt; to solve these problems. Since Equinox Aspects is not tightly bound to AspectJ weaving only, you could re-use the base infrastructure to hook any kind of bytecode modifier into the Equinox runtime - and reuse the caching of Equinox Aspects at the same time.&lt;br /&gt;&lt;br /&gt;Now I have a first sketch implemented that bridges between Spring-LTW and Equinox Aspects. The EquinoxAspectsLoadTimeWeaver class implements the LoadTimeWeaver interface of Spring and can therefore be used in your spring context as the load-time weaver component:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;context:spring-configured&amp;gt;&lt;br /&gt;&amp;lt;context:annotation-config&amp;gt;&lt;br /&gt;&amp;lt;context:load-time-weaver&lt;br /&gt;  class="org.eclipse.equinox.weaving.springweaver.EquinoxAspectsLoadTimeWeaver"/&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;If you define this load-time weaver your bundle need to define an Import-Package on "org.eclipse.equinox.weaving.springweaver", of course.&lt;br /&gt;&lt;br /&gt;To use this kind of load-time weaver definition to need to add "org.eclipse.equinox.weaving.hook" (from Equinox Aspects) to your target platform as well as "org.eclipse.equinox.weaving.springweaver":&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/download/org.eclipse.equinox.weaving.springweaver_0.1.1.zip"&gt;org.eclipse.equinox.weaving.springweaver_0.1.1.zip&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;When you launch your OSGi runtime you need to set the system property: (osgi.framework.extensions=org.eclipse.equinox.weaving.hook) and start the springweaver bundle right at startup. You can do this by adding it to the config.ini file (org.eclipse.equinox.weaving.springweaver@4:start). This is basically the same when using Equinox Aspects, except that you no longer start org.eclipse.equinox.weaving.aspectj but instead the springweaver bundle.&lt;br /&gt;&lt;br /&gt;There are still some issues that need to be solved (see &lt;a href="http://forum.springsource.org/showpost.php?p=237347&amp;amp;postcount=9"&gt;this comment in the spring forum&lt;/a&gt; for details), but I hope to can try it out and tell me what works fine and what needs some more work.&lt;br /&gt;&lt;br /&gt;Feedback always welcome! Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-1358730938671139658?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/1358730938671139658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=1358730938671139658' title='15 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1358730938671139658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1358730938671139658'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/04/load-time-weaving-for-spring-dm.html' title='Load-Time Weaving for Spring-DM'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>15</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-7752022052514043307</id><published>2009-04-24T14:15:00.002+02:00</published><updated>2009-04-24T14:21:28.963+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>JAX 2009: Patterns and Best Practices for Dynamic OSGi Applications</title><content type='html'>Right after the talk on my lessons learned I had the pleasure to talk together with Kai Tödter and Gerd Wütherich about examples, patterns and some best practices to build real dynamic OSGi applications. Here are the slides:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/JAX2009-DynamicsForOSGi.pdf"&gt;Patterns and Best Practices for Dynamic OSGi Applications (pdf)&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Kai put together a really nice example for using different ways on how to build dynamics into OSGi apps. It demonstrates all the cool ways of dealing with OSGi services in a declarative way, like Declarative Services, iPojo, Spring Dynamic Modules and Guice/Peaberry. The URL to the example project is on slide 7, if you would like to take a closer look at it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-7752022052514043307?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/7752022052514043307/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=7752022052514043307' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7752022052514043307'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7752022052514043307'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/04/jax-2009-patterns-and-best-practices.html' title='JAX 2009: Patterns and Best Practices for Dynamic OSGi Applications'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-5706569515799152123</id><published>2009-04-24T14:06:00.005+02:00</published><updated>2009-04-24T14:12:31.141+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>JAX 2009: Lessons Learned from 5 Years of Building Enterprise OSGi Applications</title><content type='html'>Yesterday I gave a talk at &lt;a href="http://it-republik.de/jaxenter/jax/"&gt;JAX 2009&lt;/a&gt; about my experiences from using OSGi for enterprise application development over the past 5 years. I tried to sum up my experiences and most of all the mistakes I made during the past years using OSGi. If you are interested, take a look at the slides:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/JAX2009-LessonsLearnedOSGi.pdf"&gt;Lessons Learned: 5 Years of Building Enterprise OSGi Applications (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Enjoy - and try to &lt;span style="font-weight: bold;"&gt;not&lt;/span&gt; make the same mistakes than I... ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-5706569515799152123?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/5706569515799152123/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=5706569515799152123' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5706569515799152123'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5706569515799152123'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/04/jax-2009-lessons-learned-from-5-years.html' title='JAX 2009: Lessons Learned from 5 Years of Building Enterprise OSGi Applications'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-4833792855646864720</id><published>2009-04-22T12:06:00.004+02:00</published><updated>2009-04-22T12:11:09.928+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>JAX 2009: What's Possible for Web-Apps and OSGi</title><content type='html'>Today I gave a presentation together with Gerd Wütherich and Peter Roßbach about the difficulties and options you have if you want to adopt OSGi for building web applications. The room was pretty crowded (more than 220 people) and I enjoyed the talk a lot. If you would like to take a look at the slides, you can find them here (unfortunately in German):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/JAX2009-WebAppsOSGi.pdf"&gt;Mit OSGi Web-Anwendungen entwickeln - Was geht, was nicht? (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-4833792855646864720?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/4833792855646864720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=4833792855646864720' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4833792855646864720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4833792855646864720'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/04/jax-2009-whats-possible-for-web-apps.html' title='JAX 2009: What&apos;s Possible for Web-Apps and OSGi'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-5253105827626347295</id><published>2009-04-21T18:49:00.003+02:00</published><updated>2009-04-21T19:03:34.420+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>JAX 2009: What's New in Equinox Aspects</title><content type='html'>Today I gave an updated version of my EclipseCon short talk on What's New In Equinox Aspects at the &lt;a href="http://it-republik.de/konferenzen/efe/"&gt;Eclipse Forum Europe 2009&lt;/a&gt;, here in Mainz. Here are the slides:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/JAX2009-WhatsNewInEquinoxAspects.pdf"&gt;What's New in Equinox Aspects (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-5253105827626347295?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/5253105827626347295/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=5253105827626347295' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5253105827626347295'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5253105827626347295'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/04/jax-2009-whats-new-in-equinox-aspects.html' title='JAX 2009: What&apos;s New in Equinox Aspects'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-7411160353553584952</id><published>2009-04-16T22:40:00.003+02:00</published><updated>2009-04-16T22:52:37.849+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Next version of Scala IDE for Eclipse uses Equinox Aspects</title><content type='html'>Today &lt;a href="http://twitter.com/milessabin"&gt;Miles Sabin&lt;/a&gt; posted details on the &lt;a href="http://www.scala-lang.org/node/1493"&gt;upcoming 2.7.4 release of the Scala IDE for Eclipse&lt;/a&gt;. I am pretty excited about the fact that it uses &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/"&gt;Equinox Aspects&lt;/a&gt; to implement deeper integration with JDT. It uses the same aspect bundle as &lt;a href="http://www.eclipse.org/ajdt"&gt;AJDT&lt;/a&gt; called &lt;a href="http://wiki.eclipse.org/JDT_weaving_features"&gt;JDT weaving&lt;/a&gt;. Andrew Eisenberg gave a great &lt;a href="http://www.eclipsecon.org/2009/sessions?id=648"&gt;talk on JDT weaving at EclipseCon 2009&lt;/a&gt;. Take a look at the slides if you would like to read more about JDT weaving using Equinox Aspects.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-7411160353553584952?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/7411160353553584952/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=7411160353553584952' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7411160353553584952'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7411160353553584952'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/04/next-version-of-scala-ide-for-eclipse.html' title='Next version of Scala IDE for Eclipse uses Equinox Aspects'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-8551411250754898889</id><published>2009-03-25T21:11:00.002+01:00</published><updated>2009-03-25T21:21:50.631+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>EclipseCon 2009: OSGi for Eclipse Developers</title><content type='html'>It was fun giving the talk on &lt;a href="http://www.eclipsecon.org/2009/sessions?id=266"&gt;"OSGi for Eclipse Developers"&lt;/a&gt; at &lt;a href="http://www.eclipsecon.org/2009/"&gt;EclipseCon 2009&lt;/a&gt; together with Chris Aniszczyk and Bernd Kolb. At the end we had plenty of time for some interesting questions. Luckily we had BJ Hargrave and Peter Kriens sitting in the first row to answer the really hard ones... :-)&lt;br /&gt;&lt;br /&gt;Here are the slides of the talk:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/EclipseCon2009-OSGiForEclipseDevelopers.pdf"&gt;OSGi for Eclipse Developers (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-8551411250754898889?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/8551411250754898889/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=8551411250754898889' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8551411250754898889'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8551411250754898889'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/03/eclipsecon-2009-osgi-for-eclipse.html' title='EclipseCon 2009: OSGi for Eclipse Developers'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-6703770194546145235</id><published>2009-03-24T22:06:00.002+01:00</published><updated>2009-03-24T22:14:20.451+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>EclipseCon 2009: What's New in Equinox Aspects</title><content type='html'>Just a few minutes ago I finished my short talk on &lt;a href="http://www.eclipsecon.org/2009/sessions?id=280"&gt;"What's New in Equinox Aspects"&lt;/a&gt; at &lt;a href="http://www.eclipsecon.org/2009/"&gt;EclipseCon 2009&lt;/a&gt;. The slides are online:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/EclipseCon2009-WhatsNewInEquinoxAspects.pdf"&gt;What's New in Eqiunox Aspects (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;I am now looking forward to my talk tomorrow on &lt;a href="http://www.eclipsecon.org/2009/sessions?id=266"&gt;"OSGi for Eclipse Developers"&lt;/a&gt; together with Chris and Bernd. Stay tuned!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-6703770194546145235?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/6703770194546145235/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=6703770194546145235' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6703770194546145235'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6703770194546145235'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/03/eclipsecon-2009-whats-new-in-equinox.html' title='EclipseCon 2009: What&apos;s New in Equinox Aspects'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-3026970347845122521</id><published>2009-03-10T18:10:00.003+01:00</published><updated>2009-03-10T19:25:35.889+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Exciting OSGi-Experts-Day at JAX 2009</title><content type='html'>Just a few weeks after the upcoming &lt;a href="http://www.eclipsecon.org/2009/"&gt;EclipseCon&lt;/a&gt; the next conference opens the doors. The &lt;a href="http://www.jax.de"&gt;JAX conference&lt;/a&gt; (which also includes the &lt;a href="http://it-republik.de/jaxenter/eclipseforumeurope/"&gt;Eclipse Forum Europe&lt;/a&gt;) in Germany takes place in Mainz, Germany, from April 20th to 24th. While the conference is fully packed with a lot of interesting stuff, I had the honor to organize the &lt;a href="http://it-republik.de/jaxenter/jax/sessions/?tid=1177"&gt;OSGi Experts Day&lt;/a&gt;, a one-day mini conference inside JAX. The goal of this extra day at the end of the JAX week is to have advanved topics only and nothing for OSGi newbies.&lt;br /&gt;&lt;br /&gt;Of course I had more ideas how to fill this day that slots available, but I think we will have a quite interesting day. These six talks will be presented:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Peter Kriens on &lt;a href="http://it-republik.de/jaxenter/jax/sessions/?tid=1177#session-2"&gt;Puzzled about Java Modularity&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Richard Hall on &lt;a href="http://it-republik.de/jaxenter/jax/sessions/?tid=1177#session-3"&gt;Coming soon to OSGi - Standard framework launching and composite bundles!&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Doug Clarke and Shaun Smith on &lt;a href="http://it-republik.de/jaxenter/jax/sessions/?tid=1177#session-4"&gt;OSGi Persistence&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Heiko Seeberger and Roman Roelofsen on &lt;a href="http://it-republik.de/jaxenter/jax/sessions/?tid=1177#session-5"&gt;Scala Modules - Ease the OSGi development with a Scala DSL&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="speaker"&gt;&lt;span class="name"&gt;Ekkehard Gentz&lt;/span&gt;&lt;/span&gt; on &lt;a href="http://it-republik.de/jaxenter/jax/sessions/?tid=1177#session-6"&gt;Building an OSGi-based EJB3 Server&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Stephan Herrmann on &lt;a href="http://it-republik.de/jaxenter/jax/sessions/?tid=1177#session-7"&gt;Bundle reuse and adaptation with Object Teams: Don't settle for a compromise!&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;At the end all speakers will participate in a panel to answer questions from the audience. And I am sure that we will have a lot of interesting discussions during the breaks as well. So join us for this cool day on advanced OSGi topics!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-3026970347845122521?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/3026970347845122521/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=3026970347845122521' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3026970347845122521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3026970347845122521'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/03/exciting-osgi-experts-day-at-jax-2009.html' title='Exciting OSGi-Experts-Day at JAX 2009'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-6280693105548680439</id><published>2009-02-02T21:48:00.001+01:00</published><updated>2009-02-03T21:49:18.604+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides from OOP talk on dynamics with OSGi available</title><content type='html'>As Kai Tödter already pointed out in &lt;a href="http://www.toedter.com/blog/?p=44"&gt;his blog entry&lt;/a&gt;, our session on dynamics for OSGi applications at the OOP conference last week was a lot of fun. I enjoyed this session with Kai and Gerd a lot. Thanks, guys!&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/OOP2009-DynamicOSGiApps.pdf"&gt;Best practices for dynamic OSGi applications (slides as pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-6280693105548680439?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/6280693105548680439/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=6280693105548680439' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6280693105548680439'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6280693105548680439'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/02/slides-from-oop-talk-on-dynamics.html' title='Slides from OOP talk on dynamics with OSGi available'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-3203162628787034421</id><published>2009-02-02T21:40:00.001+01:00</published><updated>2009-02-03T21:40:21.328+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Equinox Aspects 1.0 M5 available for download</title><content type='html'>The fifth milestone of &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/"&gt;Equinox Aspects&lt;/a&gt; is available for download from the &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-downloads.php"&gt;Equinox Aspects download area&lt;/a&gt;. There are no new features, just a few bug fixes included in this milestone build.&lt;br /&gt;Aside of that we discussed a few changes to the way Equinox Aspects can be used and are going to include some changes for the next milestone. The feedback from the AJDT team and their users is really useful to further improve the stability of Equinox Aspects and to ease the installation process. Special thanks to Andrew Eisenberg and Andy Clement for the feedback, discussions and contributions!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-3203162628787034421?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/3203162628787034421/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=3203162628787034421' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3203162628787034421'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3203162628787034421'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/02/equinox-aspects-10-m5-available-for.html' title='Equinox Aspects 1.0 M5 available for download'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-753838640019444078</id><published>2009-01-28T17:57:00.004+01:00</published><updated>2009-01-28T18:06:22.282+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Short Talk on Using Equinox Aspects to Provide Language Developers with Deep Eclipse Integration</title><content type='html'>As you might now, the new version of &lt;a href="http://www.eclipse.org/ajdt"&gt;AJDT&lt;/a&gt; uses &lt;a href="http://www.eclipse.org/equinox/incubator/aspects"&gt;Equinox Aspects&lt;/a&gt; to allow deeper integration of some AJDT features into the JDT. Andrew Eisenberg (from the AJDT team) will give a short talk about this at this years EclipseCon: &lt;a href="http://www.eclipsecon.org/2009/sessions?id=648"&gt;"Aspects Everywhere: Using Equinox Aspects to Provide Language Developers with Deep Eclipse Integration"&lt;/a&gt;. Aside of the fact that I am fascinated to see this usage of Equinox Aspects for AJDT (some kind of "eat your own dogfood"), I am excited about the design of this part of AJDT. It allows other language developers to reuse this part to achieve the same level of integration into JDT. Very cool stuff. I will definitely go to see Andrews talk to hear more about this!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-753838640019444078?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/753838640019444078/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=753838640019444078' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/753838640019444078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/753838640019444078'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/01/using-equinox-aspects-to-provide.html' title='Short Talk on Using Equinox Aspects to Provide Language Developers with Deep Eclipse Integration'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-5564274130995219553</id><published>2009-01-26T16:41:00.005+01:00</published><updated>2009-01-27T10:33:54.889+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Equinox Aspects and OSGi for Eclipse Developers at EclipseCon 2009</title><content type='html'>Just a few weeks from now the doors will open to &lt;a href="http://www.eclipsecon.org/2009/"&gt;a new EclipseCon&lt;/a&gt; in Santa Clara. I am very happy that I got a short and a long talk accepted this year!&lt;br /&gt;&lt;br /&gt;The short talk &lt;a href="http://www.eclipsecon.org/2009/sessions?id=280"&gt;"What's new in Equinox Aspects"&lt;/a&gt; will be an update on the &lt;a href="http://www.eclipse.org/equinox/incubator/aspects"&gt;Equinox Aspects&lt;/a&gt; project. We will briefly talk on the improvements and challenges during the past milestone builds.&lt;br /&gt;&lt;br /&gt;The long talk &lt;a href="http://www.eclipsecon.org/2009/sessions?id=266"&gt;"OSGi for Eclipse Developers"&lt;/a&gt; is an overview of those OSGi techniques and facets that are typically not very well known by people coming from the Eclipse world to OSGi. So obviously we will talk about using ImportPackage instead of RequireBundle, the concept of OSGi services and why they are extremely useful, and some more fun stuff.&lt;br /&gt;&lt;br /&gt;I am looking forward to seeing you at EclipseCon!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-5564274130995219553?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/5564274130995219553/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=5564274130995219553' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5564274130995219553'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5564274130995219553'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/01/equinox-aspects-and-osgi-for-eclipse.html' title='Equinox Aspects and OSGi for Eclipse Developers at EclipseCon 2009'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-2299447324224921078</id><published>2009-01-26T16:24:00.003+01:00</published><updated>2009-01-26T16:34:53.073+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Refactoring'/><title type='text'>Refactoring book review by Ralph Johnson</title><content type='html'>Wow, what a great feedback! In &lt;a href="http://www.cincomsmalltalk.com/userblogs/ralph/blogView?showComments=true&amp;amp;printTitle=Emergent_design,_and_refactoring_in_large_projects&amp;amp;entry=3405976049"&gt;this blog posting&lt;/a&gt; Ralph Johnson reviews two books on emergent design and refactoring. I had to look twice, but the book on large refactorings that he reviewed was the one that my colleague &lt;a href="http://www.stefanroock.de/"&gt;Stefan Roock&lt;/a&gt; wrote together with me some time ago. I was so excited about this positive review from the father of so many work on refactoring that I completely forgot to refer to this from my blog... Now, a few weeks later, my brain is back to normal state (or worse, who knows) and I am happy to post this here... :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-2299447324224921078?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/2299447324224921078/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=2299447324224921078' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2299447324224921078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2299447324224921078'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2009/01/refactoring-book-review-by-ralph.html' title='Refactoring book review by Ralph Johnson'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-9029704213989926723</id><published>2008-12-12T20:37:00.001+01:00</published><updated>2008-12-12T20:39:33.198+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Equinox Aspects 1.0 M4 available for download</title><content type='html'>The forth milestone build of &lt;a href="http://www.eclipse.org/equinox/incubator/aspects"&gt;Equinox Aspects&lt;/a&gt; is available for &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-downloads.php"&gt;download&lt;/a&gt;. This build focuses on improving stability and reliability. Take a look at the &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-news-1.0-M4.html"&gt;1.0 M4 New &amp;amp; Noteworthy&lt;/a&gt; page for more details and a list of fixed bugs.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-9029704213989926723?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/9029704213989926723/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=9029704213989926723' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/9029704213989926723'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/9029704213989926723'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/12/equinox-aspects-10-m4-available-for.html' title='Equinox Aspects 1.0 M4 available for download'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-1914454697728301505</id><published>2008-12-03T10:26:00.003+01:00</published><updated>2008-12-03T10:34:02.396+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Equinox'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Next version of AJDT uses Equinox Aspects</title><content type='html'>This morning I read &lt;a href="http://dev.eclipse.org/mhonarc/lists/ajdt-dev/msg01208.html"&gt;this mailing list posting about using Equinox Aspects&lt;/a&gt; on the &lt;a href="http://www.eclipse.org/ajdt"&gt;AJDT&lt;/a&gt; and &lt;a href="http://www.eclipse.org/aspectj"&gt;AspectJ&lt;/a&gt; lists. Great to see that the AJDT team is going to use Equinox Aspects as supporting technology for the 1.6.2 release coming up at the end of this month. If you are interested you can find more details on this wiki page: &lt;a href="http://wiki.eclipse.org/JDT_weaving_features"&gt;JDT weaving features&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-1914454697728301505?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/1914454697728301505/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=1914454697728301505' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1914454697728301505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1914454697728301505'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/12/next-version-of-ajdt-uses-equinox.html' title='Next version of AJDT uses Equinox Aspects'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-274015721729213215</id><published>2008-11-21T23:10:00.006+01:00</published><updated>2008-11-22T00:18:39.087+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides and more from Eclipse Summit Europe 2008</title><content type='html'>I am back from the &lt;a href="http://www.eclipsecon.org/summiteurope2008/"&gt;Eclipse Summit Europe 2008&lt;/a&gt; in Ludwigsburg and found the time to put the slides from the &lt;a href="http://www.martinlippert.org/events/ESE2008-AspectWeavingOSGi.pdf"&gt;talk on Equinox Aspects online (pdf)&lt;/a&gt;. The slides are pretty much the same as from the previous talks I gave on aspect weaving for OSGi during the past weeks, so you won't find real new stuff in it. Nevertheless, giving this talk is just plain fun.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=217"&gt;RT symposium&lt;/a&gt; (I helped Heiko and Jeff a bit to organize it) on Tuesday morning was more or less an open discussion about topics around the RT project. We asked for answers to some questions upfront to the meeting and discussed those during the first part of the symposium. For sure some nice and interesting discussions came up during this. Nevertheless the second part of the symposium was a lot more lively and interesting from my point of view. We collected some topics, prioritized them and discussed them in the prioritized order (maybe something like "Open-Space Light"). There was a lot more discussion going on, more participation, sometimes even a bit controversal. Great. If I will participate in organizing such a symposium again sometime in the future, I will definitely vote for doing more (if not all) of the symposium that way.&lt;br /&gt;A rough outline of the symposium can be found at the &lt;a href="http://wiki.eclipse.org/RT_Symposium_ESE_2008"&gt;RT-Symposium-at-ESE-2008 wiki page&lt;/a&gt;. And I can recommand watching &lt;a href="http://blip.tv/file/1486425"&gt;the video podcast that Ian Skerrett recorded together with Jeff about the RT symposium&lt;/a&gt;. Its fun watching... :-)&lt;br /&gt;&lt;br /&gt;This was not the only video that Ian recorded at the event. He interviewed all the symposium organizers and published these great video podcast episodes (&lt;a href="http://ianskerrett.wordpress.com/2008/11/19/live-from-ese/"&gt;series 1&lt;/a&gt;, &lt;a href="http://ianskerrett.wordpress.com/2008/11/20/live-from-ese-2/"&gt;series 2&lt;/a&gt;). Thanks a lot, Ian, for these video podcasts. Absolutely great!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-274015721729213215?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/274015721729213215/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=274015721729213215' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/274015721729213215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/274015721729213215'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/11/slides-and-more-from-eclipse-summit.html' title='Slides and more from Eclipse Summit Europe 2008'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-6814325354031769332</id><published>2008-11-05T22:03:00.004+01:00</published><updated>2008-11-05T22:11:34.372+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides from WJAX 2008 online</title><content type='html'>Still being at the WJAX conference in Munich I took the time to put the slides online from all the talks I am involved in: &lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/WJAX2008-MultiProjektControlling.pdf"&gt;Agiles Multi-Projekt-Controlling beim Deutschen Ring&lt;/a&gt; (in german, together with Norbert Grosz)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/WJAX2008-UmstiegAufOSGi.pdf"&gt;Umstieg auf OSGi - aber wie?&lt;/a&gt; (in german, together with Matthias Lüken)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/WJAX2008-ClassloadingTypeVisibilityOSGi.pdf"&gt;Classloading and Type Visibility in OSGi&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/WJAX2008-LessonsLearnedFromTheEclipseWay.pdf"&gt;Lessons Learned from Adopting "The Eclipse Way"&lt;/a&gt; (in german)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/WJAX2008-AspectWeavingOSGi.pdf"&gt;Aspect Weaving for OSGi&lt;/a&gt; (together with Heiko Seeberger)&lt;/li&gt;&lt;/ul&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-6814325354031769332?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/6814325354031769332/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=6814325354031769332' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6814325354031769332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6814325354031769332'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/11/slides-from-wjax-2008-online.html' title='Slides from WJAX 2008 online'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-4751224311947286642</id><published>2008-11-02T15:04:00.001+01:00</published><updated>2008-11-02T15:04:49.017+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Equinox Aspects 1.0 M3 available for download</title><content type='html'>The third milestone build of &lt;a href="http://www.eclipse.org/equinox/incubator/aspects"&gt;Equinox Aspects&lt;/a&gt; is available for &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-downloads.php"&gt;download&lt;/a&gt;. This build focuses on improving stability and reliability and implicates major enhancements to some internal implementation details of Equinox Aspects. Take a look at the &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-news-1.0-M3.html"&gt;1.0 M3 New &amp;amp; Noteworthy&lt;/a&gt; page for more details and a list of fixed bugs.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-4751224311947286642?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/4751224311947286642/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=4751224311947286642' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4751224311947286642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4751224311947286642'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/11/equinox-aspects-10-m3-available-for.html' title='Equinox Aspects 1.0 M3 available for download'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-4828661622413509184</id><published>2008-10-25T23:23:00.000+02:00</published><updated>2008-10-25T23:23:26.522+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Looking forward to WJAX and Eclipse Summit Europe</title><content type='html'>Saying goodbye to &lt;a href="http://www.oopsla.org/oopsla2008/"&gt;OOPSLA&lt;/a&gt; I am already thinking about the next two conferences coming up on my schedule and which are highly promising to be very very interesting. In a bit more than one week there is the &lt;a href="http://it-republik.de/jaxenter/wjax/"&gt;WJAX&lt;/a&gt; conference in Munich, Germany. The program is fully packed with interesting stuff and I am quite happy to talk about some cool stuff as well.&lt;br /&gt;&lt;br /&gt;Starting on Monday I will participate in the &lt;a href="http://it-republik.de/jaxenter/wjax/tracks/?tid=995"&gt;Agile Day at WJAX&lt;/a&gt; where I will talk together with Norbert Grosz about experiences from introducing agile development to an insurance company.&lt;br /&gt;Next is the &lt;a href="http://it-republik.de/jaxenter/wjax/tracks/?tid=998"&gt;OSGi Special Day&lt;/a&gt; on Tuesday. Together with my colleaque Matthias Lübken we will talk about moving existing applications towards using OSGi. Later that day I will give my fun talk about classloading and type visibility in OSGi - I still love classloading stuff. :-) Wednesday I have the pleasure to share my experiences from using and adapting "The Eclipse Way" (the famous development process of the Eclipse team) for general in-house projects. And finally on Friday, at the &lt;a href="http://it-republik.de/jaxenter/wjax/tracks/?tid=1005"&gt;OSGi Experts Day&lt;/a&gt;, Heiko Seeberger and I are going to showcase &lt;a href="http://www.eclipse.org/equinox/incubator/aspects"&gt;Equinox Aspects &lt;/a&gt;to the attendees. This will be a real fun week in Munich!&lt;br /&gt;&lt;br /&gt;Not far away from WJAX is the &lt;a href="http://www.eclipsecon.org/summiteurope2008/"&gt;Eclipse Summit Europe&lt;/a&gt;,  starting at Tuesday, November 18th, in Ludiwgsburg, Germany. Together with Jeff McAffer and Heiko Seeberger I am organizing the &lt;a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=217"&gt;Runtime Symposium&lt;/a&gt; on Tuesday morning. Take care you don't miss this symposium to meet people who are also interested or involved in the runtime projects at Eclipse. In addition to that I will give (together with Heiko) a &lt;a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=28"&gt;short talk on Equinox Aspects&lt;/a&gt; on Wednesday.&lt;br /&gt;&lt;br /&gt;And last but not least I would be really happy to hear from you what you would like to know from the talk on classloading and type visibility in OSGi. If you have any questions you would like to get answered within that talk, please comment on this blog entry. I will try to incorporate them into the talk.&lt;br /&gt;&lt;br /&gt;See you there!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-4828661622413509184?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/4828661622413509184/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=4828661622413509184' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4828661622413509184'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4828661622413509184'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/10/looking-forward-to-wjax-and-eclipse.html' title='Looking forward to WJAX and Eclipse Summit Europe'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-223900745148451615</id><published>2008-10-23T17:01:00.003+02:00</published><updated>2008-10-23T17:09:35.504+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides from OOPSLA 2008</title><content type='html'>The slides of my OOPSLA demo on Equinox Aspects are now online - together with those of my tutorial about Spring Dynamic Modules:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/OOPSLA2008-Demo-AspectWeavingOSGi.pdf"&gt;Slides of OOPSLA-2008-Demo on Equinox Aspects (pdf)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/OOPSLA2008-SpringDM-Tutorial-v3.pdf"&gt;Slides of OOPSLA-2008-Tutorial on Spring Dynamic Modules (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-223900745148451615?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/223900745148451615/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=223900745148451615' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/223900745148451615'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/223900745148451615'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/10/slides-from-oopsla-2008.html' title='Slides from OOPSLA 2008'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-5881693841476941877</id><published>2008-10-09T19:22:00.003+02:00</published><updated>2008-10-10T11:51:33.929+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Podcast'/><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Building Platforms with Jeff McAffer on SE-Radio</title><content type='html'>Two days ago the episode that I recorded together with &lt;a href="http://www.se-radio.net/podcast/2008-10/episode-113-building-platforms-jeff-mcaffer"&gt;Jeff McAffer about building platforms&lt;/a&gt; was published at &lt;a href="http://www.se-radio.net/"&gt;SE-Radio&lt;/a&gt;. I enjoyed a lot asking Jeff so many questions about how to build successful platforms, good APIs and those things and got many very valueable insights. Don't miss it!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-5881693841476941877?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/5881693841476941877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=5881693841476941877' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5881693841476941877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5881693841476941877'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/10/building-platforms-with-jeff-mcaffer-on.html' title='Building Platforms with Jeff McAffer on SE-Radio'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-5155479122247291103</id><published>2008-10-04T22:50:00.006+02:00</published><updated>2008-10-04T23:14:27.665+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>New version of Spring Extension Factory available</title><content type='html'>When retrieving an OSGi service its good practice to use a timeout. Otherwise the operation could be blocked forever (in the case the service never appears). In past versions the Spring Extension Factory used a hard-coded timeout of 5 seconds. I chose this value more or less randomly, guessing that no bundle would hopefully need for than 5 seconds to create its application context. But I was proven wrong... :-)&lt;br /&gt;&lt;br /&gt;Therefore I made the timeout setting configurable. Now you can define the timeout value (in milliseconds) via a system property called "org.eclipse.springextensionfactory.timeout". To set the timeout to 20sec, for example, start the JVM with this option:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;-Dorg.eclipse.springextensionfactory.timeout=20000&lt;/pre&gt;&lt;br /&gt;I also added some more readable exceptions if no application context can be found or if the name of the bean to be used cannot be determined.&lt;br /&gt;&lt;br /&gt;The new version can be downloaded from here:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/download/springextensionfactory_1.0.3.zip"&gt;org.eclipse.springframework.util_1.0.3.zip&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Thanks for reporting the problem, Matthias!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-5155479122247291103?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/5155479122247291103/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=5155479122247291103' title='54 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5155479122247291103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5155479122247291103'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/10/new-version-of-spring-extension-factory.html' title='New version of Spring Extension Factory available'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>54</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-3601555738763868295</id><published>2008-10-02T15:38:00.003+02:00</published><updated>2008-10-02T15:59:29.428+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Eclipse Demo Camp in Hamburg - November 2008</title><content type='html'>After the &lt;a href="http://www.peterfriese.de/eclipse-democamp-hamburg-review/"&gt;great success of the Eclipse Ganymede Demo Camp 2008 in Hamburg&lt;/a&gt; in June this year &lt;a href="http://www.peterfriese.de/"&gt;Peter Friese&lt;/a&gt; and I are organizing another &lt;a href="http://wiki.eclipse.org/Eclipse_DemoCamps_November_2008/Hamburg"&gt;Demo Camp in Hamburg at the 10th of November&lt;/a&gt;. It will take place at the &lt;a href="http://www.east-hamburg.de/"&gt;East Hotel&lt;/a&gt;, a very fancy design hotel in Hamburg.&lt;br /&gt;&lt;br /&gt;The schedule for the demo camp is not finished yet. What we already know is that Harald Wellmann will talk about "Geodata Processing for Car Navigation Systems" on top of OSGi and Gerd Wütherich will give a quick demo on Spring Dynamic Modules. And there will be some more, I am sure.&lt;br /&gt;&lt;br /&gt;Don't miss it! You just need to register at the &lt;a href="http://wiki.eclipse.org/Eclipse_DemoCamps_November_2008/Hamburg"&gt;wiki page&lt;/a&gt;, come by at the 10th of November and enjoy the demos, food, drinks and other Eclipse enthusiasts. I am looking forward to seeing you all there!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-3601555738763868295?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/3601555738763868295/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=3601555738763868295' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3601555738763868295'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3601555738763868295'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/10/eclipse-demo-camp-in-hamburg-november.html' title='Eclipse Demo Camp in Hamburg - November 2008'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-5226576665279324034</id><published>2008-09-30T19:55:00.001+02:00</published><updated>2008-09-30T20:01:32.284+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Dynamic OSGi Applications (at WJAX 2008 and OOP 2009)</title><content type='html'>In the past years I have used OSGi mostly because of the modularity features. I loved to create small bundles with clear dependencies and visibilities between them - and I still do. I missed this kind of modularity in Java for so many years and I think that many teams still disregard this important modularity for their systems.&lt;br /&gt;&lt;br /&gt;But I always knew that the module layer (the one I love so much) is only a small part of the OSGi world. The real coolness of OSGi comes with its dynamics. Using OSGi you can install, update and uninstall bundles at runtime without restarting the JVM. Wow! Doesn't this sound cool?&lt;br /&gt;&lt;br /&gt;But wait. What the hack does OSGi do in those situations? If I start my applications, maybe thousands or millions of objects are created, relaxing in memory, referring to each other, talking to each other. Now this thing called OSGi updates a bundle at runtime. And my lovely objects? Are they updated magically under the hood and I don't need to take care of anything? Unfortunately (or I would say fortunately) not!!!&lt;br /&gt;&lt;br /&gt;Nothing is done to my objects automatically. Instead I need to take care of those situations myself (which is good news in some way). I need to understand what it means having bundles that can come and go while my system is running (maybe under high traffic). And I need to carefully design my bundles to behave nicely within those situations.&lt;br /&gt;&lt;br /&gt;Although its mentioned in every presentation on OSGi I assume that many people still don't know what this really means for building typical business applications. So many (and this includes myself) are used to build systems that are more or less a static set of deployed classes - once a release is deployed and used. Developers typically don't think about parts of the system being installed, updated or uninstalled at runtime without shutting down the application itself. And I think the structure of those systems reflects this. Even if the application is built out of a set of small bundles with clearly defined dependencies - in the end the transitive closure of the main application bundle contains everything. And the app assumes that once I have a reference to an object, this object will stay with me (and be fine) forever.&lt;br /&gt;&lt;br /&gt;I observed this situation in some projects and it made me think about it from time to time. I talked to colleagues (namely Gerd Wütherich and Kai Tödter) about this and we discussed our experiences. The result is that we currently try to find some common best practices and patterns to write more dynamic systems than we did in the past for an upcoming talk at &lt;a href="http://www.wjax.de/"&gt;WJAX 2008&lt;/a&gt; and &lt;a href="http://www.oopconference.com/"&gt;OOP 2009&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I am pretty excited that there is so much more to learn how to build really dynamic systems with OSGi and I am sure that this will change the way I write and structure OSGi bundles in the future. Yours, too?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-5226576665279324034?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/5226576665279324034/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=5226576665279324034' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5226576665279324034'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5226576665279324034'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/09/dynamic-osgi-applications-at-wjax-2008.html' title='Dynamic OSGi Applications (at WJAX 2008 and OOP 2009)'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-4218959774469989028</id><published>2008-09-22T10:21:00.003+02:00</published><updated>2008-09-22T10:45:26.252+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Podcast'/><title type='text'>"About-us" episode at SE-Radio</title><content type='html'>In between the general 10-days-schedule the &lt;a href="http://www.se-radio.net/"&gt;SE-Radio&lt;/a&gt; team has published a short episode about &lt;a href="http://www.se-radio.net/"&gt;SE-Radio&lt;/a&gt; itself. So if you want to know more about our download statistics, the team members, sound quality and more go to: &lt;a href="http://www.se-radio.net/podcast/2008-09/episode-111-about-us-2008"&gt;SE-Radio Episode 111: About Us 2008&lt;/a&gt; and enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-4218959774469989028?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/4218959774469989028/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=4218959774469989028' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4218959774469989028'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/4218959774469989028'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/09/about-us-episode-at-se-radio.html' title='&quot;About-us&quot; episode at SE-Radio'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-2795294626816770797</id><published>2008-09-06T13:57:00.004+02:00</published><updated>2008-09-06T14:09:39.925+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Podcast'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>OOPSLA 2008 Podcast is Online</title><content type='html'>The first episodes of this years &lt;a href="http://www.oopsla.org/oopsla2008/"&gt;OOPSLA&lt;/a&gt; &lt;a href="http://www.oopsla.org/oopsla2008/community/podcast.html"&gt;podcast&lt;/a&gt; are now online and it should be fun to hear what is coming up at the conference. The list of interviewees sounds very promising. :-)&lt;br /&gt;&lt;br /&gt;It's again produced by &lt;a href="http://dimsumthinking.com/"&gt;DimSumThinking&lt;/a&gt; and &lt;a href="http://www.se-radio.net/"&gt;SE-Radio&lt;/a&gt;. I am pretty excited and feel honored to be the one at SE-Radio who coordinates the episodes and records some of them. But again, without the enormous help of &lt;a href="http://www.voelter.de/"&gt;Markus&lt;/a&gt; (who records the other half of the SE-Radio-produced episodes) this won't be possible at all. So thanks again for all your help with this, Markus!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-2795294626816770797?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/2795294626816770797/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=2795294626816770797' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2795294626816770797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/2795294626816770797'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/09/oopsla-2008-podcast-is-online.html' title='OOPSLA 2008 Podcast is Online'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-3705588552892641398</id><published>2008-08-13T17:56:00.003+02:00</published><updated>2008-08-13T18:07:00.852+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Bugfix for Spring Extension Factory available</title><content type='html'>I fixed a problem that prevents the Spring Extension Factory (which I originally described &lt;a href="http://martinlippert.blogspot.com/2008/05/dependency-injection-for-extensions.html"&gt;in this post&lt;/a&gt;) to  work for bundles with Eclipse-LazyStart set to true. The new version works for bundles with or without the layz start setting:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/download/springextensionfactory_1.0.2.zip"&gt;org.eclipse.springframework.util_1.0.2.zip&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Thanks for reporting the problem as well as a solution, Jimmy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-3705588552892641398?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/3705588552892641398/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=3705588552892641398' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3705588552892641398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3705588552892641398'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/08/bugfix-for-spring-extension-factory.html' title='Bugfix for Spring Extension Factory available'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-7525339018095632476</id><published>2008-08-08T12:54:00.001+02:00</published><updated>2008-08-08T13:19:28.860+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Equinox Aspects 1.0 M1 is out</title><content type='html'>The first milestone build of &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/"&gt;Equinox Aspects&lt;/a&gt; 1.0 is available for download from the &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-downloads.php"&gt;Equinox Aspects download page&lt;/a&gt;. Take a look at the &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-news-1.0-M1.html"&gt;M1 New &amp;amp; Noteworthy&lt;/a&gt; page for details.&lt;br /&gt;&lt;br /&gt;I am especially happy that this milestone brings OSGi dynamics to aspect bundles. This makes AOP a much better citizen of the OSGi world and gives you a feeling of dynamic AOP, which is really cool... :-)&lt;br /&gt;&lt;br /&gt;And I need to mention that the performance of the standard caching has improved a lot. We are now very very close to our goal of running a woven system from cache at the same speed as without aspects.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-7525339018095632476?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/7525339018095632476/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=7525339018095632476' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7525339018095632476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7525339018095632476'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/08/equinox-aspects-10-m1-is-out.html' title='Equinox Aspects 1.0 M1 is out'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-1002836162314016526</id><published>2008-08-04T14:16:00.002+02:00</published><updated>2008-08-04T14:31:21.279+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Demo on Equinox Aspects at OOPSLA 2008</title><content type='html'>I am happy to announce that a demo on &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/"&gt;Equinox Aspects&lt;/a&gt; is accepted for presentation at the upcoming &lt;a href="http://www.oopsla.org/oopsla2008/"&gt;OOPSLA 2008&lt;/a&gt; conference in Nashville, Tennessee (Oct 19th-23rd). So I would be very very happy to see you all there!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-1002836162314016526?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/1002836162314016526/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=1002836162314016526' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1002836162314016526'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1002836162314016526'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/08/demo-on-equinox-aspects-at-oopsla-2008.html' title='Demo on Equinox Aspects at OOPSLA 2008'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-3854214590863852493</id><published>2008-07-28T09:48:00.001+02:00</published><updated>2008-07-28T10:20:15.910+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>ObjektForumNord about OSGi with Peter Kriens</title><content type='html'>I am pretty exited that &lt;a href="http://www.aqute.biz/Main/HomePage"&gt;Peter Kriens&lt;/a&gt; will join us for the &lt;a href="http://www.akquinet.de/objektforum"&gt;ObjektForumNord&lt;/a&gt;  (website in German, sorry), a series of talks in Germany. This time the session is in &lt;a href="http://maps.google.com/maps?f=q&amp;amp;hl=en&amp;amp;geocode=&amp;amp;q=hamburg,+germany&amp;amp;ie=UTF8&amp;amp;z=10"&gt;Hamburg&lt;/a&gt; (my hometown) and Peter is going to give a tutorial and a talk about OSGi. During the afternoon of September 9th, he will give an introductory tutorial about OSGi together with my colleague Matthias Lübken. The evening is filled with Peters talk on "Why Modularity is Important". I am really looking forward to it. Don't miss it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-3854214590863852493?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/3854214590863852493/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=3854214590863852493' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3854214590863852493'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3854214590863852493'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/07/objektforumnord-about-osgi-with-peter.html' title='ObjektForumNord about OSGi with Peter Kriens'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-6446216325915723525</id><published>2008-07-27T00:10:00.000+02:00</published><updated>2008-07-27T00:10:00.881+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>News from Equinox Aspects</title><content type='html'>Some people might have noticed already that some changes are going on inside the Equinox Aspects incubator. Heiko posted the details to the mailing list: &lt;a href="http://dev.eclipse.org/mhonarc/lists/equinox-dev/msg04653.html"&gt;http://dev.eclipse.org/mhonarc/lists/equinox-dev/msg04653.html&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I am pretty exited that we are moving towards being a better citizen of the Eclipse world. We have re-arranged our development process and aligned it with the process of the other projects at Eclipse. Take a look at our milestone planning and details on what keeps us busy at the &lt;a href="http://wiki.eclipse.org/Equinox_Aspects_Plan"&gt;Equinox Aspects Plan wiki page&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The first milestone is targeted at the 8th of August, less than two weeks from now. And on the way from milestone to milestone you can watch and test the progress by using the development builds from our &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-downloads.php"&gt;download page&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-6446216325915723525?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/6446216325915723525/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=6446216325915723525' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6446216325915723525'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6446216325915723525'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/07/news-from-equinox-aspects.html' title='News from Equinox Aspects'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-6273427580741287658</id><published>2008-07-25T15:31:00.002+02:00</published><updated>2008-07-25T15:47:32.623+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Podcast'/><title type='text'>Episode on Plugin Architectures at SE-Radio</title><content type='html'>Last weekend &lt;a href="http://www.se-radio.net/"&gt;SE-Radio&lt;/a&gt; published an &lt;a href="http://www.se-radio.net/podcast/2008-07/episode-104-plugin-architectures"&gt;episode about plugin-based architectures&lt;/a&gt;. Within this episode I talk with &lt;a href="http://www.kmarquardt.de/"&gt;Klaus Marquardt&lt;/a&gt; about different kinds of plugins and different kinds of systems build with or out of plugins.&lt;br /&gt;&lt;br /&gt;This episode was actually my first episode as host and we recorded it a long long time ago. But listening to it today disappoints me somehow. The episode contains a larger number of repetitions from my side and I didn't achieve to make it a condensed episode. Just to be clear: This was &lt;span style="font-weight: bold;"&gt;not &lt;/span&gt;the fault of Klaus, whom I interviewed in this episode - not at all. Again it reveals that recording podcast episodes is a learning process - just like software engineering is.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-6273427580741287658?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/6273427580741287658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=6273427580741287658' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6273427580741287658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/6273427580741287658'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/07/episode-on-plugin-architectures-at-se.html' title='Episode on Plugin Architectures at SE-Radio'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-848651168800244284</id><published>2008-07-25T14:03:00.002+02:00</published><updated>2008-07-25T14:16:50.502+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>"Silver Medal" for Equinox Aspects Talk</title><content type='html'>The &lt;a href="http://www.java-forum-stuttgart.de/vortragsranking.html"&gt;attendees session ranking from Java-Forum-Stuttgart 2008&lt;/a&gt; is now online and I am more than happy to see that my talk about Equinox Aspects (&lt;a href="http://www.martinlippert.org/events/JFS-2008-AspectWeavingOSGi.pdf"&gt;slides&lt;/a&gt;, &lt;a href="http://martinlippert.blogspot.com/2008/07/code-examples-from-aspect-weaving-for.html"&gt;code examples&lt;/a&gt;) won the silver medal. How cool is that? And its great to see that more and more people are interested in &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/"&gt;Equinox Aspects&lt;/a&gt;. Wonderful...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-848651168800244284?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/848651168800244284/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=848651168800244284' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/848651168800244284'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/848651168800244284'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/07/silver-medal-for-equinox-aspects-talk.html' title='&quot;Silver Medal&quot; for Equinox Aspects Talk'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-1077313748656287107</id><published>2008-07-12T19:24:00.000+02:00</published><updated>2008-07-12T22:34:05.981+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Dependency Injection for Extensions, Third Edition</title><content type='html'>As you might have read from my previous posting I created an example that demonstrates the usage of &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/"&gt;Equinox Aspects&lt;/a&gt; as the load-time weaving engine for &lt;a href="http://www.springframework.org/osgi"&gt;Spring Dynamic Modules&lt;/a&gt;. Now its time to describe this in more detail. :-)&lt;br /&gt;&lt;br /&gt;My first idea behind this combination was to use the &lt;a href="http://static.springframework.org/spring/docs/2.5.x/reference/aop.html#aop-atconfigurable"&gt;@Configurable annotation&lt;/a&gt; to use Spring's dependency injection mechanism for arbitrary objects which you typically don't create via the application context of spring. The default examples for this are plain domain objects, extensions are another example (they are typically created by the extension registry of Eclipse). Spring realizes the dependency injection for those objects by weaving an aspect into their classes. This aspect takes care of injecting the dependencies after each object creation. And this is the point where Equinox Aspects comes into play.&lt;br /&gt;&lt;br /&gt;Fortunately Spring ships as a set of OSGi bundles. This is also true for "spring-aspects.jar", the JAR archive that contains the aspect that is responsible for making the @Configurable annotation work. And you can use Equinox Aspects to weave this aspect into your bundles wherever you would like to use the @Configurable extension. Sounds good, eh?&lt;br /&gt;&lt;br /&gt;Ok, what do you need to do? Let’s go through the example step by step. First you need a target platform that contains the following:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Your standard target platform (Eclipse 3.4 SDK, for example, if you develop RCP apps)&lt;/li&gt;&lt;li&gt;The latest Equinox Aspects dev build (&lt;a href="http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-downloads.php"&gt;http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-downloads.php&lt;/a&gt;)&lt;/li&gt;&lt;li&gt;The matching &lt;a href="http://www.eclipse.org/ajdt"&gt;AJDT&lt;/a&gt; version (btw: you don't need the full AJDT installation within your target platform. "org.aspectj.runtime" and "org.aspectj.weaver" is all you need)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.springframework.org/download"&gt;Spring 2.5.5&lt;/a&gt; bundles&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.springframework.org/download"&gt;Spring Dynamic Modules 1.1.0&lt;/a&gt; bundles&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Now you have a class that would like to use @Configurable. In my example it is a view for an RCP application that looks somewhat like this:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;@Configurable&lt;br /&gt;public class View extends ViewPart {&lt;br /&gt;&lt;br /&gt; private Service service;&lt;br /&gt;&lt;br /&gt; public void setService(Service service) {&lt;br /&gt;   this.service = service;&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public void createPartControl(Composite parent) {&lt;br /&gt; ...&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Then you define in the spring context of the same bundle the view as a spring bean, including the "service" property (the dependency that should be injected):&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;lt;bean class="org.eclipse.example.springdm.rcpview.View" scope="prototype"&amp;gt;&lt;br /&gt;  &amp;lt;property name="service" ref="myservice"/&amp;gt;&lt;br /&gt;&amp;lt;/bean&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;bean id="myservice" class="org.eclipse.example.springdm.rcpview.Service"/&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Take care to define the bean for the view as of scope "prototype". This is necessary to tell spring that this bean definition should be used as prototype for various instances.&lt;br /&gt;Now we need to tell your bundle to be woven with the spring aspect. Therefore you just define the aspect bundle as required bundle:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;Require-Bundle: org.eclipse.ui,&lt;br /&gt; org.eclipse.core.runtime,&lt;br /&gt; org.springframework.bundle.spring.aspects&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Now Equinox Aspects (if started correctly) weaves the aspect into your bundle wherever the @Configurable annotation is used. The next step is to tell the spring context that it should use load-time weaving and annotation configuration (plain old spring configuration for load-time weaving, nothing special here):&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;lt;context:spring-configured&amp;gt;&lt;br /&gt;&amp;lt;context:annotation-config&amp;gt;&lt;br /&gt;&amp;lt;context:load-time-weaver class="org.springframework.instrument.classloading.InstrumentationLoadTimeWeaver"&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;This also requires some more import package statements within your manifest:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;Import-Package: org.aspectj.lang,&lt;br /&gt; org.aspectj.runtime.reflect,&lt;br /&gt; org.springframework.instrument.classloading,&lt;br /&gt; org.springframework.beans.factory.annotation&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;The first two import statements are necessary because they are needed if an aspect gets woven into one of your classes. A more elegant solution for this would be to reexport those packages from the spring-aspects bundle, but they didn’t define the reexport in their manifest. Therefore you need to import them manually.&lt;br /&gt;The last step is to take care of the startup sequence of your bundle. If the extension is created, your bundle should be activated to get the spring context created. This creation of the spring context should happen synchronously to ensure that the context is created when your extension object is created – otherwise the dependency injection would not work. Therefore I declare in the manifest:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;Eclipse-LazyStart: true&lt;br /&gt;Spring-Context: *;create-asynchronously:=false&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;If you would like to take a look at the complete example that I used, you can download it here:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/download/examples/springextensionsviaaspects-20080709.zip"&gt;Dependency Injection for RCP-Views using Spring &amp;amp; Equinox Aspects (zip)&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Feedback and questions are always welcome!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-1077313748656287107?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/1077313748656287107/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=1077313748656287107' title='33 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1077313748656287107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1077313748656287107'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/07/dependency-injection-for-extensions.html' title='Dependency Injection for Extensions, Third Edition'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>33</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-3898117905633642466</id><published>2008-07-12T00:18:00.000+02:00</published><updated>2008-07-12T00:19:31.939+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Code Examples from "Aspect Weaving for OSGi" Talk</title><content type='html'>As promised, here are the projects of my live demos from "&lt;a href="http://www.java-forum-stuttgart.de/abstracts.html#A2"&gt;Aspect Weaving for OSGi&lt;/a&gt;" at last weeks &lt;a href="http://www.java-forum-stuttgart.de/"&gt;Java-Forum-Stuttgart 2008&lt;/a&gt;.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/download/examples/eclipsemonitorviaaspects-20080709.zip"&gt;Eclipse Monitor Demo (zip)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/download/examples/springextensionsviaaspects-20080709.zip"&gt;Dependency Injection for RCP-Views using Spring &amp;amp; Equinox Aspects (zip)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Eclipse Monitor Demo&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;This demo features the relatively old Eclipse Monitor application that Chris Laffra wrote a while ago. It visualizes plugin activities within your Eclipse application and you can analyze what is going on. This monitor uses &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/"&gt;Equinox Aspects&lt;/a&gt; to weave an aspect into all your bundles at load-time to gather the information of what is going on at runtime. It uses AspectJ advises for all methods and object creations. While this is a pretty heavy use of load-time weaving (you will notice a huge performance impact at first startup) it demos nicely the caching feature of Equinox Aspects. The second startup of your monitored app will perform very similar to a startup without any aspect weaving.&lt;br /&gt;&lt;br /&gt;To run the example: Within your development environment you should have &lt;a href="http://www.eclipse.org/ajdt"&gt;AJDT&lt;/a&gt; installed to work with AspectJ. In your target environment you should have included your favorite IDE (as example RCP app to monitor), the matching &lt;a href="http://www.eclipse.org/ajdt"&gt;AJDT&lt;/a&gt; version, and the latest Equinox Aspects development build from here: &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-downloads.php"&gt;http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-downloads.php&lt;/a&gt;.&lt;span style="font-weight: bold;"&gt; Notive: &lt;/span&gt;You need to install the latest dev build, not one of the archived builds. Once you have this you should be ready to run the example. Just import the projects in your workspace and use the included launch configuration.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Dependency Injection with Spring Dynamic Modules and Equinox Aspects&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Spring provides this nice mechanism to inject dependencies in domain objects via the @Configurable annotation (see more here: &lt;a href="http://static.springframework.org/spring/docs/2.5.x/reference/aop.html#aop-atconfigurable"&gt;http://static.springframework.org/spring/docs/2.5.x/reference/aop.html#aop-atconfigurable&lt;/a&gt;).&lt;br /&gt;The main difference to general spring beans is that the creation of those domain objects is not done by the application context of Spring. Therefore Spring uses an aspect to call the application context after object creation to inject all necessary dependencies. In plain old Spring applications this aspect is woven into the system using load-time weaving.&lt;br /&gt;Wouldn't that be a nice mechanism to inject dependencies into Eclipse extensions (like views or editors)? Just annotate your extension with @Configurable and define the dependencies to be injected inside the application context of your bundle (using the Spring Dynamic Modules stuff)?&lt;br /&gt;&lt;br /&gt;One way of doing this is to use &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/"&gt;Equinox Aspects&lt;/a&gt; together with &lt;a href="http://www.springframework.org/osgi"&gt;Spring Dynamic Modules&lt;/a&gt;. Just use the spring-aspects.jar from your spring distro (its already an OSGi bundle) and enable Equinox Aspects weaving - and you are done. It just works! :-)&lt;br /&gt;&lt;br /&gt;To run the example: You don't need any special support within your development environment. Instead your target platform should be configured carefully. For the example projects I used Eclipse 3.3.2 as target platform, added AJDT, added the latest dev build of Equinox Aspects, Spring 2.5.4 bundles and Spring Dynamic Modules 1.1.0 bundles. Import the example projects from the zip file into your workspace and use the included launch config to run the demo. The example injects a spring bean into the view extension.&lt;br /&gt;&lt;br /&gt;I will give more detailed information on how this Equinox Aspects weaving can be used together with Spring Dynamic Modules in an upcoming post.&lt;br /&gt;&lt;br /&gt;If you observe any problems or if I forgot something in this description, please let me know.&lt;br /&gt;&lt;br /&gt;Have fun with the examples!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-3898117905633642466?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/3898117905633642466/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=3898117905633642466' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3898117905633642466'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3898117905633642466'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/07/code-examples-from-aspect-weaving-for.html' title='Code Examples from &quot;Aspect Weaving for OSGi&quot; Talk'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-3406823016488489357</id><published>2008-07-03T14:45:00.002+02:00</published><updated>2008-07-03T14:50:47.454+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides from "Aspect Weaving for OSGi" Talk</title><content type='html'>This morning I gave a presentation at the Java-Forum-Stuttgart conference on Aspect Weaving for OSGi. The slides of this talk are now available for download:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.com/events/JFS-2008-AspectWeavingOSGi.pdf"&gt;Aspect Weaving for OSGi (pdf)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;The code for all live demos from the presentation will follow shortly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-3406823016488489357?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/3406823016488489357/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=3406823016488489357' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3406823016488489357'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3406823016488489357'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/07/blog-post.html' title='Slides from &quot;Aspect Weaving for OSGi&quot; Talk'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-5464849484055106815</id><published>2008-06-24T10:00:00.001+02:00</published><updated>2008-06-24T10:00:08.295+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Reminder: Equinox Aspects at Java-Forum-Stuttgart 2008</title><content type='html'>This is just a friendly reminder that you have the chance to see &lt;a href="http://www.eclipse.org/equinox/incubator/aspects/"&gt;Equinox Aspects&lt;/a&gt; live and in action at the upcoming &lt;a href="http://www.java-forum-stuttgart.de/"&gt;Java-Forum-Stuttgart 2008&lt;/a&gt; next week at the 3rd of July. I will give a talk at this nice conference in Stuttgart, Germany, about &lt;a href="http://www.java-forum-stuttgart.de/abstracts.html#A2"&gt;Aspect Weaving for OSGi&lt;/a&gt;. And the talk will be fully packed with a number of live demos including:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Monitoring Eclipse with aspects&lt;/li&gt;&lt;li&gt;Installing, updating and uninstalling aspects at runtime (dynamics for aspects)&lt;/li&gt;&lt;li&gt;Using Equinox Aspects together with Spring Dynamic Modules&lt;/li&gt;&lt;/ul&gt;It will be really really cool, don't miss it! :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-5464849484055106815?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/5464849484055106815/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=5464849484055106815' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5464849484055106815'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/5464849484055106815'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/06/reminder-equinox-aspects-at-java-forum.html' title='Reminder: Equinox Aspects at Java-Forum-Stuttgart 2008'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-1301569336424229423</id><published>2008-06-22T21:26:00.003+02:00</published><updated>2008-06-22T21:42:32.782+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Slides and Examples from Spring-Dynamic-Modules-Talk at the OSGi Community Event 2008</title><content type='html'>Already more than a week ago I gave a talk at the &lt;a href="http://www.osgi.org/CommunityEvent2008/HomePage?from=CommunityEvent.HomePage"&gt;OSGi Community Event 2008&lt;/a&gt; in Berlin about the Spring Dynamic Modules project. Giving the talk was fun, I used a number of live demos to showcase Spring DM in action. The slides are now online:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/events/OSGiCommunityEvent2008-SpringDM-Talk.pdf"&gt;Talk: Spring Dynamic Modules by Example (pdf)&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;The code for all the demos can be found at the &lt;a href="http://blog.wuetherich.com/index.php?/archives/9-JAX-08-Talk-on-Spring-Dynamic-Modules.html"&gt;JAX blog entry of my colleque Gerd Wütherich&lt;/a&gt;, who prepared most of this talk. Thanks again for the great work, Gerd!&lt;br /&gt;&lt;br /&gt;For those who are new to Spring Dynamic Modules: This project of the Spring portfolio basically allows you to use the Spring framework within an OSGi environment in a very nice and easy way. You can find more information on the &lt;a href="http://www.springframework.org/osgi"&gt;Spring Dynamic Modules homepage&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-1301569336424229423?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/1301569336424229423/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=1301569336424229423' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1301569336424229423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/1301569336424229423'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/06/slides-and-examples-from-spring-dynamic.html' title='Slides and Examples from Spring-Dynamic-Modules-Talk at the OSGi Community Event 2008'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-402903412895865299</id><published>2008-06-19T09:20:00.002+02:00</published><updated>2008-06-19T09:28:09.393+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><title type='text'>Report from Eclipse Demo Camp in Hamburg</title><content type='html'>Last Monday the Ganymede Eclipse Demo Camp took place in Hamburg. More than 40 attendees showed up and enjoyed a number of great presentations. Peter Friese wrote up a &lt;a href="http://www.peterfriese.de/eclipse-democamp-hamburg-review/"&gt;nice summary of the demo camp&lt;/a&gt;. I enjoyed the event a lot and I am looking forward to organizing the next Eclipse Demo Camp again together with Peter. Was a lot of fun! Thanks Peter!&lt;br /&gt;&lt;br /&gt;Also many many thanks to Arne Roock for his great support in organizing the event and finding this cool location! His support is absolutely priceless!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-402903412895865299?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/402903412895865299/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=402903412895865299' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/402903412895865299'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/402903412895865299'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/06/report-from-eclipse-demo-camp-in.html' title='Report from Eclipse Demo Camp in Hamburg'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-3839379905675083162</id><published>2008-06-10T16:54:00.004+02:00</published><updated>2008-06-10T17:10:03.219+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Eclipse Demo Camp in Hamburg is Approaching Fast</title><content type='html'>Don't forget to register for the &lt;a href="http://wiki.eclipse.org/Eclipse_DemoCamps_2008_-_Ganymede_Edition/Hamburg"&gt;Eclipse Demo Camp in Hamburg&lt;/a&gt; - it is approaching fast. Starting next Monday at the &lt;a href="http://en.euro2008.uefa.com/index.html"&gt;EM-2008&lt;/a&gt;-friendly time of 6pm we will see some interesting demos, have free drinks and food (thanks to our sponsors: Eclipse Foundation, itemis and it-agile) and a lot of fun, I assume... :-) The demo camp takes place at the former coffee exchange - a really cool location:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://wiki.eclipse.org/images/9/9a/Kaffeeboerse.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px;" src="http://wiki.eclipse.org/images/9/9a/Kaffeeboerse.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;So, have fun at the demo camp and many thanks to my colleague Arne Roock for his organizational support. Absolutely priceless.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-3839379905675083162?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/3839379905675083162/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=3839379905675083162' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3839379905675083162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/3839379905675083162'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/06/eclipse-demo-camp-in-hamburg-is.html' title='Eclipse Demo Camp in Hamburg is Approaching Fast'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-337279561337238089</id><published>2008-06-08T20:29:00.004+02:00</published><updated>2008-06-08T20:44:48.735+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='AOP'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Equinox Aspects at Allianz</title><content type='html'>Some days ago I got a copy of the latest German &lt;a href="http://it-republik.de/jaxenter/eclipse-magazin-ausgaben/Launch-%26-Debug-000257.html"&gt;Eclipse-Magazine (Vol. 15, 3/2008)&lt;/a&gt; and I found an experience report article about using &lt;a href="http://www.eclipse.org/equinox/incubator/aspects"&gt;Equinox Aspects&lt;/a&gt;. Cool! Great to read that people are using Equinox Aspects in large strategic projects. This report is about using Equinox Aspects for advanced performance tracing in a large production system at Allianz, a major insurance company in Germany. So if you are happy reading articles in German, take a look at it!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-337279561337238089?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/337279561337238089/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=337279561337238089' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/337279561337238089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/337279561337238089'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/06/equinox-aspects-at-allianz.html' title='Equinox Aspects at Allianz'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-8394204982193994983</id><published>2008-06-05T22:29:00.002+02:00</published><updated>2008-06-05T22:38:53.095+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Podcast'/><category scheme='http://www.blogger.com/atom/ns#' term='OSGi'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>SE-Radio Live at the OSGi Community Event 2008</title><content type='html'>The &lt;a href="http://www.osgi.org/CommunityEvent/HomePage"&gt;OSGi Community Event 2008&lt;/a&gt; starts next week in Berlin, Germany. And there will be a special event taking place after the reception on Tuesday evening: We will host a&lt;span style="font-weight: bold;"&gt; live &lt;/span&gt;&lt;a style="font-weight: bold;" href="http://www.se-radio.net/"&gt;SE-Radio&lt;/a&gt;&lt;span style="font-weight: bold;"&gt; recording session&lt;/span&gt;. Isn't this cool? We are going to have a panel like discussion session with some interesting people and hopefully questions from the audience - all going into the se-radio recording and becoming part of that episode. So if you are going to the OSGi Community Event make sure you don't miss the SE-Radio live session - from 8pm to 9pm in the main room.&lt;br /&gt;And many many thanks to Peter Kriens for making this possible and helping so much in organizing this!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-8394204982193994983?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/8394204982193994983/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=8394204982193994983' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8394204982193994983'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/8394204982193994983'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/06/se-radio-live-at-osgi-community-event.html' title='SE-Radio Live at the OSGi Community Event 2008'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-7842462134523474442</id><published>2008-06-04T23:36:00.004+02:00</published><updated>2008-06-04T23:55:28.728+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Agile Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Conferences'/><title type='text'>Open XP-Days Germany 2008</title><content type='html'>The XP-Days conference series is a nice event series throughout Europe for people interested in agile software development (not reduced to Extreme Programming) and related topics. &lt;a href="http://www.xp-days.de/2008/de/index.html"&gt;This years XP-Days Germany&lt;/a&gt; will take place in Hamburg from November 27th to 29th.&lt;br /&gt;In opposite to the past XP-Days this years conference has an open review process in parallel to the submission process. This idea has two great advantages: everybody can review and comment on submissions via the &lt;a href="http://www.conftool.com/xpdays2008"&gt;submission system&lt;/a&gt; and people who submit sessions can benefit from those reviews and feedbacks by improving their submissions before the program committee decide. Sounds good, eh? I am used to this kind of open submissions from the EclipseCon conference and I must say: I like it a lot.&lt;br /&gt;So don't forget to submit a proposal or give feedback on existing proposals - or simply join the conference this November!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-7842462134523474442?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/7842462134523474442/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=7842462134523474442' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7842462134523474442'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/7842462134523474442'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/06/open-xp-days-2008.html' title='Open XP-Days Germany 2008'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18490491.post-9060214678566157927</id><published>2008-05-28T23:30:00.005+02:00</published><updated>2008-05-29T00:02:18.354+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><category scheme='http://www.blogger.com/atom/ns#' term='Planet-Eclipse'/><title type='text'>Dependency Injection for Extensions, Second Edition</title><content type='html'>At this years EclipseCon I implemented an extension factory utility that could be used to delegate the creation of an extension object to a spring context (if you are using &lt;a href="http://www.springframework.org/osgi"&gt;Spring Dynamic Modules&lt;/a&gt;). The result was that you were able to define your extensions as spring beans including all the nice spring features (dependency injection, aop, dessert topping, whatever...). That first implementation was nice, but had a number of stupid limitations (worked only for active bundles, for example). &lt;span style="font-weight: bold;"&gt;The good news is: A new version is available that includes some nice improvements... :-)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Firstofall, here is the new version of the Spring-Extension-Factory:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.martinlippert.org/download/springextensionfactory_1.0.1.zip"&gt;org.eclipse.springframework.util_1.0.1.zip&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;The new features are:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Ability to declare the bean-id explicitly within the extension definition&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Automatic start of non-active bundles (and application context creation via Spring Dynamic Modules) when an extension is being created&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;How can I use this extension factory? Lets look at some examples. Lets assume you implement an RCP application and you would like to define a view as spring bean to inject some dependencies. First, you declare your spring bean inside the spring context:&lt;br /&gt;&lt;pre&gt;&amp;lt;bean id="myview"&lt;br /&gt;    class="org.eclipse.example.springdm.rcpview.View"&lt;br /&gt;    scope="prototype"&amp;gt;&lt;br /&gt;  &amp;lt;property name="myService" ref="serviceBean"/&amp;gt;&lt;br /&gt;&amp;lt;/bean&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Okay, this defines the spring bean called "myview" and injects a bean with the id "serviceBean" as a dependency into my view. The class of the view is the normal view implementation that you are familiar with. Don't forget to declare the bean as of scope "prototype". Otherwise spring would return always the same object every time an extension should be created (which is not the contract of the extension mechansim).&lt;br /&gt;&lt;br /&gt;Now we define the extension in the plugin.xml file:&lt;br /&gt;&lt;pre&gt;&amp;lt;extension point="org.eclipse.ui.views"&amp;gt;&lt;br /&gt;  &amp;lt;view name="Message"&lt;br /&gt;    allowmultiple="true"&lt;br /&gt;    icon="icons/sample2.gif"&lt;br /&gt;    class="&lt;span style="font-weight: bold;"&gt;org.eclipse.springframework.&lt;br /&gt;          util.SpringExtensionFactory:myview&lt;/span&gt;"&lt;br /&gt;    id="org.eclipse.example.springdm.rcpview.view"&amp;gt;&lt;br /&gt;  &amp;lt;/view&amp;gt;&lt;br /&gt;&amp;lt;/extension&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;The class that is now referenced in the extension instead of the view itself is the spring extension factory followed by a colon and the id of our bean from the spring context. The rest of the extension definition looks exactly as before (without the extension factory).&lt;br /&gt;&lt;br /&gt;The Spring Extension Factory includes two additional options to refer to the bean id within the extension definition. This is the strategy that I implemented into the extension factory:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;If a bean-id is explicitly defined (like in the example above), use this id to lookup the bean.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;If not, search for an id attribute within the contribution element of the extension and use it as the bean-id.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;If no id attribute is found inside the contribution element, try to use the id of the extension itself as bean-id.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;The first option is the most explicit one. The second option works just for those extension definitions where the corresponding extension point schema defines an id attribute as part of the specific extension (this is the case for views, but obviously not for all extension points). The third option can be used for all extension points but is less explicit that the first one. In the end its a matter of taste which option you prefer.&lt;br /&gt;&lt;br /&gt;Comments, feedback and improvements, of course, highly welcome.&lt;br /&gt;&lt;br /&gt;Have fun with it!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18490491-9060214678566157927?l=martinlippert.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinlippert.blogspot.com/feeds/9060214678566157927/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=18490491&amp;postID=9060214678566157927' title='29 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/9060214678566157927'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18490491/posts/default/9060214678566157927'/><link rel='alternate' type='text/html' href='http://martinlippert.blogspot.com/2008/05/dependency-injection-for-extensions.html' title='Dependency Injection for Extensions, Second Edition'/><author><name>Martin Lippert</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>29</thr:total></entry></feed>
