<?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>Really Aced &#187; swiz</title>
	<atom:link href="http://blog.sommestad.net/tag/swiz/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.sommestad.net</link>
	<description>Web and Cocoa development through the eyes of Kristofer Sommestad, a SWAD developer.</description>
	<lastBuildDate>Sun, 23 Jan 2011 12:21:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Presentation: How to go from Flash to Flex development and why</title>
		<link>http://blog.sommestad.net/2009/10/presentation-on-how-to-evolve-in-development-of-large-flash-applications/</link>
		<comments>http://blog.sommestad.net/2009/10/presentation-on-how-to-evolve-in-development-of-large-flash-applications/#comments</comments>
		<pubDate>Fri, 16 Oct 2009 13:34:51 +0000</pubDate>
		<dc:creator>esset</dc:creator>
				<category><![CDATA[Flash & Flex]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flash catalyst]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[flex 4]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[large flash application]]></category>
		<category><![CDATA[mxml]]></category>
		<category><![CDATA[pipeline]]></category>
		<category><![CDATA[presentation]]></category>
		<category><![CDATA[processes]]></category>
		<category><![CDATA[productivity]]></category>
		<category><![CDATA[ria]]></category>
		<category><![CDATA[swiz]]></category>
		<category><![CDATA[wysiwyg]]></category>

		<guid isPermaLink="false">http://blog.sommestad.net/?p=187</guid>
		<description><![CDATA[I&#8217;ve conducted a small study recently, trying to figure out if we could evolve in our Flash RIA development somehow. I&#8217;ve read and experimented a lot with Flex, MXML and related tools to see if we&#8217;re missing something (we&#8217;re not using it very much today). It&#8217;s not that we&#8217;re unhappy with how things are done [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve conducted a small study recently, trying to figure out if we could evolve in our Flash RIA development somehow. I&#8217;ve <a href="http://blog.sommestad.net/category/development/flash-flex-development/">read and experimented</a> a lot with <a href="http://blog.sommestad.net/tag/flex/">Flex</a>, <a href="http://blog.sommestad.net/tag/mxml/">MXML</a> and related tools to see if we&#8217;re missing something (we&#8217;re not using it very much today).</p>
<p>It&#8217;s not that we&#8217;re unhappy with how things are done now, but with the new <a href="http://labs.adobe.com/technologies/flex4sdk/">Flex 4</a> and everything associated to it, I&#8217;ve felt that there&#8217;s an opportunity to make some improvements to our workflow.</p>
<h3>Summing it up</h3>
<p>As presented below, there are a few conclusions to be drawn here, for example:</p>
<ul>
<li><a href="http://labs.adobe.com/technologies/flex4sdk/">Flex 4</a> seems to be a really <a href="http://www.insideria.com/2009/10/the-aftermath-of-adobe-max-200.html">nice upgrade</a> and probably something you can&#8217;t ignore in the end.</li>
<li>There&#8217;s little information on the web about development of <strong>large</strong> Flash/RIA applications (like those we do). Pretty much all focus is on Flex development of small-to-medium sized applications. I&#8217;m not to speculate on the reasons why no one is spreading the word, but hope that my work can shed some light on the area.</li>
<li>There&#8217;s a lot of fuzz around the <a href="http://www.adobe.com">Adobe</a> products in general and Flex in particular. Very few seem to have any criticism at all when it comes to Flex, which is a bit disturbing, as nothing that looks too good to be true ever is. But maybe I&#8217;ve just been looking at the wrong side of the web? Just a reflection&#8230;</li>
</ul>
<h3>Presentation of findings</h3>
<p>I held an <a href="http://www.jadestone.se">in-house</a> presentation on my findings yesterday, and I thought I&#8217;d better share it with the world (= your <a href="http://www.google.com">favourite</a> <a href="http://www.yahoo.com">search</a> <a href="http://www.bing.com">engine</a>). I&#8217;ve stripped it down a bit, as there were some company specific things in there, but most of it is free for everyone to read.</p>
<p>A few things to consider before jumping in, though:</p>
<ul>
<li>This is a PowerPoint (well, <a href="http://www.openoffice.org">OpenOffice</a> actually) slide with <em>notes.</em> There was lots said when presenting each slide, so I can&#8217;t guarantee that you&#8217;ll learn everything I said. I understand this is not perfect, but figured that it&#8217;s better to upload this than nothing.</li>
<li>It&#8217;s just plain slides with notes, really. I did have some imagery in the original slides, but left it out as it&#8217;s probably only needed as &#8220;distraction&#8221; when viewed on a large screen with me talking next to it. So don&#8217;t get mad if it&#8217;s boring!</li>
<li>The plan wasn&#8217;t actually to hold an in-house presentation, but I figured it was a good idea. So the format on which it is presented may or may not be optimal, as it&#8217;s pretty much been summarized as I&#8217;ve went along. It could be a good idea to shape it up and make it a bit better, but at the moment, it&#8217;s more important just getting it &#8220;out there&#8221;.</li>
</ul>
<h3>The presentation itself</h3>
<p>With that having been said &#8211; and my back having been covered <img src='http://blog.sommestad.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  &#8211; here it is (also <a href="../wp-content/2009/10/Catching_up_with_Flex_public.pdf" target="_blank">available as a PDF</a>):</p>
<p>[gview file="http://blog.sommestad.net/wp-content/2009/10/Catching_up_with_Flex_public.pdf" width=538]</p>
<p><strong>EDIT</strong>: Also <a href="http://www.slideshare.net/esset09/catching-up-with-flex">added the presentation to SlideShare</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sommestad.net/2009/10/presentation-on-how-to-evolve-in-development-of-large-flash-applications/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Using the Swiz MVC framework for Flex</title>
		<link>http://blog.sommestad.net/2009/09/using-the-swiz-mvc-framework-for-flex/</link>
		<comments>http://blog.sommestad.net/2009/09/using-the-swiz-mvc-framework-for-flex/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 09:27:08 +0000</pubDate>
		<dc:creator>esset</dc:creator>
				<category><![CDATA[Flash & Flex]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[puremvc]]></category>
		<category><![CDATA[spring]]></category>
		<category><![CDATA[swiz]]></category>

		<guid isPermaLink="false">http://blog.sommestad.net/?p=130</guid>
		<description><![CDATA[In my post a few days ago, I mentioned that that Scott Delap and his team were using the Swiz MVC framework. I decided to try it out, and I have to say it looks quite promising. The Swiz tagline is &#8220;Brutally simple micro-architecture for Rich Internet Application development with Adobe Flex&#8221;, and it was [...]]]></description>
			<content:encoded><![CDATA[<p>In <a href="http://blog.sommestad.net/2009/09/presentation-on-creating-an-online-multiplayer-game-lobby-in-flex-air/">my post</a> a few days ago, I mentioned that that <a href="http://www.infoq.com/author/Scott-Delap">Scott Delap</a> and his team were using the <a href="http://code.google.com/p/swizframework/">Swiz MVC framework</a>. I decided to try it out, and I have to say it looks quite promising. The Swiz tagline is &#8220;Brutally simple micro-architecture for Rich Internet Application development with Adobe Flex&#8221;, and it was actually pretty easy to set up. The framework is similar to the way Java Spring works with autowiring, so if you&#8217;re familiar with that you&#8217;ll probably like Swiz.</p>
<p>I&#8217;ve only read the docs and tried the demo out so far, but it&#8217;s a very interesting candidate for future Flex projects. It&#8217;s quite easy to separate the views and controllers from the business logic and using both MXML and ActionScript views seems to work fine. Swiz really gets the job done.</p>
<h3>Seems better than PureMVC</h3>
<p>I&#8217;ve tested the <a href="http://www.puremvc.org">PureMVC framework</a> earlier and kind of liked it, but developing with PureMVC gets quite repetitive and you produce quite a lot of boilerplate code. I like it better when the MVC framework easily guides you towards a proper structure, without having to do too much work to get there.</p>
<p>Also, there seem to be pretty good community activity in the <a href="http://code.google.com/p/swizframework/">Swiz Google Code project</a>.</p>
<p>It seems like the best MVC framework candidate so far!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sommestad.net/2009/09/using-the-swiz-mvc-framework-for-flex/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Presentation on creating an online multiplayer game lobby in Flex &amp; Air</title>
		<link>http://blog.sommestad.net/2009/09/presentation-on-creating-an-online-multiplayer-game-lobby-in-flex-air/</link>
		<comments>http://blog.sommestad.net/2009/09/presentation-on-creating-an-online-multiplayer-game-lobby-in-flex-air/#comments</comments>
		<pubDate>Fri, 18 Sep 2009 13:38:37 +0000</pubDate>
		<dc:creator>esset</dc:creator>
				<category><![CDATA[Flash & Flex]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[asunit]]></category>
		<category><![CDATA[blaze ds]]></category>
		<category><![CDATA[flexmonkey]]></category>
		<category><![CDATA[flexunit]]></category>
		<category><![CDATA[fluint]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[graniteds]]></category>
		<category><![CDATA[hessian]]></category>
		<category><![CDATA[lcds]]></category>
		<category><![CDATA[LiveCycleDS]]></category>
		<category><![CDATA[mxml]]></category>
		<category><![CDATA[puremvc]]></category>
		<category><![CDATA[rest]]></category>
		<category><![CDATA[selenium]]></category>
		<category><![CDATA[swiz]]></category>
		<category><![CDATA[weborb]]></category>
		<category><![CDATA[wysiwyg]]></category>

		<guid isPermaLink="false">http://blog.sommestad.net/?p=117</guid>
		<description><![CDATA[I came across a really interesting presentation from Scott Delap on InfoQ: Scott Delap shares his experience creating a lobby interface for an online game using Flex&#38;Air. He details on related technologies used, available tooling and frameworks pros&#38;cons, remoting options, unit, functional and load testing approach used. To sum it up, it&#8217;s a good and [...]]]></description>
			<content:encoded><![CDATA[<p>I came across a <a href="http://www.infoq.com/presentations/Flex-Air-in-the-Trenches-Scott-Delap">really interesting presentation</a> from <a href="http://www.infoq.com/author/Scott-Delap">Scott Delap</a> on <a href="http://www.infoq.com">InfoQ</a>:</p>
<blockquote><p>Scott Delap shares his experience creating a lobby interface for an online game using Flex&amp;Air. He details on related technologies used, available tooling and frameworks pros&amp;cons, remoting options, unit, functional and load testing approach used.</p></blockquote>
<p>To sum it up, it&#8217;s a good and elaborate presentation from a Java developer&#8217;s perspective, with reflections from a online multiplayer game development project. I enjoyed the full hour of watching it! <img src='http://blog.sommestad.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>They&#8217;ve dealt with many of the questions we have and their conclusions are very interesting.</p>
<h3>Presentation summary</h3>
<p>I&#8217;ve summarized the most interesting contents of the presentation. They&#8217;re actually notes taken during the presentation, so please forgive any poor language or formatting:</p>
<blockquote>
<ul>
<li>The Flex Builder WYSIWYG actually works, which isn&#8217;t common at all</li>
<li> MVC in Flex is pretty much MVc, where the controller and view are sort of bundled together</li>
<li> When choosing an MVC framework, <a href="http://code.google.com/p/swizframework/">Swiz</a> turned out to be most interesting (among likes of <a href="http://opensource.adobe.com/wiki/display/cairngorm/Cairngorm">Cairngorm</a>, <a href="http://puremvc.org/">PureMVC</a> etc). Swiz is similar to Spring with auto-wiring. Also supports Dependency Injection, Command Chains, and has MXML support even for non-views (i.e. for wiring the M:s, V:s and C:s).</li>
</ul>
<p><strong>Their MVC implementation:</strong></p>
<ul>
<li>MXML for the views</li>
<li>ActionScript for the controllers</li>
<li>Remoting interfaces + specific back-end implementation</li>
<li> Swiz wiring it all up</li>
<li> They found no real reasons to use a &#8220;big MVC framework&#8221;, whereas Swiz did the job well enough</li>
</ul>
<p><strong>Remoting</strong></p>
<p>Looked at several candidates, where <a href="http://www.themidnightcoders.com/products/weborb-for-java/overview.html">WebORB</a>, <a href="http://hessian.caucho.com/">Hessian</a>, <a href="http://xmpp.org/">XMPP</a>, <a href="http://www.graniteds.org/">GraniteDS</a>, Rest not weren&#8217;t considered enough for various reasons. Also evaluated <a href="http://opensource.adobe.com/wiki/display/blazeds/BlazeDS/">BlazeDS</a>, which doesn&#8217;t scale and has no NIO support.<br />
Best candidate: <strong><a href="http://www.adobe.com/products/livecycle/dataservices/">LiveCycleDS</a> -</strong> supports NIO, RTMP and lots of connections:</p>
<ul>
<li>Good for remoting Java &lt;&gt; Actionscript and easy to integrate</li>
<li>Some Java &lt;&gt; ActionScript translations a bit problematic, i.e. enums and null values</li>
<li> Some lack of documentation when it comes to messaging</li>
</ul>
<p><strong>Unit testing</strong></p>
<ul>
<li> Evaluated <a href="http://asunit.org/">ASUnit</a>, <a href="http://opensource.adobe.com/wiki/display/flexunit/FlexUnit">FlexUnit</a>, DpUnit/Fluint</li>
<li> Chose <a href="http://code.google.com/p/fluint/">Fluint</a>, but could just as well have chosen FlexUnit. Unit testing Utilities, Controllers, Remoting Services with Mocks</li>
</ul>
<p><strong>Functional testing</strong></p>
<ul>
<li> <a href="http://code.google.com/p/flexmonkey/">FlexMonkey</a> not working properly with AIR and had a bit of lag</li>
<li> Wrote a stripped-down version of Selenium</li>
</ul>
<p><strong>Load testing</strong><br />
Currently no good way of performing load testing.</p>
<ul>
<li>Hard to simulate 1000:s of users</li>
<li> No really good tool for load testing at the moment</li>
</ul>
<p><strong>Final thoughts on Flex</strong></p>
<ul>
<li> MXML works as advertised</li>
<li>Easy to do complex things</li>
</ul>
</blockquote>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 380px; width: 1px; height: 1px;">http://opensource.adobe.com/wiki/display/blazeds/BlazeDS/</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.sommestad.net/2009/09/presentation-on-creating-an-online-multiplayer-game-lobby-in-flex-air/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

