<?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>FlashLite &#8211; Software, Fitness, and Gaming &#8211; Jesse Warden</title>
	<atom:link href="https://jessewarden.com/category/flashlite/feed" rel="self" type="application/rss+xml" />
	<link>https://jessewarden.com</link>
	<description>Software &#124; Fitness &#124; Gaming</description>
	<lastBuildDate>Sat, 29 Mar 2008 00:48:39 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://jessewarden.com/wp-content/uploads/2016/08/cropped-Lambda2-32x32.png</url>
	<title>FlashLite &#8211; Software, Fitness, and Gaming &#8211; Jesse Warden</title>
	<link>https://jessewarden.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Post Microsoft MIX 2008 Thoughts</title>
		<link>https://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html</link>
					<comments>https://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html#comments</comments>
		
		<dc:creator><![CDATA[JesterXL]]></dc:creator>
		<pubDate>Tue, 18 Mar 2008 00:46:59 +0000</pubDate>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Branding]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Director]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Expression]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[FlashLite]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[WPF]]></category>
		<guid isPermaLink="false">http://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html</guid>

					<description><![CDATA[If you are in a hurry, here are some links with excerpts about the section. Contents Introduction &#8211; What and Why MIX? Conference Grounds &#8211; Where was MIX and how did it go down DoubleClick &#8211; Syndication ready Silverlight Have we seen this before? &#8211; &#8220;Dude, Flash did that years ago.&#8221; Silverlight Adaptive Streaming &#8211; [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>If you are in a hurry, here are some links with excerpts about the section.</p>
<p><strong>Contents</strong></p>
<ul>
<li><a href="http://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html#introduction">Introduction</a> &#8211; What and Why MIX?</li>
<li><a href="http://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html#conference_grounds">Conference Grounds</a> &#8211; Where was MIX and how did it go down</li>
<li><a href="http://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html#DoubleClick">DoubleClick</a> &#8211; Syndication ready Silverlight</li>
<li><a href="http://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html#iveseenthingsyoupeoplewouldntbelieve">Have we seen this before?</a> &#8211; &#8220;Dude, Flash did that years ago.&#8221;</li>
<li><a href="http://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html#adaptive">Silverlight Adaptive Streaming</a> &#8211; Curious about how the buffering works.</li>
<li><a href="http://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html#mobile">Silverlight on Mobile</a> &#8211; Same problems as Flash Lite has.</li>
<li><a href="http://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html#silverlight_flash">Silverlight for Flash Developers</a> &#8211; I do Flash; can I do Silverlight?</li>
<li><a href="http://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html#aol_silverlight">AOL&#8217;s Silverlight Email App</a> &#8211; Enterprise Silverlight</li>
<li><a href="http://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html#blog_mingle">Bloggers Mingling</a> &#8211; A-list bloggers, and who I met</li>
<li><a href="http://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html#conclusions">Conclusions</a> &#8211; What I took away from MIX.</li>
<li><a href="http://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html#history_repeating">History Repeating</a> &#8211; Some of the .NET crew is doing what the Java crew already did.</li>
<li><a href="http://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html#eatitsucka">Force Fed Silverlight</a> &#8211; Silverlight is an alternative, not a choice.</li>
</ul>
<p><span id="more-1262"></span><a title="introduction" name="introduction"></a><strong>Introduction</strong></p>
<p>I was invited to attend the <a href="http://visitmix.com/" title="Microsoft MIX 2008 conference" id="u3jt">Microsoft MIX 2008 conference</a>.  After discussing this years conferences as well as the technology involved with my CTO, he decided we should go together.  We headed to Las Vegas, where the conference was held, with the sole goal of evaluating <a href="http://silverlight.net/" title="Silverlight" id="psuw">Silverlight</a> for use in our self-service video platform, one of our company&#8217;s main products I work on.</p>
<p>Although a lot our focus nowadays is on Flash video, we have a significant amount of money and technology invested in Windows Media.  We also do way more Windows Media business, especially in the fun Live events arena.  We currently create a lot of custom <a href="http://adobe.com/go/platform/" title="Flash" id="pg0y">Flash</a> video players that interface with our back-end video CMS system.  Some are simple while others are full blown multimedia applications.</p>
<p>Can we do the same with Silverlight 2?</p>
<p>That was the fundamental question to answer, or have answered, at MIX.</p>
<p><a title="conference_grounds" name="conference_grounds"></a><strong>Conference Grounds</strong></p>
<p>I&#8217;d been to the <a href="http://www.venetian.com/" title="Venetian Hotel" id="lt9r">Venetian Hotel</a> in Vegas before for Macromedia&#8217;s / Adobe&#8217;s MAX 2006.  The MIX conference had about 1000 less attendees than MAX 2k6 (2000+), but was no less grand.  You could spot the geeks everywhere, and they seemed to outnumber the suits.  Registration was simple, our hotel accommodations were great, and the facilities and layout were a lot more informal that I originally expected.  I had this expectation of Microsoft being stodgy, formal, and just overall &#8220;proper like&#8221;.  This was smashed when <a href="http://jessewarden.com/2007/12/mix-n-mash-2k7-bill-gates-web-blend-and-silverlight.html">I visited the HQ</a> in Janurary and met Bill Gates in person, but apparently that experience wasn&#8217;t enough.</p>
<p>The conference, however, felt a lot like MAX.  It definitely was a fun multimedia event with code.  My CTO and I made a decent attempt to talk to a variety of conference goers, not just <a href="http://adobe.com/" title="Adobe" id="ngpe">Adobe</a> &amp; <a href="http://microsoft.com/" title="Microsoft" id="nm3m">Microsoft</a> employee&#8217;s.  My interest was solely to identify what their background was, why they were at MIX, and what they hoped to get out of it.  That, and I like meeting new people, especially people outside of the Adobe sphere who do software for a living.</p>
<p>Identifying a technology&#8217;s validity are based halfway on the technology&#8217;s merits.  The other half comes from identifying the community around the technology, and seeing if the 2 have a future together.  Do they mesh?  If not, is that a big deal?  Is there even an identifiable community?  How does it compare to other technology communities that I&#8217;m familiar with?  What are the pain points, and what are the great matches?</p>
<p>All of these questions I was continually asking myself quietly as I listened to speakers, both official and informal.</p>
<p><a title="DoubleClick" name="DoubleClick"></a><strong>Keynote Day 1: DoubleClick</strong></p>
<p>The were a couple things that I found interesting about the keynote.</p>
<p>The first was <a href="http://www.dartmotif.com/blog/" title="Ari" id="gpv7">Ari Paparo</a> from <a href="http://doubleclick.com/" title="DoubleClick" id="mvua">DoubleClick</a>.  <a href="http://weblogs.asp.net/scottgu/" title="Scott Guthrie" id="y1cg">Scott Guthrie</a>, Corporate Vice President in the Developer division at Microsoft, was talking about some of the Ad features in <a href="http://msdn.microsoft.com/vstudio/" title="Visual Studio" id="haab">Visual Studio</a>.  I had <a href="http://twitter.com/" title="Twittered" id="r4.0">Twittered</a> how irrelevant this stuff is in the media industry.  If Silverlight had any chance of making a dent in what Flash is doing, it needed to integrate with a real ad platform, like say,DoubleClick.</p>
<p>Not 5 seconds had I twittered that, Scott Guthrie had a witty introduction to Ari who showed a brief overview of the SDK of using DoubleClick with Silverlight.  For those who don&#8217;t know, DoubleClick is one of the largest ad platform providers.  I think last week in fact, the FCC approved <a href="http://google.com/" title="Google" id="b9kk">Google</a>&#8216;s acquisition of them.  One of many, we utilize DoubleClick at work to allow customers to have relevant video &amp; image ads to show in their video players, allowing them to monetize their content.</p>
<p>Getting an <a href="http://www.adobe.com/devnet/actionscript/articles/actionscript3_overview.html" title="ActionScript 3" id="xh6t">ActionScript 3</a>, heck even an mxmlc (<a href="http://adobe.com/products/flex/" title="Flex" id="n16z">Flex</a>&#8216;s compiler) compatible version from them has been like pulling teeth.  While frustrating, what was more frustrating was the lack of ANY Silverlight information a few months ago.  Our first project utilizing Silverlight, used primarily as a solution for Mac users since <a href="http://www.flip4mac.com/" title="Flip4Mac" id="vp9c">Flip4Mac</a> is noble, but flaky.  One of the things that eventually forced our Silverlight player to be removed, replaced by Windows Media, and thus flipping the bird to Mac users was the lack of official DoubleClick support.  It&#8217;s joke really since both Windows Media and Silverlight take the same ASX play list file (text file with a bunch of URL&#8217;s to media basically).</p>
<p>Now, it&#8217;s official; they can play ball in the online media &amp; syndication world.</p>
<p><a title="iveseenthingsyoupeoplewouldntbelieve" name="iveseenthingsyoupeoplewouldntbelieve"></a><strong>Keynote Day 1: &#8220;We&#8221; Have/Haven&#8217;t Seen This Before</strong></p>
<p>The second thing that really jumped out at me was a lot of the Silverlight content shown that could of been done in Flash, or had already been done years ago.  It was extremely frustrating to here the &#8220;oohs&#8221; and &#8220;aaaahs&#8221; from the crowd.  I&#8217;m like, &#8220;Have you all actually used the Internet in the past 5 years?&#8221;.</p>
<p>You couldn&#8217;t deny it, though.  There was a subtle vibe.  I looked around the crowd and saw muted discussion as each Silverlight application was shown.  Whatever negative thoughts I had clearly were not shared by the majority.  There was muted discussions amongst co-workers.  People sitting next to each other were in quiet, yet excited conversation.  Clearly they had ideas about how to utilize the technology and wanted to act on them.</p>
<p>As <a href="http://blogs.zdnet.com/Stewart/" title="Ryan" id="a2bb">Ryan</a> <a href="http://blog.digitalbackcountry.com/" title="Stewart" id="jf2b">Stewart</a> said, &#8220;This crowd isn&#8217;t just familiar with our technology&#8221;.  Ryan&#8217;s typical &amp; positive Care Bear Stare attitude did nothing to sway my feelings.  I call bs ; this has nothing to do with technology familiarity and everything with technology approachability.  The Microsoft crowd DID and DOES know about Flash &amp; Flex, at least some.  The only reason it was apparently invalid in their eyes is that it didn&#8217;t integrate with Visual Studio &amp; <a href="http://msdn.microsoft.com/netframework/" title=".NET" id="mjpa">.NET</a> easily, and wasn&#8217;t presented as a valid business case by Microsoft.  That has to be it.  There is no way the thousands of competent developers and designers there had no clue these abilities couldn&#8217;t be done pre-Silverlight Beta 1 in Flash or Flex.</p>
<p><a title="adaptive" name="adaptive"></a><strong>Keynote Day 1: Silverlight Adaptive Streaming</strong></p>
<p>Everyone thought it was really rad.  I yawned.  While down-graded on-t3h-fly streams has always been a touted feature of Windows Media, especially over Flash Media Server, I&#8217;ve never seen it work&#8230; at least at my place of employment.  Additionally, if you have enough bandwidth to down-grade streams on the fly from 500k to 100k, you&#8217;re clearly running on a network that has issues.  You&#8217;re best bet in this case is not to spend an inordinate amount of time trying to be clever and preload lower bit-rate streams into the buffer.  Instead, just feed them a 100k stream, and call it a day.  Disagree?  Works for YouTube, so&#8230;</p>
<p>Even Flash Player&#8217;s double-buffering has left me not impressed on uber-slow speed connections.  Besides, the graph they showed was VERY well designed, making me question the validity of every image thenceforth I was shown.  Bottom line: I&#8217;ll need to play with it on a production environment to really believe it has any value.  With most broadband customers, decent double-buffering prevents all problems with On Video &amp; 24/7 video.</p>
<p>There is a company out there that has a comparable solution for Flash, but that&#8217;s for another blog entry.  This does add ammo that Adaptive Streaming is valid, and thus usable.</p>
<p><a title="mobile" name="mobile"></a><strong>Keynote Day 1: Silverlight on Mobile</strong></p>
<p>It doesn&#8217;t really matter if it works, nor if they formed a partnership with <a href="http://www.nokia.com/" title="Nokia" id="duzn">Nokia</a>.  I&#8217;m American, and as such, my country is held in the grip of operators who have walled gardens.  Meaning, I get tons Flex &amp; Flash work, but only received 2 <a href="http://adobe.com/products/flashlite">Flash Lite</a> job offers in 2007.  Flash Lite is not popular here for the same reasons Silverlight won&#8217;t be.</p>
<p>Windows Mobile and CE have always been good.  I had Flash 6 running well back in 2003 on a Windows Mobile device.  Logically, one could assume Silverlight would work just as well.  At that point, though, I&#8217;d much rather utilize <a href="http://msdn2.microsoft.com/en-us/netframework/aa663326.aspx" title="WPF" id="zu-l">WPF</a>, not Silverlight&#8230; unless the content was already created, and you&#8217;re merely porting, but that&#8217;s never how I&#8217;ve seen it work.</p>
<p><a title="silverlight_flash" name="silverlight_flash"></a><strong>Sessions: Silverlight for Flash Developers</strong></p>
<p>Not the exact session name, but close enough.  I sat in for half of this; I believe one of blokes from <a href="http://cynergysystems.com/" title="Cynergy Systems" id="m0c4">Cynergy Systems</a> was presenting.  In the 40 minutes that I caught, he went over the API and how you can code Silverlight without using <a href="http://www.microsoft.com/expression/products/overview.aspx?key=blend" title="Blend" id="tcuz">Blend</a> just like you can code Flash without using the Timeline.</p>
<p>It was really uncool to see, even in C#, that working with XAML via code is still a bitch.  Some could argue that it&#8217;s nice to have such low-level access to XAML via code.  The presenter did the same thing in C# that I did in JavaScript in Silverlight 1.0: Abstract everything you normally do with GUI objects in a base class to act like the nice API of Flash.</p>
<p>So, instead of guiObject.SetValue(&#8220;Canvas.Left&#8221;, 30), you instead make a base class do that as a getter / setter, so you can instead go guiObject.x = 30.  Lame.</p>
<p>I&#8217;m not sure if the new GUI components fix this.  While boilerplate access can be fun if you&#8217;re an uber-geek, high level abstraction into easy to use components allow you to get stuff done.  Just ask <a href="http://blog.simb.net/2008/02/14/flex-developers-are-so-spoiled/" title="Simeon and his adventures" id="i.ia">Simeon and his adventures</a> in not-using the Flex SDK, instead trying various pure AS3 approaches.</p>
<p>What was nice, though, was that clearly XAML &amp; C# are definitely do-able by traditional Flash devs.  You&#8217;ll do the same thing that you did learning Flex &amp; AS3: Learning the new tool(s) and learning the new API.</p>
<p>Although the Adobe CS3 installation process is horrible (not Flex), I&#8217;m pretty sure the Visual Studio + Blend is worse, especially for the beta bits based on mourning Twits I read.  You&#8217;ve been warned.</p>
<p><a title="aol_silverlight" name="aol_silverlight"></a><strong>Sessions: AOL&#8217;s Silverlight Email Application</strong></p>
<p>The only true Enterprise application I saw during the keynote was <a href="http://aol.com/" title="AOL" id="apv4">AOL</a>&#8216;s email application.  A whopping 10-billion alarm bells went off when I saw it for a few reasons.</p>
<p>First, I&#8217;ve had the pleasure of working with &amp; meeting one of AOL&#8217;s good acquisitions.  They are a smart, talented team who&#8217;ve already had proven results.  That doesn&#8217;t mean that all of AOL is, but it certainly gives me the impression those who are doing the acquisitions know what they are doing.  Second, the <a href="http://en.wikipedia.org/wiki/AJAX" title="AJAX" id="sr4x">AJAX</a> version of their email client was really fast and seemed to work great.</p>
<p>You have a perfectly well and good AJAX email client&#8230; why in the heck did you make a Silverlight version?  I made a note to attend this session to find out.  I got my answer at the end during questions.  Someone asked did you look at Flash as an option (he should of said Flex, but whatever).  They responded with &#8220;Microsoft Partnership&#8221;.  That&#8217;s all I needed to know.  It was nice to know that they had an existing .NET team that already knew C#&#8230; whatever.  Programming is programming.  C#, AS3&#8230; if you can code, you can learn another language and platform.</p>
<p>However, this session overall was enlightening as to what Silverlight developers perceive they need. Aka, all the stuff the Flex SDK already has.  Keep in mind, they built this while Silverlight 2 was still in early development, so I don&#8217;t think they had any access to the controls.</p>
<p>That&#8217;s right, they had build their own component framework.  $10 bucks says they spent 6 months just building the component infrastructure they needed to actually build an application.</p>
<p>What they DID go over were high level &amp; low level details of each of the facets of their development.  This was the really cool part.  They built their own component base classes, and controls.  They built their own measurement engine.  They built their own skinning engine (read run-time skinning, not just Blend).  Basically, anything you&#8217;d find in the bowls of UIComponent in the Flex SDK and all of his helper classes, they did some of that on some level.  In short, a TON of work just to get started.  Very impressive from a developer perspective, very crazy from a &#8220;how much R&amp;D money did this team actually get from Microsoft, ZOMG!!!1111&#8221;.</p>
<p>Hopefully, other teams won&#8217;t have to do that much work assuming the components, both Microsoft&#8217;s and all the 3rd party ones I&#8217;ve seen advertised, do a lot of this already.</p>
<p>It was pretty annoying to debate quietly with my CTO in the audience.  &#8220;Dude, they have AbstractClass as a keyword.&#8221;</p>
<p>&#8220;What, AS3 doesn&#8217;t have that?&#8221;</p>
<p>&#8220;No dude&#8230; you just add an Abstract prefix and follow the convention.&#8221;</p>
<p>*grumble* *grumble*</p>
<p>&#8220;Dude, Silverlight has threads?&#8221;</p>
<p>&#8220;What, Flash Player doesn&#8217;t have threads?&#8221;</p>
<p>&#8220;OMG, you don&#8217;t NEED threads to produce a nice, working Enterprise application.&#8221;</p>
<p>&#8220;I can&#8217;t believe Flash Player doesn&#8217;t have threads.&#8221; *grumble* *grumble*</p>
<p>In conclusion, I was very impressed with what the AOL team had done.  I was also impressed that Silverlight 2 Beta 1 is already creating this level of application<strike>s</strike>.  &#8220;This level&#8221; will have be carefully scrutinized; I did not get a chance to play with the real application to see how it felt compared to <a href="http://gmail.com/" title="Gmail" id="yh05">Gmail</a>, <a href="http://www.goowy.com/" title="Gooey" id="gvtv">Gooey</a>, etc.  The AOL team also didn&#8217;t discuss their battle scars.  I love Flex &amp; Flash, but even I have tons of battle scars to talk about.</p>
<p><strong>Bizzness</strong></p>
<p>I managed to tag along on 2 business meetings my CTO had with 2 cool companies.  Can&#8217;t really say who they were, but can say they are relevant to my business: online video.  Totally out of my element, so naturally it was fun to learn how those things go down.  One was all formal with the pretense of informality, and the other was just an introduction to get to know each other.</p>
<p>It&#8217;s more likely for these things to happen since everyone is more likely to be at the same place at a conference like MIX.</p>
<p><a title="blog_mingle" name="blog_mingle"></a><strong>BlogZone MIXer</strong></p>
<p>I got invited to the BlogZone MIXer; a who&#8217;s who of the blogsphere.  I brought my CTO along to this A-List event.  There, your usual celebrities like <a href="http://scobleizer.com/" title="Robert Scoble" id="e-.-">Robert Scoble</a>, <a href="http://molly.com/" title="Molly Holzschlag" id="jmna">Molly Holzschlag</a>, <span id="ctl00_MainPlaceHolder_EntryList_ctl01_EntryTemplate_BodyLabel">Eric Zocher, </span>Ryan Stewart, etc.  The one dude I really got to have interesting conversations that I never finished was <a href="http://alex.dojotoolkit.org/" title="Alex Russell" id="zciy">Alex Russell</a>.  Among other things, he&#8217;s one of the creators of <a href="http://dojotoolkit.org/" title="Dojo" id="c1-4">Dojo</a>, the Open Source DHTML toolkit written in JavaScript that helps abstract browser incompatibilities.  Anyone who does JavaScript for a living is a prime target for my wrath.  Unfortunately, he was really cool so I found it really hard to take the piss out of him.</p>
<p>I drilled him about his role on the &#8220;Board&#8221;.  You know, the ones who are shaping the future of JavaScript 2.  I tried to get as much dirt as possible since I only ever hear mostly positive things which I know can&#8217;t be right.  As central a role as JavaScript plays on the web today, you KNOW there is some drama up in that mug.</p>
<p>Alex is bright.  Regardless of the historical reasons of how he got on the Board, if you ever have some spare positive karma, be sure to throw it his way.  Encourage him to keep fighting the good fight, to battle cynicism, and to never give in.  He&#8217;s clearly qualified.  He&#8217;s got some good ideas that apparently are shared by others.</p>
<p>Like all standards boards, I felt like some of the non-vendors give a flip for the implementers.  For example, Object.prototype was a great idea, but I&#8217;ve yet to see a tool that helps you identify who&#8217;s mixing what on your prototypes.  Who&#8217;s fault is that?  Those who built tools like Adobe Flash or those who built the language and didn&#8217;t give an easy way in the language for tool makers to latch onto?  It&#8217;s pure speculation; we didn&#8217;t get to finish our 3 concurrent conversations so maybe they do communicate each other&#8217;s concerns and I&#8217;m just not seeing it.  I&#8217;ve read like 1 blog entry on <a href="http://www.moock.org/blog/archives/000260.html" title="Colin Moock's blog" id="aab2">Colin Moock&#8217;s blog</a> with a summary of the action.  After talking to Alex, I&#8217;m glad that&#8217;s all I&#8217;ve read, and that people like Alex are in there.</p>
<p>Hang in there, buddy!</p>
<p><a title="conclusions" name="conclusions"></a><strong>Conclusions</strong></p>
<p>I had a good time at MIX and definitely plan on speaking next year.  Not sure on what yet, but it doesn&#8217;t matter.  I&#8217;m really appreciative of Microsoft for inviting me.  I loathe Vegas, yet really dug the event and how everything was put together.  I felt their execution was good, and the topics relevant.  There were also a lot of cool &amp; intelligent people there, which is the most important part of conferences for me.  Also, thanks to Cynergy Systems (I believe it was them) for the  <a href="http://www.taolasvegas.com/tao.html" title="Tao" id="p-1y">Tao</a> party.  Had a lot of fun there.</p>
<p>Blend and Visual Studio still look appealing and valid, but I&#8217;m not looking forward to my first Silverlight project mainly because I&#8217;ll probably spend yet another 3 days getting up and running again.  The install requirements as well as required times are just insane.  Flex Builder 3 takes 40 minutes to download on DSL, and 5 minutes to install and configure.  The Eclipse plug-in + various JRE&#8217;s can definitely take up a lot of your day, but not days plural.  In all fairness, it IS still a ton of beta bits working together.  Maybe it&#8217;ll be decent by launch.</p>
<p>&#8230;did I mention I&#8217;ll have to do <a href="http://www.apple.com/macosx/features/bootcamp.html" title="Bootcamp" id="k_gp">Bootcamp</a> or <a href="http://www.parallels.com/" title="Parallels" id="qkfy">Parallels</a> since Microsoft doesn&#8217;t appear to have any plans for supporting Silverlight development on my <a href="http://apple.com/" title="Mac" id="w7gi">Mac</a>, just debugging?  My PC at home will be fine since I&#8217;ve got tons of alpha and beta bits working (somewhat, *ahem*) on it.</p>
<p>I can see why .NET dudes are so excited about Silverlight.  The coding style and language look a lot like regular .NET development.  I don&#8217;t do .NET, nor do I do server-side development, but I&#8217;ve debugged .NET code other people wrote in the past and the learning curve will hopefully be just API and runtime features since it&#8217;s C#.</p>
<p>&#8230;and that&#8217;s the confusing part.  What is .NET 3.5 now&#8230; 48 megs or so?  Let&#8217;s just pretend it&#8217;s near there.  Silverlight 2.0 probably won&#8217;t cap 4 megs (unofficial cap based on rumor from one WPF project manager I talked to).   What of .NET is missing based on those 44 megs NOT being in the Silverlight plug-in?  What of XAML isn&#8217;t supported?  What of C#&#8217;s features aren&#8217;t supported?  VB, JPython, JRuby ? Those are questions I need to answer to see how well their execution of making it easy for existing .NET developers to transition.</p>
<p><a title="history_repeating" name="history_repeating"></a><strong>History Repeating</strong></p>
<p>The most important thing for me that I took away from MIX was that I&#8217;ve seen this before.  Flash Developers had an awesome multimedia platform to build upon for years.  Java guys came, and then left.  A few masochists stuck around really helping the community, and growth of the platform, out a lot.</p>
<p>Years later, Flex came out, and changed everything.  Java devs came in droves.  Then came PHP guys, Python, you name it.  Flex allowed traditional developers to succeed where they apparently could not before using Flash or various other open source alternatives like <a href="http://jessewarden.com/2005/04/i-tried-eclipse-asdt-mtasc-flashout-fame.html" title="FAME" id="zuxt">FAME</a>, <a href="http://www.flashdevelop.org/" title="Flash Develop" id="ub9g">Flash Develop</a>, or <a href="http://fdt.powerflasher.com/" title="Flash Develop Tool" id="fnr8">FDT</a>, etc.  After learning to code for years, I physically cannot go back to Flash to do large scale development.  Therefore, I totally understand why traditional developers couldn&#8217;t fathom how to do large scale scale projects in Flash.</p>
<p>I&#8217;m seeing the same signs in the .NET world.  It&#8217;s been 2 years+ on the new runtime in Flash Player 9.  Building applications in Flex, both Enterprise as well as widgets, are now proven to work well.  Aka, we have a great runtime and a great set of tools.  I worked with a .NET team 5 years ago to do the front-end in Flash &amp; HTML, and the back-end in .NET.  The work flow was good enough.  I know a lot of .NET guys who use Flex for the front end.</p>
<p>Yet the impression I got from the conference was that this side of .NET is unknown by a lot of people.  Either that, or just that client side development in something other than server-side generated HTML/JS/CSS was, and is, possible.</p>
<p>I&#8217;m seeing the same signs.  These traditional server-side .NET devs ask, &#8220;So, how do you handle session data?&#8221;  &#8230;and then the cliche response we&#8217;ve read soo many times in the Flash &amp; Flex world, &#8220;We&#8217;re a stateful client.  There are no pages.  This is an application.&#8221;  &#8220;How do you store local data?&#8221;  &#8220;So the middle tier no longer handles the rendering of the GUI?&#8221;  etc., etc., etc.  Some get frustrated.  Most get excited, see the light, and start asking both themselves and their cohorts a multitude of questions how much better things could be.</p>
<p>2 years later, Flex is the poster child for Java developers.  In 2010, will we be seeing signs of Silverlight being the standard for .NETerz?</p>
<p>Every word above this sentence is invalid until they get their plug-in installation correct.  A lot of the Silverlight installs that were 1.0, and people upgraded to 1.1, is where the trouble started.  Some of the plug-in detection code got confused, asking you to upgrade even though you were.  Some of those affected blogged conflicting reports, causing confusion of what the real problem was.</p>
<p>This is exactly the opposite of what you want to happen.  This is also one of the main reasons Macromedia <a href="http://adobe.com/products/director/" title="Director" id="f.-i">Director</a>&#8216;s &#8220;Shockwave&#8221; Internet plug-in failed.  I&#8217;d create something, upload it to my website, and my mom couldn&#8217;t view it because of plug-in installation issues.  That&#8217;s a serious problem.</p>
<p>Flash didn&#8217;t have this problem.  It just worked.  For years.  Silverlight the plug-in INCLUDING THE DEFAULT DETECTION CODE needs to just work.  For years.  If not, it&#8217;s doomed.  &#8220;Doomed&#8221; not meaning in never being a viable solution, but rather, Microsoft will have to spend major PR money to compensate for the negative perception that plug-in installations gone awry will cause.</p>
<p><a title="eatitsucka" name="eatitsucka"></a><strong>Force Fed Silverlight</strong></p>
<p>What does this mean for Flex &amp; Flash devs?  If you&#8217;re a Flex dev&#8230; not much.  We need to wait for someone to intelligently blog their experiences with not just the controls offered by Microsoft, but by the multitude of 3rd party developers.</p>
<p>If you&#8217;re a Flash dev in the agency world, you need to pay attention.  Yes, please temper this with the fact that, even though it&#8217;s a week+ past, I was still at a Microsoft conference bombarded by marketing hoopla.  Regardless, media work will come your way where a client will want Silverlight.  This can either be because of a partnership, because the company already has a plethora of Windows Media content that cannot be cost-effectively converted to Flash, or because like most clients, they don&#8217;t care about the technology choice and therefore the decision was already made long before the requirements hit your PM&#8217;s desk.</p>
<p>I would HIGHLY suggest you get training in Blend in a official capacity if you&#8217;re job can fund it.  If you&#8217;re bored, add Visual Studio to the mix as well.  This will save a lot of frustration and a lot of time.  Blend and Flash aren&#8217;t a lot a like when it comes to animation and work flow.  Blend is NOT alien, however.  You can learn it. I&#8217;ve seen a traditional designer use it (caveat, at Microsoft HQ) and was impressed at how fluidly he made things.</p>
<p>If you&#8217;re a Flash dev as a contractor, you can wait a few more months.  I&#8217;ve gotten 1 Silverlight job and one WPF designer job in 2008.  This compared to at least 1 Flex or Flash job a day, every day.  Once Silverlight 2 gets out of beta, it may behoove you to at least be capable of compiling a simple app&#8230; say, drawing a circle to the screen in XAML and then making it clickable .  Sounds simple enough, but you&#8217;d be surprised how much time that effort really can take.  And as you know, time is money in the 1099 world.  Hopefully it&#8217;ll take less time by launch to get up and running.</p>
<p>If you&#8217;re a Flash designer, you&#8217;ve actually got it pretty good.  Blend and Design are not just for Silverlight development, but also for WPF development, aka rich desktop application development.  This means that if you become familiar with the tools, you&#8217;ll suddenly have a lot of traditional .NET shops looking for &#8220;designers&#8221;.  Not all, but more than are now.  A lot of the .NET shops will be just as fine with 2 shades of gray as some of the small software shops using Flex.  All that has to happen is to have upper management see a demo, recognize that their team is already &#8220;capable&#8221; of using their existing skills, and demand Silverlight.  Someone who&#8217;s had experience, and has the budget, will request a proper designer / consultant be hired.  The work flow between Design and Blend wasn&#8217;t that great for me, though.  Probably because I&#8217;m a n00b. PNG FTW!</p>
<p>4 years ago, I choose to experiment in Flex, and eventually make it my full-time career.  This was a choice I made.  There were no job offers for Flex.  Enterprises were still experimenting in Flex projects.  Flashdevs loathed the Enterprise price tag and having the compiler be on the server.  I didn&#8217;t care&#8230; I loved it!  4 years later, Flex is still rocking strong, and has a bright future.</p>
<p>Silverlight?  The marketing machine at Microsoft is awesome.  You don&#8217;t have a choice to learn Silverlight or not.  You can choose not too, but companies WILL be utilizing the technology, some requesting it specifically.  For the later, you can either cater to that, and take their money.  &#8230;Or not, and find some effective way to sell them on Flex / Flash.  In a sense, we&#8217;re being force fed Silverlight.  Assuming things go well for Microsoft, I&#8217;m not &#8220;choosing&#8221; to be a Silverlight developer.  Rather, I&#8217;m merely reacting to market conditions.  Flex was easy&#8230; it was love at first sight.  Silverlight?  It looks fun if I actually had people to pay me do it, but Flex is more fun.</p>
<p>Either way, you can relax.  Flash Player is still king, and there is still a lot more money to made for a long time.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://jessewarden.com/2008/03/post-microsoft-mix-2008-thoughts.html/feed</wfw:commentRss>
			<slash:comments>16</slash:comments>
		
		
			</item>
		<item>
		<title>Silverlight First Impressions</title>
		<link>https://jessewarden.com/2007/09/silverlight-first-impressions.html</link>
					<comments>https://jessewarden.com/2007/09/silverlight-first-impressions.html#comments</comments>
		
		<dc:creator><![CDATA[JesterXL]]></dc:creator>
		<pubDate>Fri, 14 Sep 2007 03:50:49 +0000</pubDate>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flashcom]]></category>
		<category><![CDATA[FlashLite]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Silverlight]]></category>
		<guid isPermaLink="false">http://jessewarden.com/2007/09/silverlight-first-impressions.html</guid>

					<description><![CDATA[I&#8217;m a Flash &#38; Flex Developer, and these are my first impressions of Silverlight. Silverlight is a rich media web browser plug-in that was recently released by Microsoft. This is long. If you&#8217;re in a hurry: Why should I care? Flash is pimp! I&#8217;m a Flash/Flex Developer and don&#8217;t want to read the Silverlight SDK [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>I&#8217;m a Flash &amp; Flex Developer, and these are my first impressions of <a href="http://www.silverlight.net">Silverlight</a>.  Silverlight is a rich media web browser plug-in that was recently released by <a href="http://www.microsoft.com">Microsoft</a>.</p>
<p>This is <strong>long</strong>.  If you&#8217;re in a hurry:</p>
<ul>
<li><a href="#business">Why should I care?  Flash is pimp!</a></li>
<li><a href="#whatitis">I&#8217;m a Flash/Flex Developer and don&#8217;t want to read the Silverlight SDK</a></li>
<li>What is the difference between Silverlight 1.0 and Silverlight 1.1?  <a href="#1and11">Read these 2 paragraphs</a>.</li>
</ul>
<p>&#8230;otherwise, just read the whole thing over coffee, beer, or pick a section.</p>
<p><a title="contents" name="contents"></a><strong>Contents</strong></p>
<ul>
<li><a href="#introduction">Introduction</a></li>
<li><a href="#whatitis">What is Silverlight?  My Version</a></li>
<li><a href="#install">Install Experience</a></li>
<li><a href="#documentation">Documentation</a></li>
<li><a href="#business">Business Decisions</a></li>
<li><a href="#1vs11">Silverlight 1.0 vs. 1.1</a></li>
<li><a href="#whatsucks">What Sucks</a></li>
<li><a href="#conclusions">Conclusions</a></li>
</ul>
<p><a title="introduction" name="introduction"></a><strong>Introduction</strong></p>
<p>I felt the need to post for four reasons.</p>
<p>First, there are a lot of negative attitudes out there that I think potentially blind people from the cool technical features Silverlight has.  Second, all the developer oriented posts written by people in Flash / Flex sphere are not as technical as I would like and wreak of Microsoft PR machine bs, or uber-idealism with no technical supporting data; well not enough for my taste.  Engineers can be some mean, critical mofo&#8217;s and I&#8217;ve yet to see an article really rip into Silverlight from a technical perspective.  Third, there are also some inaccuracies in the blog-sphere on how powerful Silverlight 1.0 is and what you can actually do with it compared to Silverlight 1.1.  Fourth, my <strike>3</strike> <strike>4</strike> <strike>5</strike> 6 day old (What frikin&#8217; day is it!?) is finally asleep, but I can&#8217;t sleep.</p>
<p>Overall, I wanted to report my 3rd endeavor to learn Microsoft&#8217;s story on how they see this all working, and get a feel for the technology. To give some context, I am an <a href="http://www.adobe.com">Adobe</a> kid; I use their design &amp; development products in my career and for fun.  I develop using <a href="http://www.adobe.com/products/flash/">Flash</a> &amp; <a href="http://www.adobe.com/products/flex/">Flex</a> as a client architect at my full time job working at <a href="http://www.multicastmedia.com">Multicast Media</a>, a video streaming &amp; Internet TV company.  The views below, however, are my own and are not associated in any way with Multicast Media.  We use a lot of technologies where I work, both client side and server-side such as PHP , Java, Ruby, C++, .NET, Flash, Flex, AJAX, and tons of HTML &amp; JavaScript.  I use both Mac and PC, and have drifted away from using Microsoft <a href="http://office.microsoft.com/">Office</a> products on both machines now that I&#8217;ve become comfortable using <a href="http://docs.google.com">Google Docs</a>.  I love to code, and love working with designers.</p>
<p>I am not an expert on Microsoft technologies, and am still a Silverlight n00b.  I apologize for any inaccuracies below (feel free to correct me in the comments).  These are my impressions.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p><a title="whatitis" name="whatitis"></a><strong>What is Silverlight?  My Version</strong></p>
<p>Beyond being a browser plug-in to play rich media, Silverlight in my mind is definitely positioned as an application development platform for the web.  In reading the SDK on how Silverlight works from a technical perspective, if she performs well under stress (hundreds of classes, code running combined with animation running without hiccups, code actually working as the docs say it does on both platforms), then I fully believe Microsoft has something really special here.</p>
<p>Don&#8217;t take my word for it; the 2 blog entries I found that were (mostly) not Microsoft lackey posts are from <a href="http://richardleggett.co.uk/blog/index.php/2007/05/02/bbc_silverlight_mix_07">Richard Leggett</a>, a very talented Flash Designer &amp; Developer of both Flash and Flash Lite.  Good stuff in the comments too.  Another is from <a href="http://www.actionscript.com/Article/tabid/54/ArticleID/Is-Silverlight-the-Flash-Killer-/Default.aspx">Satori Canton</a> which he recently wrote to give a breakdown of what Silverlight really is and is comprised of.  A sorely lacking blog post in the community, especially in the Flash in Flex sphere.  Unfortunately, like them all, he&#8217;s too nice which makes me suspicious and angry because I want to know what sucks about it, where is it lacking, and what&#8217;s Microsoft&#8217;s story on improving those areas?  Either way, both are great reads.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p>Here&#8217;s what I know, and like.</p>
<p>Silverlight 1.0 is a web plug-in that works on both Windows and Mac, and it works in Internet Explorer, Firefox, and Safari.  <a href="http://www.google.com/analytics">Google Analytics</a> used on users of a variety of my company&#8217;s products makes me not care.  The data clearly is there to only need to support IE and Firefox; Safari&#8217;s a nice to have&#8230; for me alone, apparently.</p>
<p><a title="1and11" name="1and11"></a><br />
<strong>Update</strong>: I still haven&#8217;t got the DLR &amp; CLR parts totally correct yet; for better commentary, see the 3rd, 4th, and 5th <a href="#comments">comments</a> at the bottom of this entry.</p>
<p><a title="1and11" name="1and11"></a>Silverlight 1.0 uses the JavaScript engine of the browser it&#8217;s in.</p>
<p>Silverlight 1.1 <strike>has</strike> will have a DLR, a Dynamic Language Runtime, that will run atop the CLR.  This is similar to Flash Player&#8217;s ActionScript Virtual Machine, the AVM (AVM1, the one before <a href="http://www.mozilla.org/projects/tamarin/">Tamarin</a>).  As of today, you can write in JavaScript 1.0 style, from simple functions, to full blown classes via Object.prototype manipulation, similar to Flash Development circa Flash MX.  This has some people excited because apparently enough of the DLR will be open sourced to allow other language implementations to compile to the DLR runtime, such as Ruby and Python.  So, you can create animations and GUI&#8217;s in Silverlight and control them with code much like you did in the past in Flash using ActionScript 1.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p>The Silverlight DLR &amp; CLR is not out yet; it is slated for the summer of 2008.  This will be the release of Silverlight 1.1 which is currently in alpha.  The CLR in .NET as I understand it is much like any runtime in taking bytecode or some other low level language and parsing/interpreting those instructions.  Some are interpreted, some are compiled code.  The way you get to that code is by compiling in Visual Studio 2008 (in beta <strike>currently called Orcas</strike> ).  What is neat is that all the languages people currently use in .NET such as Visual Basic and C# can compile to compiled code, and thus the CLR.  My guess is the speed increases one gets using the CLR vs. the DLR will be inline with what one gets using ActionScript 3 vs. ActionScript 2/1 in Flash Player.  This is based on assumptions of seeing the online demo of TopBanana that Metaliq did, as well as my experience with reading about how you can only optimize dynamic, late bound languages so much compared to strongly-typed ones.</p>
<p>There are no native component sets for Silverlight 1.0.  Building things in Silverlight currently is perceived by me as building things in Flash 4/Flash Lite.  From scratch, each time, and small enough in scale because of your 1 week or less deadline.  Hence, no need for a component framework.  While I think this is just fine for a lot of design agencies looking to spruce up their usage of Windows Media as separate design elements on their branded portals, it&#8217;s frikin &#8216; worthless to developers who want to start building something today.  Building components frameworks are a lot of time &amp; work.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p>Silverlight has a display tree much like Flash Player 9&#8217;s DisplayList.  You can have display objects all attached to each other ( a Button control with a TextField attached to it).  This is great because you can create GUI elements without them having to exist on the display tree, and thus drawn taking up CPU &amp; RAM.  This helps both Silverlight&#8217;s creators because they make sophisticated, efficient frameworks around this model, and it&#8217;s great for developers because they can not worry about the designs scaling if they have a bunch of screens.</p>
<p>Silverlight is built upon XAML.  XAML looks and feels like XML, and is very low level.  It&#8217;s low level because this is the XML that is parsed into machine instructions for WPF.  XAML , however, is not software or hardware, it&#8217;s just an XML format, nothing more.  You can edit it Notepad or any text editor, and easily create it in <a href="http://www.microsoft.com/expression/products/overview.aspx?key=design">Design</a> and <a href="http://www.microsoft.com/expression/products/overview.aspx?key=blend">Blend</a>.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p>Comparing it to Flex&#8217; MXML is really hard to do.  MXML is very high level.  The point of MXML is provide an easy way to build GUI&#8217;s with all the good things XML has to offer.  It&#8217;s very high level, and abstracts a lot.  This is good because the less code you have to write to get something done, the better in my opinion.  Looking at the <a href="http://www.devx.com/RichInternetApps/Article/35208/1954?pf=true">Silverlight / AIR / JavaFX Stopwatch example</a> (<a href="http://blog.kevinhoyt.org/2007/09/10/the-missing-stopwatch-example/">HTML version here</a>), you can definitely do custom controls, but they don&#8217;t seem to be built into the language as well as MXML is.  The benefits of XAML , however, is you can pretty quickly (assuming you can find where the heck you&#8217;re going) change very low level properties on your XML document from the x position of an element to the 206th curve of a vector spline in a design.</p>
<p>It gets really interesting with animation.  Unlike Adobe Flash which has a timeline, XAML has timelines, aka, plural.  Each one is created for a property and/or object you can manipulate over time, and thus it&#8217;s a different type of timeline.  So while Blend and Flash both have a timeline panel, Blend&#8217;s XAML is writing a specific type of timeline in XAML based on what you are actually animating.  These can exist either as part of a set of objects, say a custom rectangle you built that immediately moves itself, or as a set of animations you can apply later.  Flex has something similar with transitions which can be abstracted away from the GUI they are animating, much like XAML.  So, to me, they got this part extremely right.  The GUI&#8217;s responsible for creating and editing those timelines, however, suck.  Blend&#8217;s animation timeline should just copy <a href="http://www.adobe.com/products/aftereffects">After Effects</a>&#8216; and get it over with.  I told Samuel Wan this over a year ago in Beta 1 of Blend, wtf. Either way, I still love time based, non-destructive timelines like After Effect&#8217;s has using key frames as more formal objects.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p>Most interesting of all is Sliverlight&#8217;s setup.  In Flash &amp; Flex, you make a SWF and shove it up to a web server with associated JavaScript to embed it in an HTML file.  The tools usually generate these for you.  In Silverlight, you don&#8217;t compile anything for using the DLR.  You just upload your Silverlight.js file, a CreateSilverlight.js file, your own JavaScript, your XAML files, and your own HTML.  All ASCII based.  While this is irrelevant at development time because you can have an all ASCII based setup using Flex and Flash for source control, you cannot easily screw with SWF applications at runtime.  Since SWF&#8217;s are binary files, you cannot simple open them in Notepad to see how they are made.  My favorite new feature in Flex 2 allows you to easily publish your source code for all to see.  In Silverlight using the DLR, this is native and allows tools like <a href="https://addons.mozilla.org/en-US/firefox/addon/748">Greasemonkey</a> to actually change the way Siverlight applications work at runtime, even ones that you didn&#8217;t create.  You cannot do that easily using SWF&#8217;s mainly because of the strict cross-domain sandbox policies, and it&#8217;s next to impossible in ActionScript 3 SWF&#8217;s since you can&#8217;t hack the prototypes of the loaded classes.</p>
<p>Silverlight has an event model as well for all it&#8217;s display objects.  Some of these events do event bubbling just like ActionScript 3 does.  The JavaScript implementation is ok for writing an event handler, a function that receives the event.  Your first parameter is the dude who sent the event, and the second is the arguments.  ActionScript 3 has formalized this into 1 parameter only as a class that extends flash.events.Event.  I agree with Silverlight 1.0&#8217;s implementation as it&#8217;s lighter weight, and you don&#8217;t need bloody classes when your trying to keep your applications&#8217; file-size low.  I despise the event registering, though.  In Flex, you can opt-in to pass parameters to the event handler, effectively doing your own delegate like so:</p>
<p align="right"><a href="#contents">TOP</a></p>
<p>This:</p>
<p>&lt;mx:Button click=&#8221;click(event, &#8216;moo goo&#8217;)&#8221; /&gt;</p>
<p>Becomes this:</p>
<pre><code>private function clickListener(event:Event):void

{

      click(event, 'some str');

}</code></pre>
<p>Which at runtime will then call the function I defined when I click the Button:</p>
<pre><code>public function click(event:Event, someStr:String):void

{

      throw new Error("someStr: " + someStr + ", event: " + event);

}</code></pre>
<p align="right"><a href="#contents">TOP</a></p>
<p>XAML is not compiled in the DLR, thus there is no code generation going on.  I fail to see how Microsoft could do code-gen in the DLR, but they have no excuse to not have this ability in the CLR.  Then again, there are 50 billion closet C# guys in the Flash world, so I&#8217;m sure they&#8217;ll be itchin&#8217; to tell me how C# already has a better way, blah blah blah.</p>
<p>Bottom line, all you can do in XAML itself is someEvent=&#8221;someFunction&#8221;.  Obviously you can do more in the code behind JavaScript.  So, compared to MXML, XAML isn&#8217;t very flexible in this respect.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p>The mouse and keyboard events are pretty standard.</p>
<p>Fonts are neat, although, cumbersome.  If you&#8217;re a Flex Developer, imagine not having a SWFLoader or Image component in the Flex SDK; that pretty much describes what the Downloader is used for in regards to font files.  You have to manually download the font, whether a file or in a zip, and once downloaded you can then apply the font to text objects.  It takes only 5 lines to download the font, and 1 to apply it, but still, this is all stuff developers are going to be writing; you might as well create a set of framework classes that simplifies these common needs for them.  Either way, light years better than Remote Shared Libraries and font wars that last long into the night when using Flash/Flex.  Assuming it works as advertised; haven&#8217;t used the feature.</p>
<p>It has full screen support, just like Flash Player 9.0.28.0.</p>
<p>It also has Ink support (aka stylus, pen input from tablet pc&#8217;s).</p>
<p>The last feature is that videos still support their embedded text tracks and time-codes.  This allows messages to be played through the video at certain times, and JavaScript can handle these messages.  It&#8217;s like cue points in Flash&#8217;s video players, or embedded NetStream events when you use <a href="http://www.adobe.com/products/flashmediaserver/">Flash Media Server</a>.  The reason this is important is that those script tracks never worked <strike>well</strike> on the Mac.  Thus, massive kludge code was written to poll the server if you were building synced slide web software for example.  Nasty stuff.  Now, Silverlight has this functionality working like it should on both platforms&#8230; so we&#8217;re told.</p>
<p>Linux has a version that seems to actually have Microsoft&#8217;s support called <a href="http://www.mono-project.com/Moonlight">Moonlight</a>.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p><a title="install" name="install"></a><strong>Install Experience</strong></p>
<p>When I tried the Beta 2 version of Silverlight on my Mac, I had pretty much the same experience as <a href="http://corfield.org/blog/index.cfm/do/blog.entry/entry/Silverlight">Sean Corfield</a>.  However, while I have seen 2 blog posts about Windows developers having issues installing the plug-in, I&#8217;ve been very impressed about the final release installation experience on both Mac and PC.  It just works.  That was one of the secrets to Flash Player&#8217;s early success, and was echoed by the swath of traditional developers who explained on their blogs why they chose Flex.</p>
<p>It needs to work for everyone, though, not just me.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p><a title="documentation" name="documentation"></a><strong>Documentation</strong></p>
<p>I installed the Silverlight 1.0 SDK, and read the entire .cfm file, stopping at the API.  I glanced over the API to ensure it matched up with what I read, and it did for the most part.  I found the documentation really good in explaining how Silverlight works.  The fact Silverlight has changed so much from it&#8217;s early Alphas, Betas, and then final release made it have a few minor addendum&#8217;s that clearly spelled out corrections to earlier documentation.  I did not read the earlier documentation (whatever was published at MIX 2007), so just took it at face value.  These were usually in regards to performance bottlenecks and how to avoid them.  While this is really cool to have that level of detail, and to ensure first apps built with Silverlight don&#8217;t get a bad rap for some developer who didn&#8217;t read the updated documentation, it wasn&#8217;t in depth enough.  I want <a href="http://www.onflex.org/ACDS/AS3TuningInsideAVM2JIT.pdf">technical details</a> like I can get from a variety of sources like Flash Player.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p><a title="business" name="business"></a><strong>Business Decisions</strong></p>
<p>The reason I even care about Silverlight is two fold.  First, I wanted to learn something new.</p>
<p>Second, Windows Media doesn&#8217;t suck.  Where I work, a huge portion of our customer base uses Windows Media streaming technologies, both live streaming and progressive using CDN&#8217;s.  Yes real streaming, not <a href="http://www.onflex.org/ted/2007/09/windows-live-streaming-not-really.php">fake streaming</a>, hehe, nice on Ted.  While the customer base is currently asking for Flash because it&#8217;s the latest greatest, there is no reason tomorrow they won&#8217;t start asking for Windows Media again, or even Quicktime when Apple fixes their severely broken Quicktime PR arm.  Since we are in the business of video streaming and software solutions around them, it is in our best interest to know the ins and outs of all architectures&#8230; yes folks, even Real for the mere point of ripping it apart intelligently. Silverlight is not a video architecture like Windows Media Player; it&#8217;s an interactive runtime that allows you to create rich experiences with your Windows Media content.  I&#8217;d argue Flash can do it better, not just from a technical angle, but from a community one.  Keyword contraction &#8220;I&#8217;d&#8221;; I&#8217;m still learning, so while I doubt I&#8217;m wrong on the community angle since I don&#8217;t really hear much about people like <a href="http://www.hillmancurtis.com/">Hillman Kurtis</a> winning design awards for using Design/Blend/Silverlight together, it doesn&#8217;t mean I won&#8217;t be in the future.  This is brand new software, barely out of the oven.  I&#8217;m still learning Silverlight too, and Blend specifically; it took me years to get good at Flash &amp; Flex, so I know it won&#8217;t happen overnight.</p>
<p>It also won&#8217;t happen without a project, either.  While I&#8217;ll definitely do the responsible developer thing, and learn on my own personal projects at night, I do so knowing it&#8217;s not a waste of time.  Clients will come a knockin&#8217;, I&#8217;m sure of it.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p><strong>Further Validations</strong></p>
<p>Silverlight has valid set of business needs.  Previously, there was no easy way to brand Windows Media content easily online like you could with Flash.  Now their is and to great effect.  Designers can treat Windows Media content just like they can with Flash; as part of the page, not a &#8220;thing unto itself&#8221;.  Granted, it&#8217;s still a plug-in, so things aren&#8217;t perfect, but plug-ins exist because browser evolution is too slow to do what businesses need to do today.  One of those needs is to have a 100% branded image on some projects where millions were spent to ensure that customers are not confused about the brand image they are seeing.  It&#8217;s really frustrating leading a design team to implement a new site, and customers mention in blogs &#8220;so and so brand used Microsoft video&#8221;.  Dammit!  No we didn&#8217;t, we used OUR video, for OUR brand! Silverlight remedies this.  My video, my controls, all you need to do is design a video player around your brand, and you can then use Silverlight to show Windows Media as you want it to look and feel.</p>
<p>If you didn&#8217;t know, there was <a href="http://blogs.zdnet.com/Stewart/?p=237">some hub-bub</a> about a lot of online viewers petitioning the BBC to convert a lot of their online content to Flash solutions to better support audience needs.  I use <a href="http://www.flip4mac.com/wmv.htm">Flip4Mac WMV Player</a> on my Mac, but it doesn&#8217;t work very well, so I definitely know what these audience members are talking about.  Compare to CNN.com, and it&#8217;s pretty blatant.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p>The BBC&#8217;s retort was quite cool, actually.  They said, no and explained why they couldn&#8217;t.  Mainly, it was too expensive to remove all the massive investments they had made in Windows Media to just switch it over to Flash.  They then put the ball in the communities court to help them figure out a way.  I never really heard the resolution to this story, but I&#8217;ve heard derivatives before.  For example, a company I work near has a box they send customers.  This is an encoder box, and it streams Windows Media streams live, and later uploads them to be viewed progressively later.  The amount of hardware &amp; software development and testing, both client and server that went into that setup is immense.  To just &#8220;start doing Flash&#8221; is unrealistic.  One needs to consider the costs and the technological validity.  These are 2 scenarios, one of which I can personally attest to, where Silverlight allows those who have invested serious capital into Windows Media to capitalize on it.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p><a title="1vs11" name="1vs11"></a><strong>Silverlight 1.0 vs. 1.1 (aka, DLR vs. CLR)</strong></p>
<p>While my exposure to the .NET blog-sphere is next to null, and those I&#8217;ve talked to in person and read about seem fine with either the DLR or the CLR.  As long as Visual Studio 2008 supports the developer with code hinting, and other commonly accepted code tools, then a few don&#8217;t really seem to care if they are using JavaScript or C#.  I don&#8217;t buy that in the long term, though.  I think the .NET guys are just being patient.  What I think will happen is the web geeks and the agencies will use the thenDLR, and all the .NET software shops will use managed code.</p>
<p>For the latter, I thought that the .NET guys would have the same problems that the traditional programmers who came to the Flex world would have with leveraging rich media.  I was partially wrong.  They all picked up Flex really quickly, were passionate, and are now producing a lot of great Flex work, both public, but mostly behind the firewall.  I still get some emails requesting design talent for Flex specific projects which make me really happy to know that these software shops, once they see what&#8217;s possible, appreciate what good design can bring to the table.  I&#8217;ve worked with some .NET&#8217;erz in my time at a large agency and at a mid-size software shop, and now at my new job.  They all have appreciated good design.  There is no reason these people, who have the tools, cannot do the same the non-.NET crowd did (Java/Ruby/ColdFusion, etc.) with Flash and Flex.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p>My concern stems from the fact that Design &amp; Blend are 1.0.  I&#8217;ve messed around only briefly with Design and it worked for me.  My litmus test is if you support PNG, you get a passing grade right off the bat.  However, supporting PNG and having industry standard design tools such as the Adobe &amp; <a href="http://www.autodesk.com">Autodesk</a> suites are decades apart, both in software evolution and community evolution.  Can a community really form around these design tools to push Silverlight in a direction it needs to go?  Where does it need to go?  Well, to me, it needs to go where Flash goes; pushing limits of designs, pushing web application envelopes.</p>
<p>I just feel like the .NET crowd is setup to fail with the design tools that Microsoft has provided.  It does mean the tools are bad, nor that the .NET crowd is incapable of laying the visual funk.  Rather, a DESIGNER has to learn those tools.  The tools are new; they&#8217;re not like <a href="http://www.adobe.com/products/photoshop">Photoshop</a> which have gigantor communities and followings; atmospheres, attitudes, histories.  That is a lot of ramp up time in an industry that already has Silverlight playing catch-up.  Maybe more money will make it evolve faster?</p>
<p align="right"><a href="#contents">TOP</a></p>
<p><a title="whatsucks" name="whatsucks"></a><strong>What Sucks</strong></p>
<p>If you view the tutorial videos on <a href="http://silveriight.net">Siverlight.net</a>, there is a WPF slant.  The marketing Microsoft originally had made it sound like Sparkle (first of 2 Silverlight alpha/beta names) was this ground roots effort done in tandem with the WPF.  However, after reading the docs, and using the tools, Silverlight seems extremely reactionary.  Meaning, I believe that when you show me a video about using Blend about  how I can create interfaces for <a href="http://www.microsoft.com/windows/products/windowsvista/default.mspx">Windows Vista</a> programs, yet you place this video in the Silverlight tutorial section, this is misleading and contributes to the &#8220;reactionary&#8221; perception.  Either you&#8217;re trying to leverage my Silverlight experience to create Windows Vista Destkop Applications for the same bizarre reason Adobe thinks we need to port <a href="http://www.simplifiedchaos.com/2007/08/29/too-many-adobe-air-applications-that-shouldnt-be/">well and good web apps</a> to the desktop, or you&#8217;re low on content that shows how Blend can be used as an interface tool for creating web applications in Silverlight&#8230; because Blend is not a tool for creating web interfaces in Silverlight. Or both.</p>
<p>Heck, maybe it is.  Maybe both Design &amp; Blend are truly meant for building both desktop applications and web applications.  You can do the same thing with Flex and Flash, so I can see the idea flying.  Regardless, when Microsoft mention things in the SDK like &#8220;supporting most of XAML in Silverlight&#8221;, it only hammers home more of the idea that Silverlight was built atop WPF later rather than a tandem effort like the WPF/E original beta name tries to lead you in.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p>The lack of coding tools that work out of the gate, easily, is pretty bad.  I never got Visual Studio 2008 <strike>(Orcas</strike> Beta 2) to actually work after downloading the 4 gigs twice in 1 weekend with the Silverlight JavaScript.  I mean, if <a href="http://www.aptana.com">Aptana</a> can do it in <a href="http://www.eclipse.org">Eclipse</a>, why can&#8217;t this greatest IDE on the planet I keep hearing about do it?  I know it&#8217;s beta, so it&#8217;s all good, just curious.  Just because I use a late bound language doesn&#8217;t mean I don&#8217;t like code hints.  Besides, these things help me learn!</p>
<p>Blend&#8217;s timeline is bleh.  It doesn&#8217;t mean it isn&#8217;t intrinsically good or powerful, but rather, my expectations from other tools such as After Effects, Flash, and Live Motion carry over to Blend.  Maybe once I learn it, it&#8217;ll rock the mic.  Once I found the bloody thing in Blend, I figured it out pretty quickly.  The concept of an embedded animation vs. a resource was really hard to wrap my head around in the actual XAML syntax.  The actual concept, though, makes perfect sense.  MovieClip animation vs. a Flex transition tag; one is part of the object, the other can be borrowed.  Got it.  Uh&#8230; so&#8230; like, I don&#8217;t know, it seems to me that this should kind of be an important part of building RIA interfaces.  Why not make this more a prominent part of the workflow?  I don&#8217;t really know Silverlight workflow yet, so who knows.  Flex Builder currently doesn&#8217;t have a very good one for transitions; states are good, but not animations.  It seems both tools could improve on this front.  Then again, Flex developers do just fine without them, so, maybe Microsoft thought it was acceptable since Adobe didn&#8217;t put it inFlex Builder .  Glorious assumption, I know.  Bottom line, I&#8217;d prefer Blend have their keyframe editing in place like After Effects does rather than having to use the global property inspector for everything.  Relevant property inspectors on the timeline, not in a far away panel.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p>I know Blend isn&#8217;t really Silverlight, merely a tool in which you can create GUI&#8217;s for Silverlight.  However, the end result is greatly affected by the tools used to create it.  As such, improvements in Blend will have a direct impact in improvements in Silverlight content.  For example, an under-utilized, yet powerful feature in Flex is transitions.  If Flex Builder is improved in future versions, Flex content will be a lot better.  The functionality is already there, it&#8217;s just tedious to create, not easy to undo, and thus hard to get &#8220;just right&#8221;.  Same holds true for animating in Silverlight .  Maybe if I did a full blown project, I&#8217;d change my mind.  I just had high expectations from Beta 1 to Beta 2, and it doesn&#8217;t seem like much changed on that front.</p>
<p>There are no component frameworks that come with Silverlight.  I&#8217;m sure some third party is nearly done based on the blogs I&#8217;ve read.  For now, that doesn&#8217;t make Silverlight 1.0 valuable for large scale applications.  Video players, however, that make Windows Media look good don&#8217;t need to be enterprise scale, so maybe that&#8217;s why.  My guess is those types of things will be more polished in 1.1.</p>
<p align="right"><a href="#contents">TOP</a></p>
<p><a title="conclusions" name="conclusions"></a><strong>Conclusions</strong></p>
<p>At the end of it all, Silverlight deserves more research.  The biggest challenge for me is how to build a component framework around the createFromXaml method.  In ActionScript 3, you can do:</p>
<pre><code>var t = new TextField();</code>addChild(t);</pre>
<p>In Silverlight 1.0 JavaScript, it&#8217;s:</p>
<pre><code>var xaml = "&lt;textbock text='test'&gt;";</code>text = plugin.content.createFromXaml(xaml);

object.children.add(text);</pre>
<p>Assuming you can create custom components this way, then I guess we&#8217;re off.  If you read the SDK, the properties and methods are pretty easy to follow.  I think Microsoft really has something here.  Whether they do or not doesn&#8217;t really matter, though; there are tons of people who aren&#8217;t leaving Windows Media without spending mad bling, and Silverlight&#8217;s induction will help ease those frustrations.  I think you&#8217;ll continue to see some losses in the Windows Media market as Flash continues it&#8217;s rise, but once Silverlight 1.1 gets out of beta, and more managed code applications come out of the woodwork, I&#8217;m sure the tide will change; or maybe not.  I don&#8217;t care, I&#8217;m just glad Flash finally has some competition on the horizon.</p>
<p>In the interim, I know I&#8217;ll have Silverlight project soon, namely a customizable video player.  There are tons of Flash jobs right now around building custom video players, and soon there will be more for Silverlight ones.  A lot of video customers ask for Flash video by name.  I have a feeling once the Microsoft marketing engine kicks into high gear, they&#8217;ll start to ask for Windows Media again, or even just &#8220;Silverlight&#8221;, not really knowing what it is, but they&#8217;ll have money proving they want it.  Besides, there are a lot of people out there already who are deeply into Windows Media; it&#8217;s not going away, and Silverlight gives them all the opportunity to have better offerings.  In short, that&#8217;s cool!</p>
<p align="right"><a href="#contents">TOP</a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://jessewarden.com/2007/09/silverlight-first-impressions.html/feed</wfw:commentRss>
			<slash:comments>12</slash:comments>
		
		
			</item>
		<item>
		<title>Flash Player 8 Effects in Flash Lite 3?</title>
		<link>https://jessewarden.com/2007/03/flash-player-8-effects-in-flash-lite-3.html</link>
					<comments>https://jessewarden.com/2007/03/flash-player-8-effects-in-flash-lite-3.html#comments</comments>
		
		<dc:creator><![CDATA[JesterXL]]></dc:creator>
		<pubDate>Sat, 31 Mar 2007 23:19:55 +0000</pubDate>
				<category><![CDATA[FlashLite]]></category>
		<guid isPermaLink="false">http://jessewarden.com/?p=1145</guid>

					<description><![CDATA[Alessandro posted a Flash Lite 3 video example shown at a financial meeting. Sharp-eyed Zeh wondered if he saw a motion blur. A lot of video codecs will compensate for fast-motion by blurring so you don&#8217;t get the hardcore pixelation from a non-keyframe, and all in all smaller file size. However, the phone ISN&#8217;T moving [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><a href="http://www.biskero.org/?p=1299">Alessandro</a> posted a <a href="http://www.adobe.com/products/flashlite/">Flash Lite</a> 3 video example shown at a financial meeting.  Sharp-eyed <a href="http://www.zeh.com.br/">Zeh</a> wondered if he saw a motion blur.  A lot of video codecs will compensate for fast-motion by blurring so you don&#8217;t get the hardcore pixelation from a non-keyframe, and all in all smaller file size.  However, the phone ISN&#8217;T moving and since that appears to be some form of component with dynamic content in it, that means they couldn&#8217;t have done it by hand (say, using <a href="http://www.adobe.com/products/photoshop/">Photoshop</a> or <a href="http://www.adobe.com/products/aftereffects/">After Effects</a>).  I say it&#8217;s a motion blur.  Good eye Zeh!</p>
<p>If what we are observing is accurate, that means Flash Lite 3 will have the <a href="http://www.adobe.com/devnet/flash/graphic_effects.html">Flash Player 8 effects</a>.  Furthermore, that also means it&#8217;ll most likely have the <a href="http://www.kaourantin.net/2005/09/garbage-collection-in-flash-player-8.html">new Garbage Collector</a> that they put in Flash Player 8 with mark &#038; sweep in addition to reference counting.  That&#8217;ll help kill the unintentional <a href="http://blog.madarco.net/21/reference-explorer/">circular references</a>, and give us more reliable memory usage on an already constrained set of devices.</p>
<p>That still leaves the new AVM and ActionScript 3.  I made an effort, although not a huge one, to mention Flash Lite 3 around any <a href="http://www.adobe.com">Adobe</a> employee at <a href="http://www.webdu.com.au">WebDU 2007</a> who had any association with alcohol.  The general plan of attack is you start a conversation with them, start bitching about some of the design challenges you have with the current technology (in a positive way, not annoying) so they feel the need to satiate your concerns with hints at future technology solutions&#8230; say, new features in Flash Lite 3.  Once you get that, you then go find another Adobe employee near alcohol, and do the same thing.  The goal is corroboration.  If you can get 2 unrelated employees hinting at a new feature, you can pretty much be sure&#8230; as sure as one can be anyway if you don&#8217;t work for Adobe and aren&#8217;t on any beta&#8217;s.</p>
<p>Nothing.  I got nothing.  In fact, I think they were making with the local &#8220;take the piss out of Jesse&#8221; culture and screwing with me.  Either that, or it was my approach.  ::shrugs::</p>
<p>If one were to levitate up to 30,000 ft, it seems to me all the engineering efforts around AS3 and the new AVM with focus on developers are going towards <a href="http://www.adobe.com/products/flex/">Flex</a> 3 &#038; <a href="http://labs.adobe.com/technologies/apollo/">Apollo</a>.  On the designer front, they are all going towards Photoshop, <a href="http://www.adobe.com/products/flash/">Flash</a>, and Flash Lite since more designers are employed in the Flash &#038; Flash Lite arena.  Lame, I want both.  Anyway, at least <a href="http://www.colettas.org/?p=80">Moxie</a> will hopefully address some of the <a href="http://www.jessewarden.com/archives/2006/12/getting_a_photo.html">designer</a> / <a href="http://www.jessewarden.com/archives/2006/12/integrating_a_f.html">developer</a> work flows as well as making Flex&#8217; Design View a little more extensible.  Wish I could say some more concrete things about Flash Lite 3.  Video&#8217;s neat, but I STILL need to code those solutions.  I&#8217;m sure the cliche response by now from experienced Flash Lite dev&#8217;s is, &#8220;No you don&#8217;t&#8230;&#8221;.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://jessewarden.com/2007/03/flash-player-8-effects-in-flash-lite-3.html/feed</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>WebDU 2007 Preso: Shuriken Component Framework for Flash Lite 2.x</title>
		<link>https://jessewarden.com/2007/03/webdu-2007-preso-shuriken-component-framework-for-flash-lite-2x.html</link>
					<comments>https://jessewarden.com/2007/03/webdu-2007-preso-shuriken-component-framework-for-flash-lite-2x.html#comments</comments>
		
		<dc:creator><![CDATA[JesterXL]]></dc:creator>
		<pubDate>Wed, 28 Mar 2007 22:50:19 +0000</pubDate>
				<category><![CDATA[FlashLite]]></category>
		<guid isPermaLink="false">http://jessewarden.com/?p=1143</guid>

					<description><![CDATA[Shuriken is an open-source component framework for Flash Lite 2.x I started on back in September of 2006. I&#8217;ve uploaded some examples that showcase the different components that you can use from Shuriken as well as 2 example Flash Lite 2.1 applications. You can read the why&#8217;s and how&#8217;s at the project page. You are [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><a href="http://code.google.com/p/shurikencomponents/">Shuriken</a> is an open-source component framework for <a href="http://www.adobe.com/products/flashlite/">Flash Lite</a> 2.x I started on back in September of 2006.  I&#8217;ve uploaded some examples that showcase the different components that you can use from Shuriken as well as 2 example Flash Lite 2.1 applications.  You can read the why&#8217;s and how&#8217;s at the project page.  You are welcome to contribute to the project as well via writing code, writing docs, and/or whatever.  Any feature / component requests, we&#8217;re all ears.</p>
<p>Finally, big thanks to <a href="http://www.gregburch.com/">Greg Burch</a> from Adobe&#8217;s Mobile Dev team.  He was a really big help in many areas including performance, API feasibility, and code reviewing.</p>
<p><img fetchpriority="high" decoding="async" alt="oz_2k7.jpg" src="http://www.jessewarden.com/archives/oz_2k7.jpg" width="500" height="374" /></p>
<p>I travelled to Sydney, Australia for <a href="http://www.webdu.com.au/">WebDU</a> 2007 to speak about Shuriken.  Always a great conference; low key, personal, and savvy sophisticated attendees.  Good speaker to attendee ratio as well.  Thanks a lot to the <a href="http://www.daemon.com.au/">Daemon team</a>.  5 years on and it&#8217;s still the best Flash / Flex related conference I&#8217;ve been too.  Maybe next conference I&#8217;ll pick a less obscure topic so <a href="http://www.webdu.com.au/go/session/usability-for-designers-and-developers">my wife</a> doesn&#8217;t get the bigger room for her presentation&#8230; *ahem*.</p>
<p><a href="http://code.google.com/p/shurikencomponents/">Shuriken Project Page</a></p>
<p><a href="http://www.jessewarden.com/archives/shuriken_webdu2007.swf">WebDU 2007 Preso</a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://jessewarden.com/2007/03/webdu-2007-preso-shuriken-component-framework-for-flash-lite-2x.html/feed</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>Part-time Recruiter, Breakneck Flex, &#038; WebDU 2007</title>
		<link>https://jessewarden.com/2007/03/part-time-recruiter-breakneck-flex-webdu-2007.html</link>
					<comments>https://jessewarden.com/2007/03/part-time-recruiter-breakneck-flex-webdu-2007.html#comments</comments>
		
		<dc:creator><![CDATA[JesterXL]]></dc:creator>
		<pubDate>Fri, 16 Mar 2007 08:25:46 +0000</pubDate>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[FlashLite]]></category>
		<category><![CDATA[Flex]]></category>
		<guid isPermaLink="false">http://jessewarden.com/?p=1141</guid>

					<description><![CDATA[I get a lot of emails regarding Flex &#038; Flash opportunities, most on-site with no telecommuting options. These usually come in on average 1 every day. Some days I&#8217;ll get 4, 2 for the same job, and some days none. As I started exploring employment opportunities back in November, it didn&#8217;t really take long for [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>I get a lot of emails regarding <a href="http://www.adobe.com/products/flex/">Flex</a> &#038; <a href="http://www.adobe.com/products/flash/">Flash</a> opportunities, most on-site with no telecommuting options.  These usually come in on average 1 every day.  Some days I&#8217;ll get 4, 2 for the same job, and some days none.  As I started exploring employment opportunities back in November, it didn&#8217;t really take long for the recruiter emails to start rolling in.  Combine that with my own 2 email blasts to everyone I know work wise, everyone connected to <a href="http://www.linkedin.com/in/jessewarden">me on LinkedIn</a>, updating my resume on job sites, and my own volleys of cold-emailing jobs at <a href="http://tech.groups.yahoo.com/group/flexjobs/">FlexJobs</a> and other various avenues&#8230; and well, it&#8217;s more insane than 2003 was.  The projects are longer term, and they want more experience.</p>
<p>Same problem, though.  Not enough qualified individuals.  The difference between now and 2003 is that I keep telling those employers and recruiters who I end up hunting for that time is on their side.  I mistakenly predicted that Flash devs would flood the marker and 2005 would be the year it all ended.  Not so; even today there is still a lot of Flash work.  Flex, on the other hand, is different.  I see programmers from all walks of life diving in with the only learning curves being associated to learning a new language, not a new tool.  Big difference which effectively means lower learning curve.  I&#8217;m also hearing more of the, &#8220;&#8230;we/they got so frustrated by the lack of qualified talent, they just sent their in-house .NET / Java team to training for a week, and apparently are doing fine.&#8221;</p>
<p>Good for them.  Good for Flex.</p>
<p>The downside is, there are too many emails to respond to.  Too many software specifications to read, digest, and make bids on.  Too many opportunities to quickly and easily recognize what is worthwhile, and what isn&#8217;t.  The good thing is, this really makes you focus clearly on what you want, and shoot for that.  I&#8217;ve just never been good at saying no, so it&#8217;s rough.  Some are time-sensitive too, so it&#8217;s challenging to keep on top of those.  My compensating factor is becoming a part-time, not paid, recruiter.</p>
<p>For example, for those jobs that are on-site in some state, city, and county not within 30 feet of my house, I&#8217;ll usually try to suggest qualified candidates that have the skill set they are looking for, in the same locality, and follow up with an email that contains the contact information of those individuals.  From meeting many people offline and off, I have a decent network across the planet; enough to have a 50/50 chance of even helping international positions.   This goes hand in hand with contract work that I usually don&#8217;t have the bandwidth for.  I&#8217;ll shoot to my list, and order said list by client complimented contractors, those who requested work recently, and those who fit the skill set the client is looking for.</p>
<p>To add to that, I&#8217;ve had this weird desire to look at other people&#8217;s resumes and tear them apart.  Her majesty has ripped into mine for the past 6 years, so combined with the plethora of stuff I learned from and in college, on interviews, and from online research, it&#8217;s really nice to give advice (heeded or not) to peers so their resumes&#8217; stand out and effectively sell them to prospective employers.</p>
<p>Now, seems to me those above 2 paragraphs are the jobs of recruiters or job placement agencies; not some programmer. But&#8230; I like it in a hobby type of way.  Both recruiters and potential employers have been really appreciative of me sending them employee leads, so even if a job interview / contract doesn&#8217;t work out, we part on good grounds and open up the door for reference checks (&#8220;Yeah, I know the guy, he&#8217;s legit.&#8221;).  Holy fish, though&#8230; man, it&#8217;s a lot of time and effort!  I can see why people get paid full-time to do this stuff.  I&#8217;ve still got 5 resumes of friends to go on top of the starred 52 (<a href="http://www.jessewarden.com/archives/2007/03/star_fridays_36.html">last Friday&#8217;s 48</a> didn&#8217;t go so well&#8230;).</p>
<p>Bottom line, if you know Flex, or are learning it, and you don&#8217;t have a gig / job (or are not in process of interviews)&#8230; wtf?  If you are under-appreciated, there are plenty of people out there who will love you!</p>
<p>In Flex news, I&#8217;m on an extremely fast and hard deadline project.  I like the git-r-done ones vs. the drawn out, too-afraid-to-test-early-builds-on-users ones.  It reminds me of Flash projects&#8230; only with cooler components.  I&#8217;ve been pulling 16 hour days for like 2+ weeks&#8230; I think, maybe 11, I don&#8217;t know, it&#8217;s all a blur.  I&#8217;m having a blast.  Those types of projects you just really don&#8217;t care; if it&#8217;s fun, it&#8217;s not work, and if it&#8217;s not work, you code till you drop with no anger.  Those types of projects you find sneaky ways to pump more features into the final product (ensuring it works of course) instead of whining like a little ho in meetings when management wants some modifications and additions.  Totally different world.  I wish every project could be like this.  &#8220;There&#8217;s the hill, soldier.  You need to take it by nightfall.  Failure is not an option, and you only have 1 machine gunner with you.  Good luck!&#8221;  Hell to the yeah.</p>
<p>Technically, I&#8217;ve learned too much about mx.containers.Container.  It&#8217;s really rad, though, because now I can make my own panels with impunity.  This is important because I can allow other developers to use them as containers in MXML, and that is just so frikin &#8216; cool.  Additionally, if I ever work with a designer again (I will dang it), they won&#8217;t be constrained by the Flex Panel.  &#8220;You design it, I&#8217;ll code it.&#8221;  &#8230;Except masking blurs&#8230;wtf .  Works in Flash, not so great in Flex.  The lack of easy use of pixel fonts is kind of shame too.  I saw <a href="http://www.gskinner.com/blog/archives/2007/03/bitmap_fonts_in.html">Grant blogged</a> a solution today, but I haven&#8217;t had to time to try it myself.  Some of our charts that shrink really small have un-readable text.  If I could shove some of my pixel fonts in there, they&#8217;d look really good.  The more design stuff I am responsible for, the more I hate layout constraints and box models.  I&#8217;m starting to just feel like if I want everything laid out the way I want it with an easy ability to animate it, it&#8217;s gotta be in a Canvas with x and y positions.  Everything else is just a nightmare.  It&#8217;s worth it, though, because she (they, as in apps) look hot.</p>
<p>I also like impossible odds.  In this current project (due tomorrow), I have 2 3rd party vendor components, 1 back-end, 1 front end, that are both brand spanking new.  Alpha code is t3h fun!  Both of those vendors already have a ton on their plate, so they can&#8217;t just lolly gag on the phone/IM with me all day if I have questions and don&#8217;t feel like reading the docs.  I have a list of bugs, features, and clean up tasks a mile long.  Naturally my defiant response is, &#8220;You got nuthin&#8217;!&#8221;  Grit my teeth, have faith my wing man&#8217;s got my back, and pump updates to HQ on status.  Oh crap&#8230; 53 emails to respond to.  I&#8217;m sure if I prioritized things around my deadline, getting my taxes done, and responding to job / contract related emails, it&#8217;d just be a clean looking list that was uber long.  Just code and don&#8217;t look back!</p>
<p>Speaking of code, <a href="http://www.webdu.com.au/go/speaker-profile/jesse-warden-atlanta-usa">I&#8217;ll be speaking</a> about code in Australia next week at the <a href="http://www.webdu.com.au/">WebDU 2007 conference</a>.  Her majesty will be <a href="http://www.webdu.com.au/go/speaker-profile/brandy-fortune-georgia-usa">speaking too about Usability</a>.  I&#8217;ll be flying from Atlanta, Georgia to that stupidly designed airport, LAX (Los Angeles) on a 5 1/2 hour, and then hitting the 14 hour to Sydney.  I have mad books that friends have recommended to me as well as some I own.  To top that off, I have to document my <a href="http://www.adobe.com/products/flashlite/">Flash Lite</a> 2 component set called &#8220;Shuriken&#8221; which is what I&#8217;m speaking on.  In my experience, good docs make a great product.  Frankly I don&#8217;t see a future of Flash Lite for me for another 2 years, but you never know.  I&#8217;m a programmer, not a futurist.  I&#8217;ll have to pack on Saturday I reckon since no time tomorrow.</p>
<p>Speaking of tomorrow, I hope they announce the winners of the Flash Lite contest.  I keep telling myself that I&#8217;m not excited, and don&#8217;t really care about the results, but I think that&#8217;s just my way of emotionally compensating for if I lose.  I hate losing, and live to win, thus I secretly want to own.  We&#8217;ll see.  Even if my <a href="http://www.php.net">PHP</a> tanked on me, and my app didn&#8217;t make the grade, at least I got some phat components out of it.</p>
<p>Got a new phone, too, a Razor something or other.  Her majesty is Nokia prejudiced; she digs Motorola.  Since it&#8217;s Cingular specific, it&#8217;s locked (as opposed to my Asian Nokia 6680), and even has 2 buttons just for them ON the phone.  I love how these operators in the US work, man.  I remember bitching to <a href="http://www.michaelhagel.com/">Michael Hagel</a> about how pathetic it is trying to make money on mobile stuff using my existing skill sets.  He retorted about how they (operators) refuse to do what some of the telecoms did, and basically build a bunch of communication infrastructure (aka the Internet) and not make any money off of it. The operators like Cingular and Verizon on the other hand charge you out the yang for everything, and give you hardware they control.  I may not like it, but I respect their ability to monetize every stupid little, irrelevant thing.  That&#8217;s just rad that it costs $70 a month for unlimited, modem speed internet access on my phone (it&#8217;s not $20 <a href="http://www.asfusion.com">Nahuel</a>, I looked, you Californians must have better deals or you just got extremely f&#8217;ing lucky) when I get unlimited broadband from BellSouth (now AT&#038;T) for $30.  Then again, AT&#038;T merged back together for a reason.  $1.60 to make roaming calls in Oz.  I could call <a href="http://www.rocketboots.com.au/">Robin Hilliard</a>, and ask him random business questions&#8230; or a party line for $2 a minute.  Robin bequeathing knowledge&#8230; Candy relaying praise&#8230; hrmm &#8230; anyway, they sure shove these phones full of useless stuff.  It&#8217;s like when you buy a computer from Best Buy, or some other media outlet that sells eMachines .  It comes with a bunch of pre-installed software you don&#8217;t want, don&#8217;t need, and slows down your comp.  Instead, you get a raw box, and go from there.  Apparently the same is becoming true with phones.  However, to her credit, the phone DOES look stylish, has a nice looking screen with a fast interface, AND isn&#8217;t Nokia software.  My last Nokia backup utility actually deleted my entire phone book.  Here&#8217;s to hoping Motorola perceives that as &#8220;unfashionable&#8221;.</p>
<p>Anyone want a job of answering my emails?  You basically go:</p>
<p><b>recruiter</b>: &#8220;Contact this guy; he&#8217;s a good Flex candidate for on-site work.&#8221;</p>
<p><b>client</b>: &#8220;This project will cost $X, and take X amount of time.&#8221;</p>
<p><b>homeskillet</b>: &#8220;Search for &#8216;states&#8217; in the Flex docs and join <a href="http://tech.groups.yahoo.com/group/flexcoders/">Flexcoders</a>.&#8221;</p>
<p><b>big company</b>: &#8220;Contact <a href="http://www.universalmind.com">Universal Mind</a>.&#8221;</p>
<p><b>employer</b>: &#8220;Here&#8217;s my resume and links of my work.  SWF 4 t3h w1n!&#8221;</p>
<p>See?  It&#8217;s easy!</p>
<p>:: reloads :: It&#8217;ll be light soon, and I got a hill p@wn.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://jessewarden.com/2007/03/part-time-recruiter-breakneck-flex-webdu-2007.html/feed</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
	</channel>
</rss>
