<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" version="2.0">

<channel>
	<title>Streamhead</title>
	
	<link>http://www.streamhead.com</link>
	<description>multimedia webapplication thoughts and experiments</description>
	<lastBuildDate>Fri, 19 Mar 2010 09:00:00 +0000</lastBuildDate>
	
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/streamhead" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="streamhead" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><geo:lat>51.0333</geo:lat><geo:long>3.7000</geo:long><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">streamhead</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>3 Blogging Clients Tested</title>
		<link>http://www.streamhead.com/3-blogging-clients-tested/</link>
		<comments>http://www.streamhead.com/3-blogging-clients-tested/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 09:00:00 +0000</pubDate>
		<dc:creator>Peter Backx</dc:creator>
				<category><![CDATA[MetaMedia]]></category>

		<guid isPermaLink="false">http://www.streamhead.com/3-blogging-clients-tested/</guid>
		<description><![CDATA[I&#8217;m currently testing a number of blogging clients. Clients that free you from the web browser for post writing and editing. This is a post written in and posted via Zoundry Raven. Among the many blogging clients available, I&#8217;ve selected three for closer inspection: the aforementioned Raven, BlogDesk and Scribefire. The last one is an [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m currently testing a number of blogging clients. Clients that free you from the web browser for post writing and editing. This is a post written in and posted via <a href="http://www.zoundryraven.com/" target="_blank" title="Zoundry Raven: Think - Write - Publish">Zoundry Raven</a>. Among the many blogging clients available, I&#8217;ve selected three for closer inspection: the aforementioned <a href="http://www.zoundryraven.com/" target="_blank" title="Zoundry Raven: Think - Write - Publish">Raven</a>, <a href="http://www.blogdesk.org/en/index.htm" target="_blank" title="BlogDesk">BlogDesk</a> and <a href="http://www.scribefire.com/" target="_blank" title="Scribefire: Fire up your blogging">Scribefire</a>. The last one is an add-on for Firefox, the first two are standalone Windows applications. All support pretty much every blogging platform available. This post goes into some of the differences.</p>
<p> <span id="more-2091"></span><br />
<h2><a href="http://www.scribefire.com/" target="_blank" title="Scribefire">Scribefire</a></h2>
<p><img src="http://www.streamhead.com/wp-content/uploads/2010/03/zrtn_001p51c3e416_tn.jpg" style="WIDTH: 187px; DISPLAY: inline; FLOAT: right; HEIGHT: 250px" height="250" width="187"/></p>
<p>Pro:</p>
<ul>
<li>This is a Firefox plug-in. And that is both a good and a bad thing.</li>
<li>Conceptually, integrating an editor in my favorite browser looks like a winner. I&#8217;ve got all my prefered plug-ins and on-line tools right there, so this sounds like a winner.</li>
</ul>
<p>Against:</p>
<ul>
<li>This is a Firefox plug-in. And that is both a good and a bad thing.</li>
<li>The interface is a mess. I tested this plug-in a few years ago, but the interface doesn&#8217;t seem to have evolved much. I&#8217;m not sure if this is a technical reason (it&#8217;s build on XUL) or laziness.</li>
<li>The integration really isn&#8217;t quite as I imagined. I&#8217;m not sure what I expected, but certainly a little more than a Technorati search.</li>
<li>Really, the interface. Buttons are all over the place. Most elements aren&#8217;t properly aligned which gives a cluttered impression.</li>
</ul>
<h2><a href="http://www.blogdesk.org/" target="_blank" title="BlogDesk">BlogDesk</a></h2>
<p>Pro:</p>
<ul>
<li>BlogDesk offers a fairly intuitive one-window interface with every option you need close-by.</li>
<li>An extensive image wizard, with which you can create some pretty neat effects, right out of the box. No PhotoShop needed.</li>
<li>Post templates. I haven&#8217;t tested this feature yet, but this could be mighty useful if you publish a series of articles or regularly returning special features.</li>
<li>It&#8217;s possible to add custom fields to a post on a WordPress blogs.</li>
</ul>
<p>Against:</p>
<ul>
<li>No multi document interface. For me, this is a fairly major drawback, as I tend to work on many things at once. You can save draft posts, but they aren&#8217;t easily browsable.</li>
</ul>
<h2><a href="http://www.zoundryraven.com/" target="_blank" title="Zoundry Raven">Raven</a></h2>
<p><img src="http://www.streamhead.com/wp-content/uploads/2010/03/zrtn_002n73205055_tn.jpg" style="WIDTH: 250px; DISPLAY: inline; FLOAT: right; HEIGHT: 187px" height="187" width="250"/>Pro:</p>
<ul>
<li>Raven has great content management options. First, there&#8217;s a specialized explorer-like interface to quickly manage blog posts (published and drafts), links, images and tags. And secondly, you can add a number of media storage sources. I haven&#8217;t experimented with this feature yet, but it looks promising.</li>
<li>Recently, Raven has been open sourced. It&#8217;s a Python application that is freely available from Google Code. The disadvantage is that the original creators no longer have time to seriously work on the application.</li>
</ul>
<p>Against:</p>
<ul>
<li>There&#8217;s a pretty annoying bug where you can&#8217;t insert H2 and other header tags in the WYSIWYG editor. You can still use the XHTML editor to add them, but in a tool this good, this little blemish stands out.</li>
<li>Sometimes, the interface isn&#8217;t very intuitive. For instance, if you want to schedule a post for future publishing, you need to click on the &#8220;configure&#8221; drop-down and select the appropriate tab. Not very intuitive at all.</li>
</ul>
<p>There&#8217;s still one thing missing in all of these editors, and that is the possibility to add a thumbnail. Since version 2.9, WordPress has implemented a standardized way of adding a thumbnail to a post. Something that I solved via custom fields, but that never felt right. So I was happy to implement the thumbnails in the new design. Too bad, none of the clients support this (probably with very good reason, this isn&#8217;t exactly anything standardized).</p>
<p>So for now, I&#8217;m in a limbo, either set the thumbnail manually every time, or not use the thumbnail functionality at all.</p>
<p>But one thing is sure, typing in a proper text entry application is truly a relief from the on-line editor.</p>
<p>Do you have a preferred blog editor?</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/streamhead?a=d4GMbYY2Pms:0TnerI8_njY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/streamhead?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=d4GMbYY2Pms:0TnerI8_njY:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/streamhead?i=d4GMbYY2Pms:0TnerI8_njY:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=d4GMbYY2Pms:0TnerI8_njY:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/streamhead?i=d4GMbYY2Pms:0TnerI8_njY:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=d4GMbYY2Pms:0TnerI8_njY:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/streamhead?i=d4GMbYY2Pms:0TnerI8_njY:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=d4GMbYY2Pms:0TnerI8_njY:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/streamhead?i=d4GMbYY2Pms:0TnerI8_njY:F7zBnMyn0Lo" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.streamhead.com/3-blogging-clients-tested/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>ActionScript 3 Minimal Comps for Quick Prototyping</title>
		<link>http://www.streamhead.com/minimal-components/</link>
		<comments>http://www.streamhead.com/minimal-components/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 08:00:41 +0000</pubDate>
		<dc:creator>Peter Backx</dc:creator>
				<category><![CDATA[FlashMedia]]></category>

		<guid isPermaLink="false">http://www.streamhead.com/?p=2069</guid>
		<description><![CDATA[Recently, Keith Peters has been putting overtime into his Minimal Comps library. It&#8217;s an ActionScript 3 library that offers a large number of typical user interface components. Easily and quickly you can construct basic user interfaces in ActionScript. When Flex is a little too heavy, this is a really neat solution.
This is basically the most [...]]]></description>
			<content:encoded><![CDATA[<img width="300" height="250" src="http://www.streamhead.com/wp-content/uploads/2010/03/minimal_duck.png" class="attachment-post-thumbnail wp-post-image" alt="" title="minimal_duck" /><p>Recently, <a title="About / Contact - BIT-101" href="http://www.bit-101.com/blog/?page_id=2" target="_blank">Keith Peters</a> has been putting overtime into his <a title="Minimal Comps" href="http://www.minimalcomps.com/" target="_blank">Minimal Comps</a> library. It&#8217;s an ActionScript 3 library that offers a large number of typical user interface components. Easily and quickly you can construct basic user interfaces in ActionScript. When Flex is a little too heavy, this is a really neat solution.</p>
<p><span id="more-2069"></span>This is basically the most minimal minimal component application you&#8217;re going to see:</p>

<div class="wp_codebox"><table><tr id="p20692"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
</pre></td><td class="code" id="p2069code2"><pre class="actionscript" style="font-family:monospace;">package 
<span style="color: #66cc66;">&#123;</span>
	<span style="color: #0066CC;">import</span> com.<span style="color: #006600;">bit101</span>.<span style="color: #006600;">components</span>.<span style="color: #006600;">PushButton</span>;
	<span style="color: #0066CC;">import</span> flash.<span style="color: #006600;">display</span>.<span style="color: #006600;">Sprite</span>;
	<span style="color: #0066CC;">import</span> flash.<span style="color: #006600;">events</span>.<span style="color: #006600;">Event</span>;
	<span style="color: #0066CC;">import</span> org.<span style="color: #006600;">flashdevelop</span>.<span style="color: #006600;">utils</span>.<span style="color: #006600;">FlashConnect</span>
&nbsp;
	<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">class</span> Main <span style="color: #0066CC;">extends</span> Sprite
	<span style="color: #66cc66;">&#123;</span>
		<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> Main<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
		<span style="color: #66cc66;">&#123;</span>
			<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">stage</span><span style="color: #66cc66;">&#41;</span> init<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
			<span style="color: #b1b100;">else</span> addEventListener<span style="color: #66cc66;">&#40;</span>Event.<span style="color: #006600;">ADDED_TO_STAGE</span>, init<span style="color: #66cc66;">&#41;</span>;
		<span style="color: #66cc66;">&#125;</span>
&nbsp;
		<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> init<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">e</span>:Event = <span style="color: #000000; font-weight: bold;">null</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
		<span style="color: #66cc66;">&#123;</span>
			removeEventListener<span style="color: #66cc66;">&#40;</span>Event.<span style="color: #006600;">ADDED_TO_STAGE</span>, init<span style="color: #66cc66;">&#41;</span>;
&nbsp;
			<span style="color: #000000; font-weight: bold;">new</span> PushButton<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span>, <span style="color: #cc66cc;">100</span>, <span style="color: #cc66cc;">100</span>, <span style="color: #ff0000;">&quot;Click me&quot;</span>, onBtnClick<span style="color: #66cc66;">&#41;</span>;
		<span style="color: #66cc66;">&#125;</span>
&nbsp;
		<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> onBtnClick<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">e</span>:Event<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
		<span style="color: #66cc66;">&#123;</span>
			FlashConnect.<span style="color: #0066CC;">trace</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;clicked&quot;</span><span style="color: #66cc66;">&#41;</span>;
		<span style="color: #66cc66;">&#125;</span>
	<span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>Inspired by this <a title="Minimal tutorial 01" href="http://www.minimalcomps.com/tutorials/minimal_tutorial_01.html" target="_blank">minimal tutorial</a> and written for <a title="FlashDevelop" href="http://www.flashdevelop.org/" target="_blank">FlashDevelop</a> (remove the FlashConnect statements if you&#8217;re working in another editor).</p>
<p>BTW I wanted to give a demonstration where I integrated the YouTube data API, but it appears that none of the libraries are really up-to-date and/or well enough documented to get started in under 15 minutes. <a title="as3-youtube-data-api" href="http://code.google.com/p/as3-youtube-data-api/" target="_blank">This one comes closest</a>, but if you have a good suggestion, please let me know.</p>
<p>(<a href="http://www.flickr.com/photos/ahudson/2053348794/">image credit</a>)</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/streamhead?a=I7Yb72K6o_0:K1_fyXLQqv8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/streamhead?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=I7Yb72K6o_0:K1_fyXLQqv8:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/streamhead?i=I7Yb72K6o_0:K1_fyXLQqv8:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=I7Yb72K6o_0:K1_fyXLQqv8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/streamhead?i=I7Yb72K6o_0:K1_fyXLQqv8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=I7Yb72K6o_0:K1_fyXLQqv8:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/streamhead?i=I7Yb72K6o_0:K1_fyXLQqv8:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=I7Yb72K6o_0:K1_fyXLQqv8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/streamhead?i=I7Yb72K6o_0:K1_fyXLQqv8:F7zBnMyn0Lo" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.streamhead.com/minimal-components/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Must Have Books and Music in the Streamhead Store</title>
		<link>http://www.streamhead.com/books-music-streamhead-store/</link>
		<comments>http://www.streamhead.com/books-music-streamhead-store/#comments</comments>
		<pubDate>Fri, 12 Mar 2010 08:00:47 +0000</pubDate>
		<dc:creator>Peter Backx</dc:creator>
				<category><![CDATA[MetaMedia]]></category>

		<guid isPermaLink="false">http://www.streamhead.com/?p=2051</guid>
		<description><![CDATA[In the spirit of cleaning up some of my older projects, I&#8217;ve completely overhauled my little Amazon store and added an entirely new category. I know this sounds like a commercial message and yes, I will earn a small commission if you order anything, but the store is something I take seriously. I only offer [...]]]></description>
			<content:encoded><![CDATA[<img width="300" height="250" src="http://www.streamhead.com/wp-content/uploads/2010/03/chocolate_shop.png" class="attachment-post-thumbnail wp-post-image" alt="" title="chocolate_shop" /><p>In the spirit of cleaning up some of my older projects, <a title="The Streamhead store" href="http://astore.amazon.co.uk/watje-21" target="_blank">I&#8217;ve completely overhauled my little Amazon store and added an entirely new category</a>. I know this sounds like a commercial message and yes, I will earn a small commission if you order anything, but the store is something I take seriously. I only offer things I&#8217;m absolutely sure you will like if you like this blog.</p>
<p><span id="more-2051"></span><a title="The Store Only I Will Like" href="http://www.streamhead.com/the-store-only-i-will-like/" target="_blank">Previously, I explained the philosophy behind the store</a>. It&#8217;s a glimpse into my private office, a look at my bookshelf and at my hard discs. I love to get an idea of the ideas behind people. I hope you&#8217;ll like this look too.</p>
<p>Although it wasn&#8217;t easy, I have gone over all the existing categories in my store and thrown out all the stuff that is no longer available. For instance, I really hated to remove &#8220;<a title="Grim Fandango" href="http://www.mobygames.com/game/grim-fandango" target="_blank">Grim Fandango</a>&#8221; from the list. But I think I&#8217;ve found some very very good alternatives.</p>
<p>Also new is the &#8220;reading list&#8221;. It&#8217;s a mixed bag, but you&#8217;ll certainly find something you&#8217;ll like. I have tried to avoid the purely technical books, because they usually don&#8217;t remain very fresh for long.</p>
<p><a title="The Streamhead store" href="http://astore.amazon.co.uk/watje-21" target="_blank">Enjoy the shop</a>.</p>
<p>(<a title="The Chocolate Shop - Flickr" href="http://www.flickr.com/photos/zedzap/4260979966/" target="_blank">image credit</a>)</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/streamhead?a=phd8QyAys_c:-G8lfYvRSkA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/streamhead?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=phd8QyAys_c:-G8lfYvRSkA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/streamhead?i=phd8QyAys_c:-G8lfYvRSkA:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=phd8QyAys_c:-G8lfYvRSkA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/streamhead?i=phd8QyAys_c:-G8lfYvRSkA:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=phd8QyAys_c:-G8lfYvRSkA:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/streamhead?i=phd8QyAys_c:-G8lfYvRSkA:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=phd8QyAys_c:-G8lfYvRSkA:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/streamhead?i=phd8QyAys_c:-G8lfYvRSkA:F7zBnMyn0Lo" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.streamhead.com/books-music-streamhead-store/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Obtaining Services and Repositories in Vaadin</title>
		<link>http://www.streamhead.com/services-vaadin/</link>
		<comments>http://www.streamhead.com/services-vaadin/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 08:00:28 +0000</pubDate>
		<dc:creator>Peter Backx</dc:creator>
				<category><![CDATA[JavaMedia]]></category>

		<guid isPermaLink="false">http://www.streamhead.com/?p=2040</guid>
		<description><![CDATA[One problem that you&#8217;ll face in practically any application, including a Vaadin-powered one, is getting hold of data or external services. Usually this functionality is put in some kind of service facade, or for instance a repository. Vaadin presents a problem in this regard, because it uses classes on both client (compiled to JavaScript) and [...]]]></description>
			<content:encoded><![CDATA[<img width="300" height="250" src="http://www.streamhead.com/wp-content/uploads/2010/03/data_processing.png" class="attachment-post-thumbnail wp-post-image" alt="" title="data_processing" /><p>One problem that you&#8217;ll face in practically any application, including a Vaadin-powered one, is getting hold of data or external services. Usually this functionality is put in some kind of <a title="Service Facade pattern" href="http://www.corej2eepatterns.com/Patterns2ndEd/ServiceFacade.htm" target="_blank">service facade</a>, or for instance a <a title="P of EAA: Repository" href="http://martinfowler.com/eaaCatalog/repository.html" target="_blank">repository</a>. Vaadin presents a problem in this regard, because it uses classes on both client (compiled to JavaScript) and server. You can&#8217;t (and don&#8217;t want to) execute service methods on the browser. Luckily, thanks to modern frameworks and good old Java, this turns out to be incredibly easy.</p>
<p><span id="more-2040"></span></p>
<p>If you want to decouple service from client classes, there used to be a time when you would either go for some static factory pattern (please, don&#8217;t) or use some kind of JNDI lookup to get a hold of the service objects or repositories.  In modern times, you&#8217;re probably going for a <strong>dependency injection</strong> container (I like Spring, but the latest JEE6 beans have similar possibilities).</p>
<p>Using Spring, it&#8217;s as simple as defining a service in the Spring configuration and injecting it with the <strong>@Autowired annotation</strong>. With <a title="Maven, Spring, Vaadin and AppEngine, all working together" href="http://www.streamhead.com/maven-spring-vaadin-appengine/" target="_blank">a little setup</a>, <a title="Spring Integration - Vaadin" href="http://vaadin.com/wiki/-/wiki/Main/Spring%20Integration" target="_blank">this works perfectly in Vaadin</a>.</p>
<p>I don&#8217;t think I&#8217;m telling anything new here, neither is the next part, but the combination makes for very non-intrusive, clean code.</p>
<p>If you start adding @Autowired annotations everywhere, you&#8217;ll soon end up with errors: <strong>Vaadin requires that any Java class is serializable</strong>. This is necessary to transmit information between the JavaScript web browser client application and the Java server code. Serialized object are sent between the two, to keep the internal states in sync.</p>
<p>However, many service classes won&#8217;t be serializable. A typical JPA repository will depend on an <strong>entity manager, which is not serializable</strong>.</p>
<p>The solution, is to mark those fields as &#8220;<strong>transient</strong>&#8220;, an often forgotten Java keyword that excludes fields from being serialized (among other things). The great thing about the @Autowired annotation is that it will inject dependencies every time a Java object is constructed. Also when it is de-serialized.</p>
<p>So each time the client sends an object, when it is constructed on the server, it will get autowired with your services.</p>
<p>It&#8217;s just that easy:</p>
<ol>
<li>Mark your dependencies toward services with <strong>@Autowired</strong>.</li>
<li>Make them <strong>transient</strong> so that they don&#8217;t get serialized.</li>
</ol>
<p>(<a title="Flickr - data processing" href="http://www.flickr.com/photos/mwichary/2297142523/" target="_blank">image credit</a>)</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/streamhead?a=24qOxttRTrs:Uyjj5m4iLcA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/streamhead?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=24qOxttRTrs:Uyjj5m4iLcA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/streamhead?i=24qOxttRTrs:Uyjj5m4iLcA:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=24qOxttRTrs:Uyjj5m4iLcA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/streamhead?i=24qOxttRTrs:Uyjj5m4iLcA:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=24qOxttRTrs:Uyjj5m4iLcA:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/streamhead?i=24qOxttRTrs:Uyjj5m4iLcA:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=24qOxttRTrs:Uyjj5m4iLcA:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/streamhead?i=24qOxttRTrs:Uyjj5m4iLcA:F7zBnMyn0Lo" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.streamhead.com/services-vaadin/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>The 2010 Streaming Radio Guide for Progressive Lovers</title>
		<link>http://www.streamhead.com/2010-streaming-radio-guide/</link>
		<comments>http://www.streamhead.com/2010-streaming-radio-guide/#comments</comments>
		<pubDate>Fri, 05 Mar 2010 08:00:26 +0000</pubDate>
		<dc:creator>Peter Backx</dc:creator>
				<category><![CDATA[MusicMedia]]></category>

		<guid isPermaLink="false">http://www.streamhead.com/?p=2035</guid>
		<description><![CDATA[For a long time, I&#8217;ve maintained a guide featuring some of my favorite online radio stations. Over the last 2 year, however, it had become a bit neglected. So today, I&#8217;m proud to present the updated 2010 version of the guide. I&#8217;ve purged the defunct stations, added a few new ones. I&#8217;ve also cleaned up [...]]]></description>
			<content:encoded><![CDATA[<img width="300" height="250" src="http://www.streamhead.com/wp-content/uploads/2010/03/radio.png" class="attachment-post-thumbnail wp-post-image" alt="" title="radio" /><p>For a long time, I&#8217;ve maintained a guide featuring some of my favorite online radio stations. Over the last 2 year, however, it had become a bit neglected. So today, I&#8217;m proud to present <a title="Streaming radio guide" href="http://www.streamhead.com/streaming-radio-guide/" target="_blank">the updated 2010 version of the guide</a>. I&#8217;ve purged the defunct stations, added a few new ones. I&#8217;ve also cleaned up the layout and added a little bling. So if you haven&#8217;t checked out the guide, or even if you have, now is the time to <a title="Streaming radio guide" href="http://www.streamhead.com/streaming-radio-guide/" target="_blank">click through</a>.</p>
<p>(<a title="clock radio" href="http://www.flickr.com/photos/roadsidepictures/179405690/" target="_blank">image credit</a>)</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/streamhead?a=wqx2FAn0vy4:bKEtdfaaUVg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/streamhead?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=wqx2FAn0vy4:bKEtdfaaUVg:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/streamhead?i=wqx2FAn0vy4:bKEtdfaaUVg:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=wqx2FAn0vy4:bKEtdfaaUVg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/streamhead?i=wqx2FAn0vy4:bKEtdfaaUVg:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=wqx2FAn0vy4:bKEtdfaaUVg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/streamhead?i=wqx2FAn0vy4:bKEtdfaaUVg:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=wqx2FAn0vy4:bKEtdfaaUVg:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/streamhead?i=wqx2FAn0vy4:bKEtdfaaUVg:F7zBnMyn0Lo" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.streamhead.com/2010-streaming-radio-guide/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Alternatives for Maven, Building With Less Frustration</title>
		<link>http://www.streamhead.com/maven-alternatives/</link>
		<comments>http://www.streamhead.com/maven-alternatives/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 08:00:03 +0000</pubDate>
		<dc:creator>Peter Backx</dc:creator>
				<category><![CDATA[JavaMedia]]></category>

		<guid isPermaLink="false">http://www.streamhead.com/?p=1995</guid>
		<description><![CDATA[Reader Nacho Coloma got me thinking. A few weeks ago he mentioned Gradle as an alternative for Maven. Now I&#8217;m not ready to throw out Maven, but the alternatives are at least interesting. Most popular alternatives have one thing in common: they shy away from XML in favor of domain specific languages (DSLs). Those DSLs [...]]]></description>
			<content:encoded><![CDATA[<img width="300" height="250" src="http://www.streamhead.com/wp-content/uploads/2010/03/zome_build_system.png" class="attachment-post-thumbnail wp-post-image" alt="" title="zome_build_system" /><p>Reader <a title="The 90the percentile" href="http://icoloma.blogspot.com/" target="_blank">Nacho Coloma</a> got me thinking. A few weeks ago <a title="Google AppEngine, Vaadin, Spring, a Match Not Made in Heaven" href="http://www.streamhead.com/google-appengine-vaadin-spring-match-heaven/#comment-33273947" target="_blank">he mentioned Gradle as an alternative for Maven</a>. Now I&#8217;m not ready to throw out Maven, but the alternatives are at least interesting. Most popular alternatives have one thing in common: they shy away from XML in favor of domain specific languages (DSLs). Those DSLs are in many cases a subset of some of the more popular scripting languages.</p>
<p>Read on for more about Gradle, Gant, Rake, Raven and Buildr.</p>
<h2><span id="more-1995"></span><a title="Gant" href="http://gant.codehaus.org/" target="_blank">Gant</a></h2>
<p><img class="alignnone size-full wp-image-1997" title="gant_medium" src="http://www.streamhead.com/wp-content/uploads/2010/03/gant_medium.png" alt="" width="203" height="100" /></p>
<p><em>Groovy Ant scripting, no dependency management or extras.</em></p>
<p>If you&#8217;re still used to Ant build files and presumably doing most of the dependency management by hand, than Gant is probably a great choice for you. It hides the Ant XML that can become very unwieldy and syntax heavy in favor if more focussed Groovy.</p>
<p>That&#8217;s all there is to it. And that&#8217;s the attraction.</p>
<h2><a title="Gradle" href="http://www.gradle.org/" target="_blank">Gradle</a></h2>
<p><em>An up-and-coming star in the build world. Groovy, Ant and Ivy combined.</em></p>
<p>Wherever you go, Gradle is on the lips of many developers. <a title="Gradle: building with bliss" href="http://technicallypossible.blogspot.com/2010/01/gradle-building-with-bliss.html" target="_blank">Aaron explains it a lot better</a>, but if you like the Groovy syntax and want a little more substance to your build tool than Gant, this might be your best choice.</p>
<p>The result are very small, condensed build files. Reading them feels natural, most of the things I see in the documents, I can guess what it will do. I&#8217;m not sure if writing the files is just as easy (but than again, Maven is difficult both reading and writing the files)</p>
<h2><a title="Rake - Ruby Make" href="http://rake.rubyforge.org/" target="_blank">Rake</a></h2>
<p><em>Ruby Make</em></p>
<p>Personally, I must confess, that I found Rake the most inaccessible of the bunch of tools I describe here. I&#8217;m sure it&#8217;s not because of the documentation (<a title="Ruby Rake docs" href="http://docs.rubyrake.org/" target="_blank">there is a lot and most of it pretty clear</a>). <a title="Using the Rake Build Language" href="http://martinfowler.com/articles/rake.html" target="_blank">Even Martin Fowler seems to like it</a>, although the linked document is fairly old.</p>
<p>I think it&#8217;s because Rake files are not only written in Ruby, but it&#8217;s also very focused on Ruby development. I haven&#8217;t really developed much in Ruby, so I think that&#8217;s why some of the most basic constructs look slightly outlandish to me.</p>
<p>I also didn&#8217;t look too deep, because if you want to use Ruby to build Java, there are better options.</p>
<h2><a title="Raven" href="http://raven.rubyforge.org/" target="_blank">Raven</a></h2>
<p><img class="alignnone size-full wp-image-1999" title="raven-125x125" src="http://www.streamhead.com/wp-content/uploads/2010/03/raven-125x125.jpg" alt="" width="125" height="125" /></p>
<p><em>Java building with Rake</em></p>
<p>As the site proclaims, this is really Rake adapted for Java building. It further combines this with Ruby Gems. At its most basic, you could compare this with Maven&#8217;s dependency management. In fact, there is an adapter available that allows you to convert a Maven repository to a Ruby Gem one.</p>
<p>Raven has specific tasks for Java development (javac, war, etc.) which makes it easier to use than plain Rake.</p>
<h2><a title="Apache Buildr" href="http://buildr.apache.org/" target="_blank">Buildr</a></h2>
<p><img class="alignnone size-full wp-image-2000" title="buildr" src="http://www.streamhead.com/wp-content/uploads/2010/03/buildr.png" alt="" width="278" height="150" /></p>
<p><em>Ruby Java building with Maven repositories</em></p>
<p>Buildr is the second Rake spin-off for Java development. For me, it has one major advantage, it uses the Maven repositories directly and also has the &#8220;Maven style&#8221; of specifying dependencies (group, artifact, version, scope). Buildr claims on the front page, it&#8217;s a drop in replacement for Maven. That is a very powerful selling point.</p>
<p>Buildr too is built on Rake, so it&#8217;s pure Ruby, which will take a little getting used to. However loosing the endless xml-tags is something you&#8217;ll probably get used to right-away.</p>
<h2>Conclusion</h2>
<p>I think I summed up the most important innovations in Java building, as always, please correct me! If you like Groovy, I&#8217;d suggest Gradle. If you prefer Ruby, go for Buildr (especially if you already have Maven repositories set up). But mind you, none of the others are bad choices, they just serve slightly different purposes than what I am currently looking for in a build tool.</p>
<p>Feel free to use the comments and share your personal preferences.</p>
<p>(<a title="zome tool" href="http://www.flickr.com/photos/shannonpatrick17/2237172765/in/photostream/" target="_blank">image credit</a>)</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/streamhead?a=IX74Un4PsEw:fkcachN8lzo:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/streamhead?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=IX74Un4PsEw:fkcachN8lzo:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/streamhead?i=IX74Un4PsEw:fkcachN8lzo:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=IX74Un4PsEw:fkcachN8lzo:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/streamhead?i=IX74Un4PsEw:fkcachN8lzo:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=IX74Un4PsEw:fkcachN8lzo:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/streamhead?i=IX74Un4PsEw:fkcachN8lzo:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=IX74Un4PsEw:fkcachN8lzo:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/streamhead?i=IX74Un4PsEw:fkcachN8lzo:F7zBnMyn0Lo" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.streamhead.com/maven-alternatives/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>9 of my Best Posts On Java, a Streamhead Anthology</title>
		<link>http://www.streamhead.com/java-anthology/</link>
		<comments>http://www.streamhead.com/java-anthology/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 08:00:43 +0000</pubDate>
		<dc:creator>Peter Backx</dc:creator>
				<category><![CDATA[JavaMedia]]></category>

		<guid isPermaLink="false">http://www.streamhead.com/?p=1968</guid>
		<description><![CDATA[In this post, a summary of some of the most interesting posts that have appeared on this blog related to Java. There&#8217;s a bit for everyone, there&#8217;s some Maven and Android, as some good documentation resources. And something about Java applets, because, for some odd reason, I still like them.
Over the last few days, Streamhead [...]]]></description>
			<content:encoded><![CDATA[<img width="300" height="250" src="http://www.streamhead.com/wp-content/uploads/2010/02/anthology.png" class="attachment-post-thumbnail wp-post-image" alt="" title="anthology" /><p>In this post, a summary of some of the most interesting posts that have appeared on this blog related to <strong>Java</strong>. There&#8217;s a bit for everyone, there&#8217;s some <strong>Maven </strong>and <strong>Android</strong>, as some good documentation resources. And something about <strong>Java applets</strong>, because, for some odd reason, I still like them.</p>
<p><span id="more-1968"></span>Over the last few days, Streamhead has seen a major influx of new readers. I hereby welcome you all. There is something for every one here. Because many of you are new, I thought it might be nice to show you some of, what I consider, to be my best and most valuable posts. So you can get an idea of what you&#8217;ve missed and catch up. I&#8217;m going to do this at most once every month or two and I&#8217;ll be trying to make these posts thematic. This time, it&#8217;s all <strong>Java</strong>.</p>
<h2>Automation</h2>
<div style="float:left"><a title="Roll On" href="http://www.flickr.com/photos/85853333@N00/3311288645/" target="_blank"><img src="http://farm4.static.flickr.com/3552/3311288645_b9ed0181fb_m.jpg" border="0" alt="Roll On" /></a><br /><small><a title="Attribution-NonCommercial License" href="http://creativecommons.org/licenses/by-nc/2.0/" target="_blank"><img src="http://www.streamhead.com/wp-content/plugins/photo-dropper/images/cc.png" border="0" alt="Creative Commons License" width="16" height="16" align="absmiddle" /></a> <a href="http://www.photodropper.com/photos/" target="_blank">photo</a> credit: <a title="Jeremy Brooks" href="http://www.flickr.com/photos/85853333@N00/3311288645/" target="_blank">Jeremy Brooks</a></small></div>
<p>Most recently, I&#8217;ve been obsessed with <strong>automation</strong>. Especially automated <strong>dependency management</strong> is a pet-peeve of mine. Most Java programs are constructed from many external libraries and those libraries in many cases also need libraries. It quickly becomes a hassle to manage this by hand.</p>
<p>In this regard, <strong>Maven </strong>is sort of a one-stop-shop for most Java programs. It&#8217;s most known feature is dependency management, but it can do so much more. A well configure Maven project can be fully automatically build, tested and deployed.</p>
<p>Two posts are of special interest here:</p>
<ol>
<li><a title="Maven, Spring, Vaadin and AppEngine, all working together" href="http://www.streamhead.com/maven-spring-vaadin-appengine/" target="_blank">Using Maven to create a project with Spring, Vaadin and Google AppEngine</a>. Not as easy as it might sound.</li>
<li><a title="Maven simplifies Seams and Facelets development" href="http://www.streamhead.com/maven-simplifies-seam-facelets-development-handle-xml/" target="_blank">A Maven way to configure Seam and Facelets</a>. Where I also mention the ugly side of Maven (hint: xml, xml and some more xml)</li>
</ol>
<h2>Something new</h2>
<div style="float:right"><a title="Audi's E-Tron Front" href="http://www.flickr.com/photos/62486370@N00/4305032044/" target="_blank"><img src="http://farm5.static.flickr.com/4002/4305032044_69f8c19032_m.jpg" border="0" alt="Audi's E-Tron Front" /></a><br /><small><a title="Attribution-NonCommercial-NoDerivs License" href="http://creativecommons.org/licenses/by-nc-nd/2.0/" target="_blank"><img src="http://www.streamhead.com/wp-content/plugins/photo-dropper/images/cc.png" border="0" alt="Creative Commons License" width="16" height="16" align="absmiddle" /></a> <a href="http://www.photodropper.com/photos/" target="_blank">photo</a> credit: <a title="DenisGiles" href="http://www.flickr.com/photos/62486370@N00/4305032044/" target="_blank">DenisGiles</a></small></div>
<p>I&#8217;ve done a bunch of posts on the latest and greats. Still for now there is one language in particular that keeps holding my interest (I really, really should program something with it): <a title="Clojure at Devoxx 2009" href="http://www.streamhead.com/discovering-clojure-compojure/" target="_blank">Clojure. It&#8217;s Lisp for the Java Virtual Machine</a>.</p>
<p>Next to new programming language, Java has also recently moved to mobile devices. For a second time. First there was the Java Mobile Edition, which was plagued by half-assed implementations, a scattered hardware platform and many proprietary APIs. Now there&#8217;s is Android. <a title="Android, No-cost Development Platform" href="http://www.streamhead.com/android-nocost-development-platform/" target="_blank">A Google backed, entirely free mobile development platform</a>.</p>
<p>Although I think we still need to see some <a title="Android Development Tools and Programs" href="http://www.streamhead.com/android-development-tools-programs/" target="_blank">really good tools</a> before Android will boom.</p>
<h2>Something old</h2>
<div style="float:left"><a title="Microcar invasion" href="http://www.flickr.com/photos/96263103@N00/4385658009/" target="_blank"><img src="http://farm5.static.flickr.com/4017/4385658009_35d291c720_m.jpg" border="0" alt="Microcar invasion" /></a><br /><small><a title="Attribution-NonCommercial-NoDerivs License" href="http://creativecommons.org/licenses/by-nc-nd/2.0/" target="_blank"><img src="http://www.streamhead.com/wp-content/plugins/photo-dropper/images/cc.png" border="0" alt="Creative Commons License" width="16" height="16" align="absmiddle" /></a> <a href="http://www.photodropper.com/photos/" target="_blank">photo</a> credit: <a title="toastforbrekkie" href="http://www.flickr.com/photos/96263103@N00/4385658009/" target="_blank">toastforbrekkie</a></small></div>
<p>For some reason, I&#8217;ve always liked Java applets. In principle they allow you to use Java in the browser, just as you would ActionScript. That&#8217;s the principle, sadly applets have been plagued by many problems, not the least the slow startup time.</p>
<p>However, <a title="Remember Java Applets?" href="http://www.streamhead.com/remember-java-applets/" target="_blank">I believe Java applets are long overdue for a comeback</a>. They can be used for web 2.0 business application development, but just as well for hardware 3D. Applets have had it for a long time, while Flash has only recently caught up. <a title="hardware 3D in your browser" href="http://www.streamhead.com/tutorial-jmonkeyengine-applet-hardware-3d-in-the-browser/" target="_blank">Check out this short tutorial on how to get started</a>.</p>
<h2>Documentation</h2>
<p>And if that wasn&#8217;t enough, there&#8217;s one other incredible thing about Java: Java and the many libraries are extremely well documented. And it&#8217;s all free. Just check out <a title="5 great DZone Refcards" href="http://www.streamhead.com/5-favorite-dzone-refcardz/" target="_blank">the DZone Refcardz for quick reference cards</a> that are great to keep right on your desk.</p>
<p>If you want to get into game development after you&#8217;ve seen the 3D, head on over to <a title="13 resources to get started in game programming" href="http://www.streamhead.com/13-game-programming-links/" target="_blank">this list of prime documentation and tutorial resources</a>. Not all Java, but it should get you started.</p>
<p>Enjoy! If you have suggestions for things to write on, just leave a comment or <a title="Contact me" href="http://www.streamhead.com/contact/" target="_blank">send me a message</a>. If you like to keep up-to-date with this blog, there are a few subscription options to your right.</p>
<p>(<a title="Anthology on Flickr" href="http://www.flickr.com/photos/ramson/2614788995/" target="_blank">image credit</a>)</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/streamhead?a=zNKk9yZ26fk:WrvEbgDxd24:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/streamhead?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=zNKk9yZ26fk:WrvEbgDxd24:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/streamhead?i=zNKk9yZ26fk:WrvEbgDxd24:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=zNKk9yZ26fk:WrvEbgDxd24:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/streamhead?i=zNKk9yZ26fk:WrvEbgDxd24:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=zNKk9yZ26fk:WrvEbgDxd24:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/streamhead?i=zNKk9yZ26fk:WrvEbgDxd24:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=zNKk9yZ26fk:WrvEbgDxd24:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/streamhead?i=zNKk9yZ26fk:WrvEbgDxd24:F7zBnMyn0Lo" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.streamhead.com/java-anthology/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>60 of the Best Dance Tracks, Served in 6 Easy Shadowbox Portions</title>
		<link>http://www.streamhead.com/60-dance-tracks/</link>
		<comments>http://www.streamhead.com/60-dance-tracks/#comments</comments>
		<pubDate>Tue, 23 Feb 2010 08:00:46 +0000</pubDate>
		<dc:creator>Peter Backx</dc:creator>
				<category><![CDATA[MusicMedia]]></category>

		<guid isPermaLink="false">http://www.streamhead.com/?p=1929</guid>
		<description><![CDATA[<script type="text/javascript" src="http://www.streamhead.com/wp-includes/js/jquery/jquery.js"></script><script type="text/javascript" src="http://www.streamhead.com/wp-content/plugins/pb-embedflash/js/sbadapter/shadowbox-jquery.js"></script><script type="text/javascript" src="http://www.streamhead.com/wp-content/plugins/pb-embedflash/js/shadowbox.js"></script><script type="text/javascript"><!--
window.onload = function() {var options ={assetURL:'',loadingImage:'http://www.streamhead.com/wp-content/plugins/pb-embedflash/css/images/loading.gif',flvPlayer:'http://www.streamhead.com/wp-content/plugins/pb-embedflash/swf/mediaplayer.swf',animate:true,animSequence:'wh',overlayColor:'#000',overlayOpacity:0.85,overlayBgImage:'http://www.streamhead.com/wp-content/plugins/pb-embedflash/css/images/overlay-85.png',listenOverlay:true,autoplayMovies:true,showMovieControls:true,resizeDuration:0.35,fadeDuration:0.35,displayNav:true,continuous:false,displayCounter:true,counterType:'default',viewportPadding:20,handleLgImages:'resize',initialHeight:160,initialWidth:320,enableKeys:true,keysClose:['c', 'q', 27],keysPrev:['p', 37],keysNext:['n', 39],handleUnsupported:'',text: {cancel:'Cancel',loading: 'loading',close:'<span class="shortcut">C</span>lose',next:'<span class="shortcut">N</span>ext',prev:'<span class="shortcut">P</span>revious',errors:{single: 'You must install the <a href="{0}">{1}</a> browser plugin to view this content.',shared: 'You must install both the <a href="{0}">{1}</a> and <a href="{2}">{3}</a> browser plugins to view this content.',either: 'You must install either the <a href="{0}">{1}</a> or the <a href="{2}">{3}</a> browser plugin to view this content.'}}};Shadowbox.init(options);}
--></script>About 10 days ago, De Morgen, a Belgian (Dutch) newspaper, published the 60 best dance tracks of the last 10 years. 6 DJs and radio celebrities take their pick of what was good in the last 10 years. Unlike what you might expect, the lists where not littered with fluffy pop stuff. Most of it [...]]]></description>
			<content:encoded><![CDATA[<img width="300" height="250" src="http://www.streamhead.com/wp-content/uploads/2010/02/permit_to_rave.png" class="attachment-post-thumbnail wp-post-image" alt="" title="permit_to_rave" /><p>About 10 days ago, <a title="De Morgen" href="http://www.demorgen.be/" target="_blank">De Morgen</a>, a Belgian (Dutch) newspaper, published <a title="De 60 beste dancetracks van de afgelopen 10 jaar" href="http://www.demorgen.be/dm/nl/1007/Muziek/article/detail/1066383/2010/02/11/De-60-beste-dancetracks.dhtml" target="_blank">the 60 best dance tracks of the last 10 years</a>. 6 DJs and radio celebrities take their pick of what was good in the last 10 years. Unlike what you might expect, the lists where not littered with fluffy pop stuff. Most of it is quality material. Pleasantly surprised, I think this was a great idea. The only problem is that it&#8217;s quite difficult to listen to the lists as they are all embedded as separate tracks. So I&#8217;ve put them in a few YouTube playlists, which make them a lot more manageable .</p>
<p><span id="more-1929"></span>6 DJs entered their choice, and here they are:</p>
<ul>
<li><small>(Please open the article to see the flash file or player.)</small></li>
<li><small>(Please open the article to see the flash file or player.)</small></li>
<li><small>(Please open the article to see the flash file or player.)</small></li>
<li><small>(Please open the article to see the flash file or player.)</small></li>
<li><small>(Please open the article to see the flash file or player.)</small></li>
<li><small>(Please open the article to see the flash file or player.)</small></li>
</ul>
<p>If you clicked through (come on, you know you want to try it), you will have noticed that they open in a nice JavaScript popup. Originally, I wanted to create the code to make that happen myself. <a title="jQuery plugins" href="http://plugins.jquery.com/" target="_blank">jQuery with a few plugins</a> make it possible to quickly create something like this. However, it turns out some one already did the work: <a title="pb-embedFlash" href="http://wordpress.org/extend/plugins/pb-embedflash/" target="_blank">the pb-embedFlash plugin for WordPress</a> is the perfect solution if you want to embed Flash, but also other media types. With tons of options, this is really a one-stop-shop, which I hope will see continued development.</p>
<p>BTW Surprisingly enough, if you buy <a title="The Trentemoller Chronicles" href="http://www.streamhead.com/2007-the-music-part-1-of-x/" target="_blank">the Trentemoller chronicles</a>, you&#8217;d already have a bunch of those tracks. It looks like there are more people that like him.</p>
<p>(<a title="Permit to rave" href="http://www.flickr.com/photos/leonski/4076807065/" target="_blank">image credit</a>)</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/streamhead?a=D_SJKp-_5L4:gOXw9SXtVBI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/streamhead?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=D_SJKp-_5L4:gOXw9SXtVBI:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/streamhead?i=D_SJKp-_5L4:gOXw9SXtVBI:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=D_SJKp-_5L4:gOXw9SXtVBI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/streamhead?i=D_SJKp-_5L4:gOXw9SXtVBI:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=D_SJKp-_5L4:gOXw9SXtVBI:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/streamhead?i=D_SJKp-_5L4:gOXw9SXtVBI:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=D_SJKp-_5L4:gOXw9SXtVBI:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/streamhead?i=D_SJKp-_5L4:gOXw9SXtVBI:F7zBnMyn0Lo" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.streamhead.com/60-dance-tracks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Analysis of the New Streamhead Design</title>
		<link>http://www.streamhead.com/analysis-streamhead-design/</link>
		<comments>http://www.streamhead.com/analysis-streamhead-design/#comments</comments>
		<pubDate>Fri, 19 Feb 2010 08:00:39 +0000</pubDate>
		<dc:creator>Peter Backx</dc:creator>
				<category><![CDATA[ChangingMedia]]></category>

		<guid isPermaLink="false">http://www.streamhead.com/?p=1919</guid>
		<description><![CDATA[If you&#8217;re visiting the site, you will undoubtedly have noticed the new design. If you&#8217;re following the site via the feed or e-mail, now is a very good time to click through and check out the new incarnation of Streamhead. In this post, I go over what went in to creating the new design and [...]]]></description>
			<content:encoded><![CDATA[<img width="300" height="250" src="http://www.streamhead.com/wp-content/uploads/2010/02/streamhead_new_design.png" class="attachment-post-thumbnail wp-post-image" alt="" title="streamhead_new_design" /><p>If you&#8217;re visiting the site, you will undoubtedly have noticed the new design. If you&#8217;re following the site via the feed or e-mail, now is a very good time to click through and check out the new incarnation of Streamhead. In this post, I go over what went in to creating the new design and what is still to come.</p>
<p><span id="more-1919"></span>The new design consists of surprisingly little coding and images, thanks to some great work by other people and a little by me:</p>
<ul>
<li><a title="Three Wordpress Theme Frameworks" href="http://www.streamhead.com/thematic-wordpress-theme-framework/" target="_blank">The Thematic <strong>theme framework</strong></a> is an incredible useful and solid foundation to build on. Creating a child theme is child&#8217;s play and you immediately get all the good stuff of Thematic. Adapting it&#8217;s CSS is even easier. Messing with the functions was a little harder, but I didn&#8217;t need to change a lot.</li>
<li>If you have a reasonably new browser, you will also notice the <strong>custom font</strong>. I tried to give my blog something unique by adding a different font. I will be evaluating this choice in about a month. In the mean time, I really love the <a title="Oregon LDO font by Luke Owens" href="http://www.fontspace.com/luke-owens/oregon-ldo" target="_blank">Oregon LDO font by Luke Owens</a>. Together with <a title="free @front-face generator" href="http://www.fontsquirrel.com/fontface/generator" target="_blank">the @font-face generator</a>, adding the font to the page was a breeze.</li>
<li>I haven&#8217;t mentioned <a title="Textures and SketchUp" href="http://www.streamhead.com/textures-irender-tweaks-spice-sketchup-renders/" target="_blank">SketchUp</a> in a while, but I used it to create <strong>the header image</strong>. I tried and liked <a title="Kerkythea" href="http://www.kerkythea.net/joomla/" target="_blank">Kerkythea</a> to render the image. And a little <a title="Paint.NET - Free Software for Digital Photo Editing" href="http://www.getpaint.net/" target="_blank">Paint.NET</a> for the finishing touches. All of those are high quality free tools that almost any one should have on their PC.</li>
</ul>
<p>Mix all of that with a little CSS and out came the new design. I like it a lot more than the previous, but we&#8217;ll see if it stays for just as long.</p>
<p>As always, nothing is ever really finished, so there&#8217;s a pretty large to-do list:</p>
<ul>
<li>For some reason, the colors of the header don&#8217;t match in Internet Explorer (they look fine in Firefox and Chrome)</li>
<li>I will be adding a few more widgets in the sidebar. I&#8217;m not sure if it was popular, but I liked the random posts.</li>
<li>The posts now use the WordPress build-in thumbnail and &#8220;more&#8221; features, which means I have to go over all posts and introduce those. I&#8217;m not particularly looking forward to this task, but it will make the frontpage and category pages a lot nicer.</li>
<li>I don&#8217;t like the front page, I will be adding some &#8220;themed&#8221; areas and pages with a few selected posts, which will make it easier for people to navigate the backlog of the blog.</li>
<li>and probably a ton more that will popup while I&#8217;m working on the others.</li>
</ul>
<p>So stay tuned, this blog is evolving. And let me know what you think of the new look, I&#8217;m really interested in your opinion.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/streamhead?a=V4tQYLDhSSA:1Oa-c1dbc7k:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/streamhead?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=V4tQYLDhSSA:1Oa-c1dbc7k:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/streamhead?i=V4tQYLDhSSA:1Oa-c1dbc7k:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=V4tQYLDhSSA:1Oa-c1dbc7k:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/streamhead?i=V4tQYLDhSSA:1Oa-c1dbc7k:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=V4tQYLDhSSA:1Oa-c1dbc7k:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/streamhead?i=V4tQYLDhSSA:1Oa-c1dbc7k:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=V4tQYLDhSSA:1Oa-c1dbc7k:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/streamhead?i=V4tQYLDhSSA:1Oa-c1dbc7k:F7zBnMyn0Lo" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.streamhead.com/analysis-streamhead-design/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Maven, Spring, Vaadin and Google AppEngine, Happy Together</title>
		<link>http://www.streamhead.com/maven-spring-vaadin-appengine/</link>
		<comments>http://www.streamhead.com/maven-spring-vaadin-appengine/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 08:00:16 +0000</pubDate>
		<dc:creator>Peter Backx</dc:creator>
				<category><![CDATA[JavaMedia]]></category>

		<guid isPermaLink="false">http://www.streamhead.com/?p=1893</guid>
		<description><![CDATA[In true open source spirit, I scratched my itch. No, not that itch. If you complain about open source projects, you have all the tools at your disposal to fix the problem yourself. Last week, I posted that it&#8217;s not straightforward at all to make Spring, Google AppEngine (GAE) and Vaadin work together in Eclipse. [...]]]></description>
			<content:encoded><![CDATA[<img width="300" height="250" src="http://www.streamhead.com/wp-content/uploads/2010/02/happy_together.png" class="attachment-post-thumbnail wp-post-image" alt="" title="happy_together" /><p>In true open source spirit, I scratched my itch. No, not that itch. If you complain about open source projects, you have all the tools at your disposal to fix the problem yourself. Last week, I posted that <a title="Google AppEngine, Vaadin, Spring, a Match Not Made in Heaven" href="http://www.streamhead.com/google-appengine-vaadin-spring-match-heaven/" target="_blank">it&#8217;s not straightforward at all to make <strong>Spring, Google AppEngine (GAE) and Vaadin work together in Eclipse</strong></a>. This week, I present <strong>the solution</strong>.</p>
<p><em>Update</em>: I&#8217;ve added a necessary repository to the pom file. So if you had problems previously, please download the file again. Your issues should be solved.</p>
<p><span id="more-1893"></span></p>
<p><strong><a title="Maven pom.xml with Spring, Vaadin and  Google AppEngine pre-configured" href="../wp-content/uploads/2010/02/pom.xml" target="_blank"><img class="alignnone size-full wp-image-498" title="download" src="http://www.streamhead.com/wp-content/uploads/2008/11/download.png" alt="" width="30" height="24" /></a></strong><a title="Maven pom.xml with Spring, Vaadin and  Google AppEngine pre-configured" href="../wp-content/uploads/2010/02/pom.xml" target="_blank"> download  the pom.xml</a></p>
<p>It&#8217;s a fairly long <a title="Maven simplifies development" href="http://www.streamhead.com/maven-simplifies-seam-facelets-development-handle-xml/" target="_blank">Maven</a> pom.xml file, but I believe it remains understandable and usable. Using Maven also makes it easier to integrate your project in continuous build systems and to cooperate on a project with other people. The remainder of this post discusses the details, but you can just go ahead and <strong><a title="Maven pom.xml with Spring, Vaadin and Google AppEngine pre-configured" href="http://www.streamhead.com/wp-content/uploads/2010/02/pom.xml" target="_blank">download the pom.xml right away</a></strong>.</p>
<p>In order to get started you should:</p>
<ul>
<li>Adjust the pom.xml to your liking. You probably want to change the artifact and group id&#8217;s.</li>
<li>Run &#8220;<strong>mvn clean</strong>&#8221; to create a clean project with the dependencies in the right location.</li>
<li>Run &#8220;<strong>mvn eclipse:eclipse</strong>&#8221; to generate the Eclipse configuration files.</li>
<li><strong>Import the project into Eclipse</strong> (or you can use the <a title="m2eclipse" href="http://m2eclipse.sonatype.org/" target="_blank">m2eclipse Maven integration</a> if you like)</li>
<li>Start programming your project. With this configuration you will be able to follow <a title="Spring Integration - Vaadin" href="http://vaadin.com/wiki/-/wiki/Main/Spring%20Integration" target="_blank">the Spring integration tutorial on the Vaadin site</a> (including the annotation driven configuration, which is my favorite).</li>
</ul>
<p>If you like to know a little more about what the pom.xml does, here are the various issues that are resolved by it.</p>
<div style="float:right;"><a title="Concord Jet" href="http://www.flickr.com/photos/10287726@N02/4359308044/" target="_blank"><img src="http://farm5.static.flickr.com/4004/4359308044_d599bc2b66_m.jpg" border="0" alt="Concord Jet" /></a><br /><small><a title="Attribution License" href="http://creativecommons.org/licenses/by/2.0/" target="_blank"><img src="http://www.streamhead.com/wp-content/plugins/photo-dropper/images/cc.png" border="0" alt="Creative Commons License" width="16" height="16" align="absmiddle" /></a> <a href="http://www.photodropper.com/photos/" target="_blank">photo</a> credit: <a title="simononly" href="http://www.flickr.com/photos/10287726@N02/4359308044/" target="_blank">simononly</a></small></div>
<h2>Google AppEngine</h2>
<p>The main issue with Google AppEngine is managing the WAR structure. The Eclipse plugin for GAE cannot directly deploy a .WAR file and it needs a very rigid structure. It takes the contents of the &#8220;war&#8221; directory and deploys that. The exact directory cannot be changed, neither can the location of the dependencies. So the pom take care of:</p>
<ul>
<li>Java classes are compiled to /war/WEB-INF/classes</li>
<li>JAR dependencies are managed in /war/WEB-INF/lib (&#8220;mvn clean&#8221; both deletes the old jar files and copies the new ones in the directory)</li>
</ul>
<h2>Eclipse project files</h2>
<p>The second large block of code you&#8217;ll find in the pom.xml is setting up the Eclipse project files:</p>
<ul>
<li>Configuring the various &#8220;natures&#8221; (those are the different plugins that are enabled for the project)</li>
<li>Setting up the environment with, for instance, some additional validators and builders.</li>
<li>For all of this to work, you will need to have all the corresponding Eclipse plugins installed (Vaadin plugin, Spring and AspectJ)</li>
</ul>
<p>As always, this work would not have been possible without <a title="Maven Archetype for Google AppEngine" href="http://fornax-sculptor.blogspot.com/2009/10/maven-archetype-for-app-engine.html" target="_blank">the help</a> of a <a title="Spring application - Vaadin example" href="http://dev.vaadin.com/browser/incubator/SpringApplication" target="_blank">few people</a>. I stand on the shoulders of giants.</p>
<p>There are still a few to-do&#8217;s left:</p>
<ul>
<li>Google AppEngine has recently been update from version 1.3.0 to 1.3.1. </li>
<li>Maven support inside Eclipse is not yet enabled. I think adding the &#8220;org.maven.ide.eclipse.maven2Nature&#8221; nature to the pom.xml should solve this, but I haven&#8217;t tried it out yet.</li>
</ul>
<p><strong><a title="Maven pom.xml with Spring, Vaadin and  Google AppEngine  pre-configured" href="../wp-content/uploads/2010/02/pom.xml" target="_blank"><img title="download" src="http://www.streamhead.com/wp-content/uploads/2008/11/download.png" alt="" width="30" height="24" /></a></strong><a title="Maven pom.xml with  Spring, Vaadin and  Google AppEngine pre-configured" href="../wp-content/uploads/2010/02/pom.xml" target="_blank"> download  the pom.xml</a></p>
<p>Good luck and be sure to let me know if you encounter problems or have tips.</p>
<p>(<a title="so happy together" href="http://www.flickr.com/photos/thomashawk/3043998465/" target="_blank">image credit</a>)</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/streamhead?a=NY9r0mXvf-w:KUhj20m2Oy4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/streamhead?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=NY9r0mXvf-w:KUhj20m2Oy4:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/streamhead?i=NY9r0mXvf-w:KUhj20m2Oy4:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=NY9r0mXvf-w:KUhj20m2Oy4:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/streamhead?i=NY9r0mXvf-w:KUhj20m2Oy4:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=NY9r0mXvf-w:KUhj20m2Oy4:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/streamhead?i=NY9r0mXvf-w:KUhj20m2Oy4:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/streamhead?a=NY9r0mXvf-w:KUhj20m2Oy4:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/streamhead?i=NY9r0mXvf-w:KUhj20m2Oy4:F7zBnMyn0Lo" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.streamhead.com/maven-spring-vaadin-appengine/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license>
	</item>
	</channel>
</rss><!-- Dynamic page generated in 0.719 seconds. --><!-- Cached page generated by WP-Super-Cache on 2010-03-21 12:13:36 -->
