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

<channel>
	<title>Rich Internet Applications (RIA) &#187; Mike Mannion</title>
	<atom:link href="http://www.canoo.com/blog/tag/mike-mannion/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.canoo.com/blog</link>
	<description></description>
	<lastBuildDate>Wed, 18 Jan 2012 14:30:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Something Wicked Comes this Way</title>
		<link>http://www.canoo.com/blog/2010/08/10/something-wicked-comes-this-way/</link>
		<comments>http://www.canoo.com/blog/2010/08/10/something-wicked-comes-this-way/#comments</comments>
		<pubDate>Tue, 10 Aug 2010 11:52:39 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Mike Mannion]]></category>

		<guid isPermaLink="false">http://canoo.com/blog/?p=1439</guid>
		<description><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2010/08/10/something-wicked-comes-this-way/";</script>Don&#8217;t doubt it for a second: A paradigm-shifting idea is taking shape on Johnny Anonymous&#8217;s laptop as I write these words. Johnny&#8217;s idea is a radical as it is ingenious. It will change the way you communicate, work, think&#8230; breath. It may bring you that one love you&#8217;ve been longing for all your life; bring [...]]]></description>
			<content:encoded><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2010/08/10/something-wicked-comes-this-way/";</script><p><img src="http://canoo.com/blog/wp-content/uploads/2010/08/google-evil.png" alt="google-evil" title="google-evil" width="291" height="112" class="aligncenter size-full wp-image-1440" /></p>
<p>Don&#8217;t doubt it for a second: A paradigm-shifting idea is taking shape on Johnny Anonymous&#8217;s laptop as I write these words. Johnny&#8217;s idea is a radical as it is ingenious. It will change the way you communicate, work, think&#8230; breath. It may bring you that one love you&#8217;ve been longing for all your life; bring your kids opportunities and joy beyond their wildest dreams; resolve international crises; lead to cures for cancer; cut CO2 emissions in half; make quantum mechanics comprehensible to the lay-person; cause Dan Brown to write a decent book (okay, maybe not). Hell, it may even help us to make contact with aliens &#8211; how cool is that?!</p>
<p>Will Johnny&#8217;s idea ever see the light of day? As long as the Internet remains a level playing field, he/it has good a chance as any. Yet if the likes of Veroogle (Goozon?) <a href="http://www.wired.com/epicenter/2010/08/google-verizon-propose-open-vs-paid-internets/all/1#ixzz0w8feVFEZ">have their way</a>, then Mr. CEO will quash Johnny&#8217;s idea quicker than you can say the words &#8220;big fat severance package&#8221;.</p>
<p>Should Big Corporate really be permitted to dictate the accessibility and the quality of service that Johnny&#8217;s idea receives when he attempts to reveal it to the world? Let me put it this way: Can we trust corporations to govern themselves in such a way that they <strong>never</strong>,<strong>ever</strong> take active steps to diminish the chances of a potential competitor&#8217;s idea from taking hold? Don&#8217;t worry &#8211; it was a rhetorical question.</p>
<p>Is the world &#8211; virtual or otherwise &#8211; really so oblivious to the messy, awesome beauty that is the Egalitarian Internet; so apathetic that it will not lift a finger to rescue one of humankind&#8217;s finest achievements? Will the masses revolt? Furthermore, who will speak for us? Where are you <a href="http://en.wikipedia.org/wiki/Tim_Berners-Lee">Tim Berners-Lee</a>?</p>
<p>So until the masses mobilize &#8211; and they surely must &#8211; here&#8217;s a tiny, yet powerful step that Joe Public &#8211; read: <strong>you</strong> &#8211; can take RIGHT THIS INSTANT: <a href="http://www.bing.com/">Bing</a>.</p>
<script>var dzone_style="2";</script><script language="javascript" src="http://widgets.dzone.com/widgets/zoneit.js"></script>]]></content:encoded>
			<wfw:commentRss>http://www.canoo.com/blog/2010/08/10/something-wicked-comes-this-way/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TSSJS 2009: JavaFX in Action (my session!)</title>
		<link>http://www.canoo.com/blog/2009/10/29/tssjs-2009-javafx-in-action-my-session/</link>
		<comments>http://www.canoo.com/blog/2009/10/29/tssjs-2009-javafx-in-action-my-session/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 08:20:33 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Mike Mannion]]></category>

		<guid isPermaLink="false">http://canoo.com/blog/?p=789</guid>
		<description><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/10/29/tssjs-2009-javafx-in-action-my-session/";</script>Today I gave another talk on JavaFX. Since this was TheServerSide I assumed no knowledge at all of the client-focussed technology. Once again, my approach was to take the audience with me on a trip along JavaFX&#8217;s (short) time-line, since it&#8217;s first introduction in 2007. In doing I attempted to show/describe: - What JavaFX does [...]]]></description>
			<content:encoded><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/10/29/tssjs-2009-javafx-in-action-my-session/";</script><p>Today I gave another talk on JavaFX. Since this was TheServerSide I assumed no knowledge at all of the client-focussed technology. Once again, my approach was to take the audience with me on a trip along JavaFX&#8217;s (short) time-line, since it&#8217;s first introduction in 2007. In doing I attempted to show/describe:</p>
<p>- What JavaFX does (UI, graphics, multi-media)<br />
- The tools we use (Adobe, Netbeans)<br />
- JavaFX Mobile<br />
- The importance of threading awareness<br />
- The future (JavaTV, 3D, improved support for widgets, layout management)</p>
<p><span style="color: #ffffff;">.</span></p>
<p><img class="alignnone size-full wp-image-792" title="L1030444" src="http://canoo.com/blog/wp-content/uploads/2009/10/L1030444.jpg" alt="L1030444" width="400" height="400" /></p>
<p><em>Mike Mannion in Action</em></p>
<p><em><span style="color: #ffffff;">.</span></em></p>
<p>I didn&#8217;t hold back with regard to some concerns I still have about with JavaFX technology, which some members of the audience may have found a little surprising. But still I hope the attendees will have got a glimpse at the power and potential of JavaFX, and what it may mean for the future of Java on client devices.</p>
<p>To finish up, the Prague audience posed some excellent questions, which I did my best to answer.</p>
<p>Download my slides <a href="http://www.slideshare.net/javasymposium/mike-mannion-server-side-java-fx">here</a>. And if you&#8217;ve got any questions feel free to mail me at mike.mannion@canoo.com</p>
<p>So that was that for my first TSSJS for me, as I had to catch a plane back home&#8230;</p>
<p>My thanks to all the contributors &#8211; especially to TSS editor Peter Varhol and to Karen Travelo &#8211; for putting this excellent conference together!</p>
<script>var dzone_style="2";</script><script language="javascript" src="http://widgets.dzone.com/widgets/zoneit.js"></script>]]></content:encoded>
			<wfw:commentRss>http://www.canoo.com/blog/2009/10/29/tssjs-2009-javafx-in-action-my-session/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TSSJS 2009: Every Day Static Code Analysis</title>
		<link>http://www.canoo.com/blog/2009/10/27/tssjs-2009-every-day-static-code-analysis/</link>
		<comments>http://www.canoo.com/blog/2009/10/27/tssjs-2009-every-day-static-code-analysis/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 15:00:00 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Mike Mannion]]></category>

		<guid isPermaLink="false">http://canoo.com/blog/?p=763</guid>
		<description><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/10/27/tssjs-2009-every-day-static-code-analysis/";</script>Speaker: Václav Pech, JetBrains (makers of the IntelliJ IDEA IDE) Václav begins by citing author of findBugs tool bug categories. He goes on to presents some nice examples of each of these bug types. Then shows Intellij plugin for static code analysis with on both demand and on-the-fly analysis (very comfortable for the developer). Adding [...]]]></description>
			<content:encoded><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/10/27/tssjs-2009-every-day-static-code-analysis/";</script><p>Speaker: Václav Pech, JetBrains (makers of the IntelliJ IDEA IDE)</p>
<p>Václav begins by citing author of <a href="http://findbugs.sourceforge.net/">findBugs</a> tool bug categories.</p>
<p>He goes on to presents some nice examples of each of these bug types. Then shows Intellij plugin for static code analysis with on both demand and on-the-fly analysis (very comfortable for the developer).</p>
<p>Adding bug detection to the tool means specifing an undesirable pattern in the program’s AST. Speaker demonstrates creation of a new rule using „PMD rule designer“.</p>
<p>After naming three of the most popular tools (findBugs, CheckStyle, PMD), Václav demonstrates the use of these tools in NetBeans. The SQE plugin integrates the above tools into a unified view. Nice.</p>
<p>Then, just to prove he&#8217;s not all about IntelliJ, he shows FindBugs and PMD in Eclipse.</p>
<p>Now back to IDEA again: We see a powerful code analysis and quick-fix tools in IDEA, as well as the ability to define new tools.</p>
<p>Next up: New JetBrains language-aware annotations, which can also provide language-specific code completion in cases where SQL, CSS or any variety of languages are held in a Java string. Very nice, although limited to Strings as opposed to derivations of CharSequence (StringBuffer, StringBuilder).</p>
<p>Václav&#8217;s slides are available <a href="http://www.slideshare.net/javasymposium/vaclav-pech-presentation-static-code">here</a>.</p>
<p>Summary: This talk presented a useful overview of static cod analysis tools. A sales pitch for IntelliJ? To some extent, perhaps. But having used NetBeans, Eclipse AND IntelliJ in the past twelve months, I can testify to IDEA&#8217;s superior support wen it comes to code analysis (as well as other things.) And no, I am not being paid to write this.</p>
<script>var dzone_style="2";</script><script language="javascript" src="http://widgets.dzone.com/widgets/zoneit.js"></script>]]></content:encoded>
			<wfw:commentRss>http://www.canoo.com/blog/2009/10/27/tssjs-2009-every-day-static-code-analysis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TSSJS 2009: No More Loops with LambdaJ</title>
		<link>http://www.canoo.com/blog/2009/10/27/tssjs-2009-no-more-loops-with-lambdaj/</link>
		<comments>http://www.canoo.com/blog/2009/10/27/tssjs-2009-no-more-loops-with-lambdaj/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 13:40:00 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Mike Mannion]]></category>

		<guid isPermaLink="false">http://canoo.com/blog/?p=761</guid>
		<description><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/10/27/tssjs-2009-no-more-loops-with-lambdaj/";</script>Speaker: Mario Fusco, LambdaJ creator What makes me think this talk is going to have something do to with the lambda calculus, a subject I recall enjoying greatly during my Comp-Sci degree? So&#8230; the heavily accented Mario describes the motivation for creating LambdaJ: To create a way to select beans of particular properties without all [...]]]></description>
			<content:encoded><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/10/27/tssjs-2009-no-more-loops-with-lambdaj/";</script><p>Speaker: Mario Fusco, LambdaJ creator</p>
<p>What makes me think this talk is going to have something do to with the <a href="http://en.wikipedia.org/wiki/Lambda_calculus">lambda calculus</a>, a subject I recall enjoying greatly during my Comp-Sci degree?</p>
<p>So&#8230; the heavily accented Mario describes the motivation for creating LambdaJ: To create a way to select beans of particular properties without all the hassle of loops i.e. iterating.</p>
<p>The result: A DSL to manipulate collections in pseudo-functional, statically-typed way.</p>
<p>LambdaJ comprises 2 main features: forEach and sort. Each of these methods are importable via static import.<br />
<pre><code>
forEach(personsInFamily.setLastName(„Fusco“);
sort(persons, on(Person.class).getAge());
</code></pre></p>
<p>The result is a compact was to express collections-based operations as a single line of code as opposed to using a sometimes complex loop, locally declared variables etc.</p>
<p>Mario shows several examples, which make this compactness quite clear.</p>
<p>However, he goes on to points out that LabmdaJ five times slower (average) than pure Java with his examples. Performance takes a because of all the reflection that goes on. However, he performance hit thinks this is unlikely to prove to be the bottleneck in practice.</p>
<p>Some other limitations:<br />
• Cannot infer type to be returned because collection class parameter is not reified at runtime.<br />
• Cannot use with final classes because cannot create dynamic proxy for final class.</p>
<p>The LambdaJ project is open-source and is hosted at <a href="http://lambdaj.googlecode.com">Google Code</a>.</p>
<p>Question raised: Why not use <a href="http://www.devarticles.com/c/a/Java/Hibernate-Criteria-Queries-in-Depth/">hibernate criteria query API</a>? Mario: Yes, can use this.<br />
LambdaJ is typically used in business layer after data has been fetched from DB (e.g. via hibernate.)</p>
<p>Presumably, then – for LambdaJ to be worth while to use in practice – you need to have a situation where multiple evaluations are performed against a previously fetched result set. This would then (potentially) save multiple fetches against the DB, depending on the queries involved.</p>
<p>Mario&#8217;s slides, which show plenty of code-samples, are available <a href="http://www.slideshare.net/javasymposium/mario-fusco-presenation-lambdaj-at-tssjs-europe">here</a>.</p>
<p>Summary: I sense a slight buzz of skepticism emanating from the audience and my feeling is reenforced when very few questions are posed. Whilst LambdaJ code is significantly less verbose than its Java equivalent, I suspect the situations in which it could be used are relatively few in number.</p>
<p>Oh: And I was totally off about LambdaJ being in someway related to the Lambda Calculus. Neither have loops, that&#8217;s true, but the commonality ends there.</p>
<script>var dzone_style="2";</script><script language="javascript" src="http://widgets.dzone.com/widgets/zoneit.js"></script>]]></content:encoded>
			<wfw:commentRss>http://www.canoo.com/blog/2009/10/27/tssjs-2009-no-more-loops-with-lambdaj/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TSSJS 2009: Rapid Dynamic Modular Application Development with Impala</title>
		<link>http://www.canoo.com/blog/2009/10/27/tssjs-2009-rapid-dynamic-modular-application-development-with-impala/</link>
		<comments>http://www.canoo.com/blog/2009/10/27/tssjs-2009-rapid-dynamic-modular-application-development-with-impala/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 11:50:00 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Mike Mannion]]></category>

		<guid isPermaLink="false">http://canoo.com/blog/?p=758</guid>
		<description><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/10/27/tssjs-2009-rapid-dynamic-modular-application-development-with-impala/";</script>Full title of talk: Rapid Dynamic Modular Application Development with Impala, the Simple Approach to Dynamic Modules with Spring Speaker: Phil Zoio, Impala creator Phil begins by highlighting a major weakness of basic Spring: The single address-space available to all the beans, which becomes increasingly unwieldy as number of classes/beans increase. Impala enables the developer [...]]]></description>
			<content:encoded><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/10/27/tssjs-2009-rapid-dynamic-modular-application-development-with-impala/";</script><p>Full title of talk: Rapid Dynamic Modular Application Development with Impala, the Simple Approach to Dynamic Modules with Spring</p>
<p>Speaker: Phil Zoio, Impala creator</p>
<p>Phil begins by highlighting a major weakness of basic Spring: The single address-space available to all the beans, which becomes increasingly unwieldy as number of classes/beans increase. Impala enables the developer to group beans into logical modules, which can be subsequently swapped out dynamically.</p>
<p>Phil goes on to demo runtime-changes to a spring config as well as a bean implementation class, which result in Impala automatically re-loading the modules concerned. This is achieved by breaking the static (compile-time) coupling between client and implementation code.</p>
<p>Phil now shows a neat little interactive test runner, which I assume is part of the Impala package. One of the commands enables the user to explicitly reload a particular module, which is obviously more efficient than reloading the entire app. Using this in conjunction with the dynamic replacement of code results in extremely fast test/fix-roundtrips.</p>
<p>Phil now talks about the difference between the Impala and OSGi approaches. No third-party library versioning with Impala – in contrast to OSGi. OSGi, however, is more complex was never conceived for large enterprise systems.</p>
<p>Phil&#8217;s slides are available <a href="http://www.slideshare.net/javasymposium/phil-zoio-presentation-impala">here</a>.</p>
<p>Summary: An informative even if (again) somewhat dry talk about a potentially interesting tool. Of course, one can&#8217;t judge the effectiveness of the tool on the basis of a single presentation, especially when it comes from the tool&#8217;s inventor.</p>
<p>One final thing: Phil didn&#8217;t mention <a href="http://jcp.org/en/jsr/detail?id=294">JSR294</a>. Methinks the discussions on how to best modularise Java are going to persist a while&#8230;</p>
<script>var dzone_style="2";</script><script language="javascript" src="http://widgets.dzone.com/widgets/zoneit.js"></script>]]></content:encoded>
			<wfw:commentRss>http://www.canoo.com/blog/2009/10/27/tssjs-2009-rapid-dynamic-modular-application-development-with-impala/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TSSJS 2009: Real Life Java EE Performance</title>
		<link>http://www.canoo.com/blog/2009/10/27/tssjs-2009-real-life-java-ee-performance/</link>
		<comments>http://www.canoo.com/blog/2009/10/27/tssjs-2009-real-life-java-ee-performance/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 10:30:01 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Mike Mannion]]></category>

		<guid isPermaLink="false">http://canoo.com/blog/?p=756</guid>
		<description><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/10/27/tssjs-2009-real-life-java-ee-performance/";</script>Speaker: Matt Brasier, Principal Consulting LTD Speaker/company background: Non-functional requirements. Matt&#8217;s philosophy: • Good understanding is the best performance/tuning tool • Common &#38; open source tools • Observe, hypothesize, tweak, test • Trust no-one He goes on to describe three case studies, which demonstrate how he puts this philosophy in practice. Matt&#8217;s slides (which also [...]]]></description>
			<content:encoded><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/10/27/tssjs-2009-real-life-java-ee-performance/";</script><p>Speaker: Matt Brasier, Principal Consulting LTD<br />
Speaker/company background: Non-functional requirements.</p>
<p>Matt&#8217;s philosophy:<br />
•	Good understanding is the best performance/tuning tool<br />
•	Common &amp; open source tools<br />
•	Observe, hypothesize, tweak, test<br />
•	Trust no-one</p>
<p>He goes on to describe three case studies, which demonstrate how he puts this philosophy in practice.</p>
<p>Matt&#8217;s slides (which also outline the case studies) are available <a href="http://www.slideshare.net/javasymposium/matt-brasier-presentation">here</a>.</p>
<p>The key message for me is the application of systematic analysis, hypothesis formulation and testing. This can, in fact, be described as a scientific approach, which gets a big thumbs up from me.</p>
<p>A second key message was the high value of a centralized repository of problems/solutions. This is apparently what Matt&#8217;s company has set up, and the repository now represents significant intellectual capital for the company.</p>
<p>Summary: I found Matt&#8217;s didactic style a tad dry and bullet-pointy; but all in all the substance made up for this and for that the talk was indeed worthwhile.</p>
<script>var dzone_style="2";</script><script language="javascript" src="http://widgets.dzone.com/widgets/zoneit.js"></script>]]></content:encoded>
			<wfw:commentRss>http://www.canoo.com/blog/2009/10/27/tssjs-2009-real-life-java-ee-performance/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TSSJS 2009: Keynote with Neil Ford</title>
		<link>http://www.canoo.com/blog/2009/10/27/tssjs-2009-keynote-with-neil-ford/</link>
		<comments>http://www.canoo.com/blog/2009/10/27/tssjs-2009-keynote-with-neil-ford/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 10:15:01 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Mike Mannion]]></category>

		<guid isPermaLink="false">http://canoo.com/blog/?p=753</guid>
		<description><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/10/27/tssjs-2009-keynote-with-neil-ford/";</script>Expectations are high as Thought Works&#8217; Neil Ford takes to the stage. The title of his keynote: Predicting the Future Neil wants to advise us how to avoid becoming IT-dinosaurs&#8230; and I have to confess I&#8217;ve chuckled at the occasional COBOL-developer joke on more than one occasion. So I&#8217;m all ears! Yes, we&#8217;re bad at [...]]]></description>
			<content:encoded><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/10/27/tssjs-2009-keynote-with-neil-ford/";</script><p>Expectations are high as Thought Works&#8217; Neil Ford takes to the stage. The title of his keynote: Predicting the Future</p>
<p>Neil wants to advise us how to avoid becoming IT-dinosaurs&#8230; and I have to confess I&#8217;ve chuckled at the occasional COBOL-developer joke on more than one occasion. So I&#8217;m all ears!</p>
<p><img class="alignnone size-medium wp-image-782" title="279292300_1ca9849d22" src="http://canoo.com/blog/wp-content/uploads/2009/10/279292300_1ca9849d22-278x300.jpg" alt="279292300_1ca9849d22" width="278" height="300" /></p>
<p>Yes, we&#8217;re bad at predicting future outcomes. Neil cites the classic <a href="http://en.wikipedia.org/wiki/Monty_Hall_problem">Monty Hall problem</a>, which shows human ineptitude when it comes to evaluating conditional probabilities.</p>
<p>Talking about paradigm shifts, he cites the iPhone, and notes that the big hit applications have generally exploited not just the device itself, but have combined numerous features of the iPhone platform.</p>
<p>He notes that Moore&#8217;s law can no longer by relied upon to give us a doubling in app performance over an 18 month period, and that WE &#8211; the developers &#8211; will need to achieve greater parallelism in our software if we are to profit from multicore processors.</p>
<p>Functional languages have an important contribution to make here (names Haskell, Scale, Clojure, F# as examples) as they to not suffer from (or are less susceptible to) synchronization and locking issues, which is what makes thread-programming in languages such as Java so difficult to get right. IN particular, Ford names Clojure as a potentially exciting intersection between dynamic and function languages in the sense that it gets the best of both worlds.</p>
<p>We are then reminded that warfare is frequently a source of (destructive) innovation; and are then advised to heed the warnings of Dick Feynman (physics genius, communicator and contributor to the<a href="http://en.wikipedia.org/wiki/Manhattan_Project"> Manhattan project</a>) and George Orwell (author of <a href="http://en.wikipedia.org/wiki/Nineteen_Eighty-Four">1984</a> and prophet of pervasive government <a href="http://www.gothamgazette.com/article/civilrights/20060323/3/1796">surveillance</a>).</p>
<p>[So where are we going with all this Neil? It'll be killer robots next!]</p>
<p>Well&#8230; there you <a href="http://dvice.com/archives/2006/11/samsung-creates-machinegunning.php">go</a>.</p>
<p>Now here&#8217;s an interesting prediction from Ford: Apple to become the world’s biggest bank. It&#8217;s true: The iPhone has increasingly shown it&#8217;s ability to generate huge turnovers via micro-payments.</p>
<p>The final quote in this quote-heavy keynote comes from from management guru <a href="http://en.wikipedia.org/wiki/Peter_Drucker">Peter Drucker</a>: „Best way to create the future is to create it.“</p>
<p>Summary: Neil&#8217;s got the gift of the gab and he&#8217;s a role model for effective presentation style (bullet-point suckers take note). However, on this occasion his chosen collection of weighty quotes and iconic images did not quite add up to a the kind of coherent narrative on &#8220;Predicting the Future&#8221; I would have liked. As for how to avoid my own dinosaurification: <em>I&#8217;m gonna build me a killer robot!!!</em></p>
<script>var dzone_style="2";</script><script language="javascript" src="http://widgets.dzone.com/widgets/zoneit.js"></script>]]></content:encoded>
			<wfw:commentRss>http://www.canoo.com/blog/2009/10/27/tssjs-2009-keynote-with-neil-ford/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Canooies visit physics lab</title>
		<link>http://www.canoo.com/blog/2009/08/10/canooies-visit-physics-lab/</link>
		<comments>http://www.canoo.com/blog/2009/08/10/canooies-visit-physics-lab/#comments</comments>
		<pubDate>Mon, 10 Aug 2009 07:24:59 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Mike Mannion]]></category>

		<guid isPermaLink="false">http://canoo.com/blog/?p=692</guid>
		<description><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/08/10/canooies-visit-physics-lab/";</script>This week some of Canooies had the privilege visiting one of Basel University&#8217;s physics research laboratories. There we were given a fascinating tour of the lab by its head Professor Martino Poggio. Prior to entering the lab Martino described some of the theory behind the lab&#8217;s principal focus, which is Nanoscale magnetic resonance imaging. What [...]]]></description>
			<content:encoded><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2009/08/10/canooies-visit-physics-lab/";</script><p>This week some of Canooies had the privilege visiting one of Basel University&#8217;s physics research laboratories. There we were given a fascinating tour of the lab by its head <a href="http://poggiolab.unibas.ch/people.htm">Professor Martino Poggio</a>. Prior to entering the lab Martino described some of the theory behind the lab&#8217;s principal focus, which is <em>Nanoscale magnetic resonance imaging</em>.</p>
<p>What we encountered was a world of extremes. The techniques Martino and his team are developing may one day give us accurate 3D images of entire molecules, such as proteins. To obtain view of such tiny entities, samples are placed on miniscule springboards, the <em>length</em> of which substantially less than the width of a human hair!</p>
<p>If that weren&#8217;t challenging enough, measurements need to take place at temperatures approaching absolute zero &#8211; that&#8217;s a chilling minus 270°C!</p>
<p>Many thanks Martino for providing us with some fascinating insights into your cutting-edge experiments!</p>
<p>For more information on the lab&#8217;s work, check out Martino&#8217;s site <a href="http://poggiolab.unibas.ch/">here</a>.</p>
<p><span style="color: #ffffff;">.</span></p>
<p><span style="color: #ffffff;">.</span></p>
<p style="text-align: center;"><img class="size-medium wp-image-698 aligncenter" title="L1030193" src="http://canoo.com/blog/wp-content/uploads/2009/08/L10301931-300x225.jpg" alt="L1030193" width="300" height="225" /></p>
<p style="text-align: center;"><em>Marc Hermann (Canoo) and Guenter Losert (Canoo)</em></p>
<p style="text-align: center;"><em><span style="color: #ffffff;">.</span></em></p>
<p style="text-align: center;"><img class="alignnone size-medium wp-image-697" title="L1030192" src="http://canoo.com/blog/wp-content/uploads/2009/08/L10301921-300x225.jpg" alt="L1030192" width="300" height="225" /></p>
<p style="text-align: center;"><em>Per Junel (Canoo) and Martino</em></p>
<p style="text-align: center;"><em><span style="color: #ffffff;">.</span></em></p>
<p style="text-align: center;"><img class="alignnone size-medium wp-image-696" title="L1030191" src="http://canoo.com/blog/wp-content/uploads/2009/08/L10301911-300x225.jpg" alt="L1030191" width="300" height="225" /></p>
<p style="text-align: center;"><em>Some happy &#8220;students&#8221;</em></p>
<script>var dzone_style="2";</script><script language="javascript" src="http://widgets.dzone.com/widgets/zoneit.js"></script>]]></content:encoded>
			<wfw:commentRss>http://www.canoo.com/blog/2009/08/10/canooies-visit-physics-lab/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sun asks for a repeat performance!</title>
		<link>http://www.canoo.com/blog/2008/05/09/sun-asks-for-a-repeat-performance/</link>
		<comments>http://www.canoo.com/blog/2008/05/09/sun-asks-for-a-repeat-performance/#comments</comments>
		<pubDate>Fri, 09 May 2008 13:06:13 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[JavaFX]]></category>
		<category><![CDATA[JavaOne]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Dierk König]]></category>
		<category><![CDATA[Mike Mannion]]></category>
		<category><![CDATA[Speakers/Sessions]]></category>

		<guid isPermaLink="false">http://canoo.com/blog/?p=260</guid>
		<description><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2008/05/09/sun-asks-for-a-repeat-performance/";</script>Fun and great feedback following Mike and Dierk&#8217;s talk at JavaOne; Sun asks for a repeat performance! As previously announced, Dierk and I held a talk at JavaOne today (actually Dierk held no less than TWO talks &#8211; there&#8217;s just no stopping this guy!) The title of our over-subscribed session was &#8220;Going Mobile with JavaFX [...]]]></description>
			<content:encoded><![CDATA[<script type="text/javascript">dzone_url = "http://www.canoo.com/blog/2008/05/09/sun-asks-for-a-repeat-performance/";</script><p><em>Fun and great feedback following Mike and Dierk&#8217;s talk at JavaOne; Sun asks for a repeat performance!</em></p>
<p><img src="http://canoo.com/blog/wp-content/uploads/2008/03/javaone.jpg" alt="" title="javaone.jpg" width="110" height="38" class="alignnone size-medium wp-image-228" /></p>
<p>As previously announced, Dierk and I held a talk at JavaOne today  (actually Dierk held no less than TWO talks &#8211; there&#8217;s just no stopping this guy!) The title of our over-subscribed session was <strong>&#8220;Going Mobile with JavaFX Script Technology, Groovy and Google Android&#8221;</strong> and in addition to an eager and informed public, we were  honoured to have some of JavaFX&#8217;s and Android&#8217;s champions and contributors in the audience.</p>
<p>We took the first few moments of the session to emphasize one of Canoo&#8217;s core value propositions: The discernment of hyperbole from reality. Indeed, much of my part of the talk concerned the current<br />
status of JavaFX Script (scheduled official release in June 08) and how it does not (yet) live up to many of the claims being made about it.</p>
<p>Unsurprisingly, our statements concerning the immature status of functionality and tooling in JFX were not met with silence. And in a delightfully spontaneous moment at the end of the talk we invited<br />
James Weaver to join us on stage for what amounted to a mini panel session.</p>
<p>James&#8217; main point was that JFX makes rich client development  significantly easier than, say, with Swing, and that this can only be  good for the Java platform. Of course, we don&#8217;t disagree with this<br />
statement. But where differences in opinion remain is (a) in the use of the word &#8220;significantly&#8221;; and (b) in our level of confidence  regarding whether or not JavaFX Script will succeed in a market, where<br />
competition is tough, well-established, and only getting tougher by  the week. JFX&#8217;s current deficiencies (which we talked about in some detail) of course only reduce its chances of success.</p>
<p>So what&#8217;s our primary take-home based on the feedback we got directly after the talk and at the Canoo booth? That a level-headed and unbiased opinion on a given technology is what the majority of<br />
conference attendees are looking for. And who are these attendees? Quite simply: Real people representing real companies who serve real customers, who nevertheless enjoy being inspired by examples from the cutting edge, such as our <a href="http://musicpinboard.com/">MusicPinboard</a> JavaFX and Mobile Shopping Android applications.</p>
<p>Finally, to top off all the great feedback, Sun asked us to repeat the  session this coming Friday!!! So if you didn&#8217;t catch us the first time around, we&#8217;d be thrilled to see you in hall 302 of the Moscone Center  at 13:30.</p>
<p>Thanks to everyone who did attend for coming and for the positive feedback!</p>
<script>var dzone_style="2";</script><script language="javascript" src="http://widgets.dzone.com/widgets/zoneit.js"></script>]]></content:encoded>
			<wfw:commentRss>http://www.canoo.com/blog/2008/05/09/sun-asks-for-a-repeat-performance/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

