<?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>Thermo &#8211; Software, Fitness, and Gaming &#8211; Jesse Warden</title>
	<atom:link href="https://jessewarden.com/category/thermo/feed" rel="self" type="application/rss+xml" />
	<link>https://jessewarden.com</link>
	<description>Software &#124; Fitness &#124; Gaming</description>
	<lastBuildDate>Wed, 06 Sep 2023 12:32:50 +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>Thermo &#8211; Software, Fitness, and Gaming &#8211; Jesse Warden</title>
	<link>https://jessewarden.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Working With Dean: Flex Designer Developer Workflow</title>
		<link>https://jessewarden.com/2009/02/working-with-dean-flex-designer-developer-workflow.html</link>
					<comments>https://jessewarden.com/2009/02/working-with-dean-flex-designer-developer-workflow.html#comments</comments>
		
		<dc:creator><![CDATA[JesterXL]]></dc:creator>
		<pubDate>Mon, 09 Feb 2009 16:01:36 +0000</pubDate>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Business Process]]></category>
		<category><![CDATA[Fireworks]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Thermo]]></category>
		<guid isPermaLink="false">http://jessewarden.com/?p=1401</guid>

					<description><![CDATA[Introduction I learn something new every project, and this one was no different. Â The one I want to talk about today is that designers can do a lot more in the designer developer workflow than I&#8217;ve previously experienced them doing. I work with a Visual Designer named Dean. Â His job is understand the needs of [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><strong>Introduction</strong></p>
<p>I learn something new every project, and this one was no different. Â The one I want to talk about today is that designers can do a lot more in the designer developer workflow than I&#8217;ve previously experienced them doing.</p>
<p><span id="more-1401"></span>I work with a <a href="http://blog.enablus.com/2009/01/what-are-roles-on-flexflash-ria-dev.html">Visual Designer</a> named Dean. Â His job is understand the needs of the client, translate those to the application, and create visual designs for it. Â He then needs to repeate this process via iterations. Â He discusses with the client how the application should work, how the GUI works to accomplish user stories, and why it works that way. Â This is a 2 way street as the client&#8217;s input is taken into account as well. Â He also adjusts the GUI for my needs. Â As the the engineer responsible for creating our application, I&#8217;ll run into challenges that I couldn&#8217;t have foreseen. Â I&#8217;ll then give Dean a call, explain my challenges, and discuss ways to solve it. Â Sometimes these areÂ compromises, sometimes these are just me getting clarifications on how things are supposed to work.</p>
<p><strong>Context: Flash Designer Developer Workflow</strong></p>
<p>From my experience in agencies, that&#8217;s how designers are supposed to work. Â Icing is if theirÂ designsÂ are kick ass, because then you get more excited to make it work. Â The caveat back then were their FLA&#8217;s. Â I&#8217;ve never, ever, had success with designers and FLA&#8217;s. Â A FLA is the binary file used for the <a href="http://adobe.com/products/flash/">Flash</a> IDE. Â It contains all of your graphics, sounds, fonts, animations, and sometimes video and ActionScript.</p>
<p>For agency work, a lot of times your design assets would arrive in a FLA. Â The designer would sometimes create a shell of the entire site. Â The FLA could of been used as a prototype in meetings to help discuss with the client, and/or perhaps the designer was creating the real design in Flash to ensure it&#8217;s what they wanted. Â Bottom line, whatever I ended up getting FLA wise from a designer, I never used their FLA.</p>
<p>Instead, I&#8217;d create a FLA of my own, and port over the design elements I needed from the designer&#8217;s FLA. Â Developers and Designers use FLA&#8217;s in different ways. Â Additionally, Designers and Developers amongst their own kind use FLA&#8217;s in many different ways. Â The main reason Flash Developer Certification never lasted long at Macromedia/Adobe was because there were so many ways to develop Flash content. Â This is also why I never let designers touch my FLA; they&#8217;d end up breaking something, and both of us would have a hard time figuring out why.</p>
<p>The net result was a process of:</p>
<ol>
<li>Designer gives me FLA</li>
<li>I create my FLA, and incorporate graphics from Designer&#8217;s FLA as needed</li>
<li>If design changes, Designer sends a new FLA</li>
<li>I update my FLA with new graphics/animations from Designer&#8217;s FLA</li>
<li>repeat</li>
</ol>
<p>Copying and pasting Symbols from FLA to FLA, or moving them from Library to Library, has worked pretty well since Flash 4. Â With the advent of source control into many developer workflows, this only solidified this workflow for me since you cannot tell what changed in a binary FLA from revision to revision. Â Instead, a developer would leave a comment for each source control commit (hopefully).</p>
<p>The above applies to image assets as well. Â If a designer gives me a <a href="http://adobe.com/products/photoshop/">Photoshop</a> PSD, an <a href="http://adobe.com/products/illustrator/">Illustrator</a> AI, or a <a href="http://adobe.com/products/fireworks/">Fireworks</a> PNG, I&#8217;m usually the one that breaks out the image assets I need, and imports into the FLA the way I need them.</p>
<p><strong>Flex Designer Developer Workflow</strong></p>
<p>In <a href="http://adobe.com/products/flex/">Flex</a>, things are slightly different. Â First off, there is no FLA. Â Flex is just like traditional web development. Â All of your files are in a folder, and it&#8217;s up to you to organize them, and check all of them into source control. Â While some Flash projects required multiple FLA&#8217;s, at least FLA&#8217;s were self-contained. Â In Flex&#8230; no such luck.</p>
<p>As such, Designers currently have no way to easily play in their own design sandbox, like they could using their own FLA. Â I&#8217;ve read on blogs of some designers capable of using Design View in Flex. Â That may work for simple form based projects that utilize the Flex components with minimal skinning and heavier usage of styles&#8230; but I don&#8217;t get to work on those projects. Â The Design View still doesn&#8217;t correctly visually represent your application. Â My projects are usually the same as the old Flash ones: Designer has crazy cool ideas, and some utilize the Flex components, others do not. Â The justifications for not using theÂ standardÂ GUI controls for Flex, even if the Designer is fully aware of Flex&#8217; repertoire, is that it&#8217;s the best GUI solution for the user.</p>
<p>What this means is that you lose fidelity of the Designer&#8217;s vision, and thus must revert to more primitive ways to communicate the design. Â Tools such as Photoshop, Illustrator, and Fireworks create wonderful designs, but they are not interactive, nor do they communicate application flow like Flash does. Â Thus, you&#8217;ve taken a step back in workflow. Â This results in more mistakes, more false starts, and generally more communication problems for the entire team, not just the Designer and Developer. Â Time and money lost; software is hard enough, zomg!!!</p>
<p>Now, Dean did a few things on this project that did help. Â The first was he created a master application example in <a href="http://www.adobe.com/products/aftereffects/">After Effects</a>. Â This did a few things. Â It really helped sell the client on the original design. Â It also served as a great reference point for me to recognize how a transition worked, or how functionality worked. Â I&#8217;d refer to it often. Â Additionally, we all used it as a communication tool since we&#8217;re all remote. Â Over the phone, we&#8217;d go, &#8220;Scrub to 1:37&#8230; see that fade on the top left?&#8221;, etc. Â Worked a heck of a lot better than referring to multiple flat wireframes and design comp PDF&#8217;s.</p>
<p>As you may know, After Effects is a video compositing tool. Â What this means is the output is a video file. Â Unlike Flash, there is no access to the individual design elements that made the animation. Â So, you can&#8217;t crack open an animation and see how the designer did it, and thus determine if it&#8217;s worthy to be used as is, or be re-created yourself.</p>
<p>For that, Dean created a skin file. Â Skin files done in Flash are different than traditional FLA&#8217;s used as the basis of a Flash application. Â Skin files are created soley for the purpose of using the skins in a Flex application. Â Flex has the ability to embed Skins created in Flash, and use them as design elements for Flex components. Â You typically do this via CSS. Â In fact, this is exactly how the skins for the Flex SDK 2 and 3 were created. Â You can actually go crack open this FLA in the Flex SDK and change to your hearts content.</p>
<p>Now, in the past, I&#8217;d usually do this. Â Whether given a Photoshop comp or a Flash file, I&#8217;d create a new skin FLA file, create all the skins for export, and embed in Flex via CSS. Â From my consulting, this is usually because Designers don&#8217;t have a clear picture of what Flex is capable of, nor how to design for it.</p>
<p>Not Dean. Â He knew exactly what he was doing. Â In fact, the expectations of the Project Manager were far and ahead of what I was used to. Â Apparently on some projects, Dean has actually mocked out Flex projects himself, creating the CSS and MXML with states/transitions himself to illustrate how things are supposed to look and work.</p>
<p>Naturally, alarm bells went off. Â I did the MXML, butÂ definitelyÂ had him handle the CSS with regards to fonts. Â For the same reasons I cited for Flash FLA&#8217;s, I don&#8217;t want Designers creating MXML I&#8217;m not going to use. Â Sometimes I don&#8217;t even use MXML, but instead create many ActionScript classes to make the component. Â It&#8217;s more effective for the Designer and I to talk out how things work, or for the designer to create a sample FLA/MOV of how things should look. Â The way you create MXML and ActionScript, like Flash, is very personal and there are 2 opposing goals; the Designer wants to communicate concepts, and the Developer wants to create encapsulation.</p>
<p><strong>Conclusions</strong></p>
<p>There are 2 important things here I want to emphasize. Â Dean created the skin FLA, and Dean handled the fonts in CSS. Â That alone is amazing. Â I&#8217;ve never had a Designer do that with me in Flex. Â It makes my job immensely easier, and faster. Â The fact that not only can we start the project with prepped assets, but as we iterate we can easily update those assets&#8230; that&#8217;s huge.</p>
<p>I&#8217;d like to think that I&#8217;m only lucky to be working with a great team at <a href="http://enablus.com/">Enablus</a>&#8230; but f that. Â You suckers don&#8217;t get off that easily. Â Instead, I recognize it as a maturation of Designers and Developers working on enough Flex projects together that Designers recognize the capabilities of Flex and how it works. Â That&#8217;s just wonderful. Â On the flip-side, I now have high expectations of the designers I work with.</p>
<p>Beware. Â If you don&#8217;t like it, blame Dean for his pimpness.</p>
<p><strong>How Flash Catalyst Changes the Flex Workflow</strong></p>
<p>How does <a href="http://labs.adobe.com/technologies/flashcatalyst/">Flash Catalyst</a> fit into this work flow? Â The theory that I&#8217;ve read goes something like this:</p>
<ol>
<li>Designer does their usual discussion, sketches, wireframe, design comp iteration routine.</li>
<li>Designer takes design comps (Photoshop, Illustrator, and/or Fireworks) into Flash Catalyst, and creates Application screens, states, and GUI controls.</li>
<li>Designer skins each GUI control, or creates controls from design assets.</li>
<li>Designer creates states and transitions of the application.</li>
<li>Saves as FXG.</li>
</ol>
<p>From here, the developer can:</p>
<ol>
<li>Open the FXG in Flex Builder</li>
<li>Add the necessarey code.</li>
<li>If the design changes, the Developer can use a diffing tool to merge in the changed FXG XML.</li>
</ol>
<p>And that, ladies and gents, is complete bs. Â I&#8217;m certainly not working that way. Â I&#8217;ll do the same thing that&#8217;s worked for years in Flash:</p>
<ol>
<li>Create my own Flex project. Â Create all the framework classes I&#8217;ll need, package structure, and data model.</li>
<li>Create a new Flex Project for the Designers&#8217; FXG Flash Catalyst file.</li>
<li>For the graphics XML I can use verbatim, great, I&#8217;ll use it and add code around it.</li>
<li>For the majority, however, I&#8217;ll code custom components. Â A lot of the FXG I&#8217;ve seen from Flash Catalyst seems to ignore the best practice of putting styles into a single CSS file. Â So, I&#8217;ll make a case by case judgement on which components can be used verbatim, and which need to have configurable styles with the Designer&#8217;s design as the defaults.</li>
<li>Anytime the Designer has an updated FXG, I&#8217;ll replace the FXG project I created from the Designer&#8217;s original FXG. Â I&#8217;ll then either merge in the new assets and FXG I deemÂ necessary, otherwise I&#8217;ll just refer to my updated and separate, FXG Flash Catalyst project for visual reference.</li>
</ol>
<p>Like in Flash, Designers created MovieClips without a care in the world about how&#8217;d you actually code that stuff. Â Sometimes, MovieClips weren&#8217;t the best way to go about it. Â They shouldn&#8217;t care, either. Â They should be able to design their vision how they see it. Â It&#8217;s then up to us engineers to code it. Â If we need toÂ compromiseÂ and iterate, so be it, that&#8217;s how it works. Â Done deal.</p>
<p>Flash Catalyst is no different. Â The FXG a Designer creates via Flash Catalyst probably isn&#8217;t anything close to what I&#8217;d actually use in production code. Â If they update their original file, fine, I&#8217;ll merge in manually the FXG, or parts of the FXG, I deemÂ necessary. Â It&#8217;s the same exact work flow I and others have used for years in Flash.</p>
<p>It&#8217;s important to realize that this is still a great thing. Â We now have a native design format with a working tool for Designers to work natively in Flex. Â We didn&#8217;t have that before, and we soon will. Â I just think everyone&#8217;s ideal of Designers creating FXG that&#8217;s usable out of the box is complete rubbish.</p>
<p>&#8230;at least for the projects I do. Â Again, some use the native Flex components, and some don&#8217;t. Â So yes, I&#8217;ll use some FXG natively with no changes, but not all. And the keywords here are &#8220;not all&#8221; meaning, I cannot use the FXG verbatim from Catalyst, nor do round trip. Â Regardless, I still think that&#8217;s ok as a version 1 for Flash Catalyst. Â However, if Adobe can pull off CSS file support in Flash Catalyst with Font embedding, then hell yeah, I&#8217;ll bitch a lot less. Â Pixel fonts for the epic win. Â High bar for Adobe.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://jessewarden.com/2009/02/working-with-dean-flex-designer-developer-workflow.html/feed</wfw:commentRss>
			<slash:comments>13</slash:comments>
		
		
			</item>
		<item>
		<title>Mix n Mash 2k7, Bill Gates, Web, Blend, and Silverlight</title>
		<link>https://jessewarden.com/2007/12/mix-n-mash-2k7-bill-gates-web-blend-and-silverlight.html</link>
					<comments>https://jessewarden.com/2007/12/mix-n-mash-2k7-bill-gates-web-blend-and-silverlight.html#comments</comments>
		
		<dc:creator><![CDATA[JesterXL]]></dc:creator>
		<pubDate>Thu, 13 Dec 2007 05:58:55 +0000</pubDate>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Appz]]></category>
		<category><![CDATA[Expression]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[Thermo]]></category>
		<category><![CDATA[WPF]]></category>
		<guid isPermaLink="false">http://jessewarden.com/2007/12/mix-n-mash-2k7-bill-gates-web-blend-and-silverlight.html</guid>

					<description><![CDATA[I had the honor of being 1 of the lucky 10 invited to attend the Mix n Mash 2007 event held by Microsoft. This is the 2nd one. It&#8217;s an event where they invite you to Microsoft&#8217;s HQ to see what they are working on, give feedback, and meet Bill Gates. Here&#8217;s a picture of [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>I had the honor of being 1 of the lucky 10 invited to attend the Mix n Mash 2007 event held by <a href="http://www.microsoft.com">Microsoft</a>.  This is the 2nd one.  It&#8217;s an event where they invite you to Microsoft&#8217;s HQ to see what they are working on, give feedback, and meet Bill Gates.</p>
<p>Here&#8217;s a picture of the Mix n Mash invited attendee&#8217;s getting their picture taken with Bill Gates (I somehow got in there, booya!)</p>
<p><a href="http://jessewarden.com/archives/EBC_MIXnMASH_-_BillG_01_MS_12_2007.jpg"><img decoding="async" src="http://jessewarden.com/archives/EBC_MIXnMASH_-_BillG_01_MS_12_2007_small.jpg" width="460" /></a></p>
<p>From left to right:</p>
<p><a href="http://snook.ca/jonathan/">Jonathan Snook</a>, <a href="http://www.thedatafarm.com/blog">Julie Lerman</a>, <a href="http://www.gotomobile.com/">Kelly Goto</a>, <a href="http://weblogs.asp.net/rhoward/">Rob Howard</a>, <a href="http://microsoft.com">Bill Gates</a>, <a href="http://molly.com">Molly Holzschlag</a>, <a href="http://www.liveside.net/">Kip Kniskern</a>, Jesse Warden (me!), <a href="http://www.bit-101.com/">Keith Peters</a> and <a href="http://jot.eriknatzke.com/">Erik Natzke</a></p>


<span id="more-1217"></span>


<p>Last year&#8217;s event apparently had a lot of designers who thought the <a href="http://www.silverlight.net">Silverlight</a> content was really over their head.  So, this year, they has 2 tracks; 1 designer track and 1 developer track.  I told Tim (Microsoft&#8217;s <a href="http://www.onflex.org/ted/">Ted Patrick</a>) that I wanted to go to both.  In the end I had to choose one.  I planned on going to the developer one because I wanted to give the community a play by play of the features Silverlight 2 will have and do a fair comparison with <a href="http://www.adobe.com/platform/flash/">Flash Player</a> 9 &amp; 10.</p>
<p>However, after about 5 virgin fruit punches at <a href="http://www.tradervics.com/">Trader Vics</a>, I was really hyped up after talking to various Microsoft employee&#8217;s.  I believe they are doing everything right with Silverlight, and tons wrong with Blend.  After draining every employee I could meet of info, I decided the next morning I&#8217;d hit the design track instead.  The 4 of us got to meet some of the designers and dev&#8217;s working on <a href="http://www.microsoft.com/expression/products/overview.aspx?key=web">Web</a> and <a href="http://www.microsoft.com/expression/products/overview.aspx?key=blend">Blend</a>.</p>
<p>This career histories&#8217; these dev&#8217;s have is just unreal.  If I&#8217;m 80, and can talk even a 100th of how they talked about where they worked, what they worked on, and how those projects affected them, I&#8217;ll feel confident I enjoyed my career.  I&#8217;m not really sure how in the hell I got invited into a small, informal room to talk shop with these pro&#8217;s.  Yet, the informal nature made it damn fun.  Free coffee was pimp, too!</p>
<p>Web seemed like Microsoft&#8217;s version of Dreamweaver.  Clean, well laid out, and the focus of the conversation was about integrating a good set of CSS features to help raise the bar for the industry.  Apparently there is tons of CSS done horribly wrong.  They had some cool ideas, and I&#8217;m sure we only heard 5% of all of them.  At first, I just listened to <a href="http://snook.ca/jonathan/">Snook</a> and <a href="http://molly.com">Molly</a>.  They are both smart, so just absorbing the dialogue was rad.  As they started to show PHP code hinting, and SWF embedding, I felt it was my duty to step up.  I got shot down pretty quickly about using <a href="http://blog.deconcept.com/swfobject/">SWFObject</a> by default for SWF embedding, or even considering using the Embed tag.  It&#8217;s all good, I have Pimp Cloth Armor +2.  I still need to send the Web team an email of the additional parameters one needs to allow a developer to modify to embed Flash content with more control.</p>
<p>Additionally, I asked about what version of PHP code hinting they would support.  It sounded like 5.  While I appreciated code hinting for PHP, I asked that they also provide a way to improve on those code hints via configuration files in case they don&#8217;t get auto-class hinting like Zend for example.  If you&#8217;ve ever tried to write your own custom code hints for Dreamweaver, attaching a hook to the back of your neck and jumping out of a helicopter with no parachute is more fun.  Bottom line, even version 2, if Web is installed on my machine, I&#8217;d use it.  I primarily use a Mac, but on my home PC, heck yeah, Web looks fun, and their CSS re-factoring tools sound yum.  I suck at CSS so any tool that helps me become a better coder by enforcing best practices&#8230; <a href="http://www.youtube.com/watch?v=s3jmEdJJ3Dc">woo</a> <a href="http://ytmnd.com/search?q=woo+woo&amp;x=0&amp;y=0">woo</a>!</p>
<p>Next up was the Blend crew.  Some pro&#8217;s and cons here.  First off, Blend has it rough right out the gate.  It&#8217;s a phat tool for doing both <a href="http://www.microsoft.com/windows/products/windowsvista/default.mspx">Vista</a> application design for <a href="http://wpf.netfx3.com/">WPF</a> and Silverlight development ( as subset of WPF ).  Creating a tool to support both environments is a challenge.  <a href="http://labs.adobe.com/technologies/flex/">Flex Builder 3</a> does it pretty well from the Beta 2 that I&#8217;ve played with.  Choosing the older SDK or the new 3 one is just a radio button, converting older code is a snap if you aren&#8217;t using charts, and choosing an application to be an <a href="http://labs.adobe.com/technologies/air/">AIR</a> app is just another radio button.  The AIR API isn&#8217;t monstrous compared to WPF, so Adobe has it a lot easier getting Flex Builder to support the Flex SDK, ActionScript 3, and AIR api&#8217;s.  Furthermore, people like me don&#8217;t really give a flying flip about developing applications for Vista (until customers come calling offering more bling than they do for web appz).  The demo&#8217;s they showed for Vista were hot, definitely had good designers employed behind their creation, and the syntax just drew me in.</p>
<p>For example, their binding syntax was sick!  Instead of just being a variable like Flex does it, it actually had parameters IN the binding.  The 2nd one was one way or two way binding.  OMG, I write so much bloody code to do 2-way bindings in Flex.  For the simple stuff, you can use 2 binding tags, or just another bind&#8230; but for the complex stuff, you end up writing your own getter/setters.  WPF&#8217;s way is just&#8230; awesome.  So awesome I forgot what the 3rd parameter does.  Adobe, copy that shiz.</p>
<p>&#8230;alas, I didn&#8217;t really get a feel for what the app had for Silverlight 2 creation.  You can only show so much in an hour when someone keeps running their mouth about how they hate the Solutions Panel.  We used the Blend September preview on a project, and I felt it was good.  The integration between <a href="http://www.microsoft.com/expression/products/overview.aspx?key=design">Design</a> &amp; Blend needed some work, but you COULD get your designs there, just not 100% intact.  What really beefed me about Blend, though, was their timeline.  With XAML (the XML markup language for WPF &amp; Silverlight apps) having all kinds of wonderful options with regards to animations being separate elements and applicable to objects either as integrated or re-usable resources, I was really irritated that the current timeline in Blend doesn&#8217;t leverage that framework to it&#8217;s fullest.  Furthermore, the community has asked <a href="http://www.adobe.com">Adobe</a> countless times over the years for <a href="http://www.adobe.com/products/flash/">Flash</a> to have an <a href="http://www.adobe.com/products/aftereffects">After Effects</a> like timeline option.  I told <a href="http://samuelwan.com/information/">Samuel Wan</a> almost like 2 years ago that they really need to use that as a selling point for Blend as an advantage.  I guess they think that <a href="http://www.adobe.com/products/livemotion/">LiveMotion</a> had that, and didn&#8217;t out-sell Flash, so why should they?  I still disagree with the current incarnation; to me it needs a lot of work.  The newest Blend preview I saw had a bezier tweening panel for some of the keyframes.  Dope; it was big, and for a specific keyframe.  Regardless, I still think it&#8217;d be cooler if it were integrated into the timeline itself.  Once you go After Effects, you never go back.  I liked what I saw.  It was hilarious to see the project manager take it personal that they didn&#8217;t have a specific month (October?) preview.</p>
<p>I debated for an hour about that damn Solutions Panel.  Maybe the Visual Studio guys like it, but after 1 project using that SOB, I hate it.  I argued that we need to have a regular explorer window in the program.  I don&#8217;t want to remove it, rather just for those of us web developers who are fully capable of managing our files in Windows Explorer / Mac Finder, we don&#8217;t need some glorified panel to hand-hold us.  I&#8217;ve never seen an app do well that built their own explorer like metaphor whereas the ones that do good use the OS based explorer as the base, and built atop it.  A lot of the text editors like EditPlus, TextMate, etc. do it very well.</p>
<p>Raise your hand if you think, in retrospect, the Project Panel in Flash MX 2004 was a complete failure?  Of those who raised your hand, do you dig <a href="http://www.gskinner.com/products/gProject/about.php">GProject</a>?  I know I do.  Grant Skinner built his own, and it did well.  I&#8217;d argue, though, that it was merely Grant&#8217;s skill and long history of Flash that made it successful.  Most of us would of preferred just a simple explorer window we could point to our project directory, give the IDE some class info, and call it a day.  Kinda like FlexBuilder&#8230;.</p>
<p>Their counter-argument was that they need the Solution&#8217;s Panel for 2 reasons.  First, it allows the same project to be opened in Visual Studio.  Fair enough.  The second reason was that it allowed them to determine what assets needed to be compiled in the Silverlight app.  Whatever.  Give me an explorer window, and parse the XAML or C# to know what assets I used.  Either that, or make it not suck; like work like Windows normally works.  Drag and drop, a REAL folder structure, not some made up one, and auto-refresh.</p>
<p>Another funny part was when I asked why their XAML didn&#8217;t use proper namespaces.  The only namespaces it used was for custom stuff or some attributes.  They replied that it&#8217;s perfectly valid XML to not show the namespaces unless you are writing elements outside of the default.  Then Molly chimed in her agreement with that &#8220;tone&#8221; that implies, &#8220;What the f$*2 are you talking about?&#8221;.  It&#8217;s pretty awesome to have one of the project leads of Blend and the web standards queen shoot you down at the same time.  Owned.  Naturally, I&#8217;m left wondering why in the heck MXML in Flex has the namespaces like that&#8230; and what&#8217;s the default namespace for MXML?  Grr!</p>
<p>Last thing I asked for was, &#8220;The less HTML &amp; JavaScript we have to write for Silverlight 2 via Blend &amp; Visual Studio, the better.&#8221;  80% of my time creating the <a href="http://jessewarden.com/2007/10/scale-9-in-silverlight.html">Scale 9 example</a> was spent scouring the web &amp; the Silverlight forums for the right HTML &amp; CSS combination that made it work in all browsers, all OS&#8217;s.  The whole point of using a web plug-in is so you don&#8217;t have to deal with that bs.</p>
<p>I could rant all day about <a href="http://www.microsoft.com/surface/">Microsoft Surface</a>.  All I&#8217;m going to say is, first, YouTube doesn&#8217;t do it justice; you have to see it in person.  Second, it changes everything.  For those who can&#8217;t take the epic sentence, here&#8217;s <a href="http://www.youtube.com/watch?v=CZrr7AZ9nCY">some sarcasm</a> to compensate.</p>
<p>Lastly, we got to introduce ourselves to Bill Gates and ask him a question or two.  I thought long and hard about what to ask, and every question I came up with could probably be found to be already asked and answered by crawling the web.  Although I felt pressured to ask something relevant technically to the Flash &amp; Flex community, I just couldn&#8217;t find something that was appropriate.  So, I asked about his decision to focus on the <a href="http://www.gatesfoundation.org/">Gates Foundation</a> full time.  <a href="http://www.bit-101.com/blog/?p=1098">Keith</a> <a href="http://www.bit-101.com/blog/?p=1100">covered</a> <a href="http://www.bit-101.com/blog/?p=1101">all</a> <a href="http://www.bit-101.com/blog/?p=1102">the</a> <a href="http://www.bit-101.com/blog/?p=1103">questions</a> <a href="http://www.bit-101.com/blog/?p=1104">in</a> his series of blog posts.  I&#8217;m re-posting my question here with a few corrections since the transcriptionist couldn&#8217;t hear me too well.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p><quote><br />
<strong>Jesse Warden</strong>: So, your a (almost called him a dude) man who has really influenced a lot of software industries and then as soon as you announced the Gates Foundation, the media jumped on it and talked about how you were influencing philanthropic endeavors. Was there a turning point that made you feel like you wanted to do that full-time or was it a culmination thing? How did you get to the point where you now want to focus on it full-time?</quote></p>
<p><strong>BILL GATES</strong>: Well, I said even in my 20s that I didn&#8217;t think somebody who was 60-years old should be deciding the technology strategy for a state of the art software company. So, you know, I&#8217;m pretty old now, and it&#8217;s good for somebody else to come along. I&#8217;m still the guy who thinks, hey, saving a few bytes of memory is a worthwhile thing, let&#8217;s spend a few hours and save a few bytes here. Nowadays just saving a megabyte, it&#8217;s not worth it, don&#8217;t waste your time. So, you get a certain mindset about what makes sense. To me, computing power is still a little scary. Now, compared to the people before me, I was a revolutionary in how I thought about those things.</p>
<p>So, there comes a point where somebody should pick things up. Since the age of 17 I was CEO and sort of chief software architect until seven years ago, and then I got &#8212; that was a big change, maybe not as big but it was a big change, because then Steve took over and has run the company since the year 2000, and that was sort of getting ready for the idea of running Microsoft in a different way.</p>
<p>The foundation stuff has turned out to be very exciting, and I&#8217;d say there&#8217;s one thing in common with the foundation and Microsoft. When we announced a software-centric vision of the world, 1975, there weren&#8217;t a lot of people involved in that, and it&#8217;s been exciting to see it sort of developed as we dreamed that it would, and many people coming in and contributing to that.</p>
<p>When the foundation got going in global health, there just wasn&#8217;t that much &#8212; there was nothing going on in terms of Malaria, TB. We have 20 diseases that we do. And we think we&#8217;re going to conquer the majority of those in some reasonable period of time.</p>
<p>So, my ability to spend full time on that, go get the pharmaceutical companies more involved, get the best scientists more involved, back some risky approaches there, I may be more unique in terms of facilitating some of that than I am in software.</p>
<p>And sometime in my fifties I was going to make a change, and so about a year and a half ago, we picked the date and told the world, and we&#8217;re on track for that to happen.</p>
<p>So, there&#8217;s nothing magic about the date, but it seemed like Microsoft was in good shape, Ray Ozzie was the person stepping up to take on a big part of what I&#8217;d one uniquely, and so we made the choice.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>Afterwards, a few of us went out to finish the night out.  It was really cool to meet a lot of new people in my industry; that&#8217;s one of the reasons why I got into consulting in the first place.  They were all smart and clearly dug their professions, being passionate about what they do.  I got to learn a little more about some of the Microsoft people, and how they got into their roles.</p>
<p>I finished off the trip by meeting one of my old co-workers at the Atlanta airport, Tom Link of <a href="http://universalmind.com">Universal Mind</a>, and debated about AIR.  They are having mucho success with AIR in their business, whereas I&#8217;m still bitter.  I had to clarify my position that I&#8217;m more irritated by Adobe&#8217;s allocation of resources to a desktop endeavor vs. improving the work-flow &amp; integration of their products.  Taking people of the caliber and experience level of <a href="http://madowney.com/blog/">Mike Downey</a> and <a href="http://www.mikechambers.com/blog/">Mike Chambers</a> and putting them on a particular endeavor clearly shows the importance Adobe perceives in that project.  Don&#8217;t get me wrong, having <a href="http://www.andersblog.com/">Mark Anders</a> and crew on <a href="http://adobedev.adobe.acrobat.com/p12022133/">Thermo</a> (careful, mean window resizing JavaScript) is definitely awesome, but I just feel there was a lot of work left to be done on the design side, a side where Mike and Mike clearly had booku amounts of experience.  Regardless, it&#8217;s in Adobe&#8217;s best interest to continue satisfying all the kids dreams who grew up with Java and were let down with false moniker of &#8220;Write Once, Run Anywhere&#8221; (client, not server).  Now that Adobe has delivered that on the web with Flex 2 &amp; Flash Player 9, putting momentum behind a cross-OS desktop endeavor just sweetens the deal, and tightens their hold on a market.  I agree from a business perspective.  I&#8217;m just selfish, and it&#8217;s my job to be critical; things can always be made better.  &#8230;like having <a href="http://www.rictus.com/muchado/2007/10/09/design-workflow-features-in-flex-builder-3/">gems like this</a> not be hidden on some awesome employee&#8217;s blog, and rather trademark features of a product suite.</p>
<p>By the end of the day, I had pretty much lost my voice.  I had never talked about software for so long, and so vigorously.  Insanely fun!</p>
<p>All in all, the trip was a blast.  I met new people, learned a lot, and hopefully helped Microsoft out.  Most importantly, it really changed my perception of Microsoft.  I never grew up in the world a lot of other people did with regards to Microsoft being a bully against the openness of the web.  So, I never had a negative perception of them to begin with.  Instead, I grew up with Corel, Adobe, and Macromedia software so just never really cared about their products because I never used them much.  Yeah, Word, Excel, and XP, but I didn&#8217;t make my career on that software.  Anyway, you hang out in the web world for a length of time, and there is enough Microsoft vitriol that some is bound to get splashed on you.  It was funny to hear some of Microsoft employee&#8217;s, especially the new ones, talk about their shock, and ways of dealing with the hate and anger thrown their way the minute they say they work at Microsoft.  This is apparent visually in the body language of those that are in parts of their designer division.  Even some of the contractors who merely consult on some projects for Microsoft recount on how they borrow notorious death threats from colleagues with similiar Microsoft ties, and use those as de-sensitizing measures by posting print-outs of them on their wall to constantly remind them that &#8220;someone else has it worse&#8221;.  Really wild.  Regardless, they are a lot like Adobe.  They are cool, having people there who clearly love what they do, and are insanely smart.</p>
<p>What really drove it home for me, though, was the internal strife; the healthy kind.  When I was about to go work at IBM, I had peers exclaim how horrible it was in their web technology division.  This couldn&#8217;t be further from the truth; meaning, if you actually do software development vs. extremely simple and tedious HTML updates.  Clearly, IBM is so big, that you can&#8217;t judge a company by one employee in one part.  Having an opinion of a company so large is personal, it makes it really hard to stereotype.  My experience there was really positive.  Naturally, a company that large has a lot of internal companies vying for their own self-interest.  So, it was really cool to hear about how Microsoft has these internal mailing lists, with lots of traffic, and various other politics that play out over time across these areas of the company&#8217;s product lines.  The company&#8217;s best interests are fiercely debated.  No one employee I talked to could (fairly) give me a sense of how much one concept was agreed on percentage wise.</p>
<p>For example, a lot(?) in Microsoft believe, like I do, there is room in the Rich Internet Application market to do things right that others have done wrong.   To provide good tools and technology for people to build cool experiences atop of.  Like, say&#8230; downloading fonts and using them on the client in Sliverlight 1.0.  The counter to that is those who believe they should instead be nurturing their existing .NET developer market towards these tools, and allow them to leverage their existing skillset in the RIA arena.  The example here is how Blend and Visual Studio&#8217;s integration model ENFORCES the code-behind methodology.  You design, layout, and transition your app in Blend, and write the code for it in Visual Studio.  Each view or component has associated code that makes it work in an associated .cs file; aka, code behind the design, that is visually represented in an associated .xaml file.</p>
<p>There are 3 ways to do this in the Flex world, and I hate them all.  Although inheritance still is bleh compared to composition, when you grow up extending GUI base classes to create your View&#8217;s in Model View Controller, it&#8217;s really hard to relate to these mature Java &amp; C++ programmers who come in and go, &#8220;OMG&#8230; that is so gross!  You need to separate your View and it&#8217;s implementation.&#8221;  Say what?  The 3 ways are: MXML is all GUI, and ActionScript is externally referenced in your mx:Script tag; MXML is all GUI, and you extend that MXML class with ActionScript to handle the implementation; or the reverse; you write ActionScript implementation code, and extend that with MXML for layout.</p>
<p>So, while I dislike code-behind work-flows, it clearly works in the Microsoft realm at least in theory.  A lot of .NET dudes I know haven&#8217;t had the opportunity to do a lot of hardcore front-end work.  Why would they when .NET writes all the HTML, JavaScript, and CSS for them?  While they&#8217;re technically &#8220;supposed&#8221; to stay in their Visual Studio sandbox, a lot are chomping at the bit to do some Blend work.  I have a feeling this will die down, and those who are server dudes at heart will return to VS and stay there.</p>
<p>The down-side is the constant &#8220;throw it over the wall&#8221; mentality that I see in the perception of work-flows.  The best teams (<a href="http://www.cynergysystems.com/blogs/page/davewolf?entry=it_takes_a_village">villages</a>?) are those that have designers and developers working together, regardless of tools.  Having Blend be the experience creation liaison between Design and Visual Studio isn&#8217;t a good substitute for a qualified Interaction Designer.  If you read Grant Skinner&#8217;s <a href="http://www.gskinner.com/blog/archives/2007/10/thermo_user_per.html">initial entry about Thermo</a>, Adobe&#8217;s tool in development targeted at Designers that will allow them to leverage the Flex SDK from a design perspective, and actually be empowered to design good Flex apps, you can see how again, you run into dangers when you try to supplement a tool for a qualified person.  Unfortunately, it&#8217;s hard to sell a client on needing another $20,000 so you can afford the proper Information Architecture contractor on a project.  &#8220;What?  We&#8217;re already paying for a DBA, back-end developer, front end coder, designer, and project/client manager&#8230; what the hell is an IA really going to add?&#8221;  The same goes for hiring Interaction Designers, or any really good designer / developer hybrid who can specialize mitigating work and designs between the designers and developers on the team.  No tool can replace the importance of those people on projects.  No one can get around production art (aka break up).</p>
<p>Regardless, I still like the tools.  To me, Flash MX 2004 proved that the tool is mightier than the run-time.  Yes, AS1 bytecode was slow, but when you give someone a tool to leverage a class based (ActionScript 2) language to create really compelling and powerful web applications&#8230; that just says a lot about how effective good tools can be at empowering people to leverage runtimes.  Allowing those tools to integrate, and integrate well, is what really helps facilitate good team interaction in a work-flow that works.  I hereby request Microsoft refrain from using the term &#8220;throw it over the wall&#8221; and instead focus on Expression&#8217;s mantra being &#8220;tool integration&#8221;.  There&#8217;s something special about how Blend and Visual Studio can share the same project.  You don&#8217;t see Flex, Flash, <a href="http://www.adobe.com/products/photoshop/">Photoshop</a>, or <a href="http://www.adobe.com/software/fireworks">Fireworks</a> doing that shiz.  You need to leverage that, build upon that, and empower teams, especially those who have never done hardcore RIA work before, to be successful on their own merits and not have the marketing suggest they retreat into their own camps.  Instead, it&#8217;s a collaborative effort.</p>
<p>My vote for representatives from the Flash/Flex community for next year (2008) are:</p>
<p>Developers = <a href="www.gskinner.com/blog/">Grant Skinner</a>, <a href="http://www.moock.org/">Colin Moock</a>, <a href="http://www.darronschall.com">Darron Schall</a>, Chafic Kazoun, <a href="http://wahlers.com.br/claus/blog/">Claus Wahlers</a>, <a href="http://www.joeberkovitz.com/">Joe Berkovitz</a>, <a href="http://www.dougmccune.com/blog/">Doug McCune</a>, <a href="http://blog.benstucki.net/">Ben Stucki</a></p>
<p>Designers = <a href="http://www.joshuadavis.com/">Joshua Davis</a>, <a href="http://gmunk.com">Bradley Grosh</a>, <a href="http://www.hillmancurtis.com/">Hillman Curtis</a>, Your Mom</p>
<p>Thanks again Microsoft, it was dope!  I hope I helped out.</p>


<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://jessewarden.com/2007/12/mix-n-mash-2k7-bill-gates-web-blend-and-silverlight.html/feed</wfw:commentRss>
			<slash:comments>14</slash:comments>
		
		
			</item>
	</channel>
</rss>
