<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Flex and Flash Developer - Jesse Warden dot Kizz-ohm</title>
	
	<link>http://jessewarden.com</link>
	<description>A blog on software development, technology, games &amp; movies.</description>
	<lastBuildDate>Thu, 18 Mar 2010 14:04:34 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/jessewarden" /><feedburner:info uri="jessewarden" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Interview w/ Kevin Suttle – Episode #7 JXLTV</title>
		<link>http://feedproxy.google.com/~r/jessewarden/~3/TbfOXr4s0cI/interview-w-kevin-suttle-episode-7-jxltv.html</link>
		<comments>http://jessewarden.com/2010/03/interview-w-kevin-suttle-episode-7-jxltv.html#comments</comments>
		<pubDate>Thu, 18 Mar 2010 14:04:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[jxltv]]></category>
		<category><![CDATA[360flex]]></category>
		<category><![CDATA[catalyst]]></category>
		<category><![CDATA[Fireworks]]></category>
		<category><![CDATA[kevin suttle]]></category>
		<category><![CDATA[ux]]></category>

		<guid isPermaLink="false">http://jessewarden.com/?p=2131</guid>
		<description><![CDATA[


		




var flashvars = {};
var params = {
	allowScriptAccess: "always",
	allowFullScreen: "true"
};
var attributes = {
  id: "viddler_ 72e28798",
  name: "viddler_ 72e28798"
};

swfobject.embedSWF("http://www.viddler.com/player/72e28798/", "viddler_ 72e28798", "437", "287", "9.0.0","http://www.jessewarden.com/expressInstall.swf", flashvars, params, attributes);



References:

360&#124;Flex Conference
MIcrosoft MIX 2010
Kevin Suttle &#8211; Blog &#124; Company
Blaine Bradbury &#8211; @monsanto
FDT (Flash Develop Tool) by Powerflasher
John Lindquist&#8217;s Robotlegs video tutorial (FDT no-mouse action!)
Fireworks + Flash Catalyst Makes [...]]]></description>
			<content:encoded><![CDATA[<div id="viddler_ 72e28798" name="viddler_ 72e28798">
<pre style="border: 0px; margin: 0px;">
<object type="video/mp4" data="http://jessewarden.com/archives/jxltv/jxltv-episode-007.jpg" width="720" height="404"><param name="controller" value="false" /><param name="src" value="http://jessewarden.com/archives/jxltv/jxltv-episode-007.jpg" /><param name="href" value="http://jessewarden.com/archives/jxltv/jxltv-episode-007-iphone.mp4" /><param name="target" value="myself" /><img src="http://jessewarden.com/archives/jxltv/jxltv-episode-007.jpg" alt="JXL TV Episode 7"></img>
		</object>
</pre>
</div>
<pre style="border: 0px; margin: 0px;"><script type="text/javascript">

var flashvars = {};
var params = {
	allowScriptAccess: "always",
	allowFullScreen: "true"
};
var attributes = {
  id: "viddler_ 72e28798",
  name: "viddler_ 72e28798"
};

swfobject.embedSWF("http://www.viddler.com/player/72e28798/", "viddler_ 72e28798", "437", "287", "9.0.0","http://www.jessewarden.com/expressInstall.swf", flashvars, params, attributes);

</script></pre>
<p><span id="more-2131"></span><br />
<b>References:</b></p>
<ul>
<li><a href="http://360flex.com">360|Flex Conference</a></li>
<li><a href="http://live.visitmix.com/">MIcrosoft MIX 2010</a></li>
<li>Kevin Suttle &#8211; <a href="http://kevinsuttle.com/">Blog</a> | <a href="http://www.eclecticstudios.com/">Company</a></li>
<li>Blaine Bradbury &#8211; <a href="http://twitter.com/monsanto">@monsanto</a></li>
<li><a href="http://www.fdt.powerflasher.com/">FDT (Flash Develop Tool) by Powerflasher</a></li>
<li>John Lindquist&#8217;s <a href="http://pv3d.org/2009/11/18/robotlegs-hello-world-video-tutorial/">Robotlegs video tutorial</a> (FDT no-mouse action!)</a></li>
<li><a href="http://www.juanchez.com/2010/02/12/fireworks-flash-catalyst-makes-sense/">Fireworks + Flash Catalyst Makes Sense</a> by Juan Sanchez</li>
</ul>
<p><b>User Experience:</b></p>
<ul>
<li><a href="http://labs.adobe.com/technologies/flashcatalyst/">Flash Catalyst</a></li>
<li><a href="http://www.amazon.com/Dont-Make-Me-Think-Usability/dp/0321344758/ref=sr_1_1?ie=UTF8&#038;s=books&#038;qid=1268919484&#038;sr=8-1">Don&#8217;t Make Me Think by Steve Krug</a></li>
<li><a href="http://www.infoaccelerator.net/blog/">Andy Powell</a> &#8211; <a href="http://static.infoaccelerator.net/files/UXPreso.pdf">UX Preso</a></li>
<li><a href="http://twitter.com/rjowen ">Follow RJ Owen</a> on Twitter</li>
<li><a href="http://twitter.com/umandy ">Follow Andy Powell</a> on Twitter</li>
<li><a href="http://twitter.com/merhl">Follow Joe Johnston</a> on Twitter</li>
<li><a href="http://www.uxbooth.com/">UX Booth</a></li>
<li><a href="http://uxmag.com/">UX Magazine</a></li>
<li><a href="http://silverbackapp.com/">Silverback App</a> by <a href="http://clearleft.com/">Clearleft</a></li>
</ul>
<p><b>Beer</b>: <a href="http://pintley.com/beer/guinness-extra-stout/436/">Guinness Extra Stout</a></p>
<img src="http://feeds.feedburner.com/~r/jessewarden/~4/TbfOXr4s0cI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jessewarden.com/2010/03/interview-w-kevin-suttle-episode-7-jxltv.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://jessewarden.com/2010/03/interview-w-kevin-suttle-episode-7-jxltv.html</feedburner:origLink></item>
		<item>
		<title>What I Learned From Microsoft MIX 2010</title>
		<link>http://feedproxy.google.com/~r/jessewarden/~3/5F7Q9JoOdZw/what-i-learned-from-microsoft-mix-2010.html</link>
		<comments>http://jessewarden.com/2010/03/what-i-learned-from-microsoft-mix-2010.html#comments</comments>
		<pubDate>Thu, 18 Mar 2010 00:33:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://jessewarden.com/?p=2106</guid>
		<description><![CDATA[*** I apologize for the &#8220;&#8230;&#8221;; this is a stream of conscious post about my experiences.  Some of it is cohesive, some not. ***
I attended Microsoft&#8217;s MIX 2010 conference in Las Vegas the week after 360Flex.  I had previously attended I think the 2007 or 2008 one.  I had actually recorded a lot of video [...]]]></description>
			<content:encoded><![CDATA[<p>*** I apologize for the &#8220;&#8230;&#8221;; this is a stream of conscious post about my experiences.  Some of it is cohesive, some not. ***</p>
<p>I attended Microsoft&#8217;s MIX 2010 conference in Las Vegas the week after 360Flex.  I had previously attended I think the 2007 or 2008 one.  I had actually recorded a lot of video from the first one and trashed all of it.  The 200x one was an EXTREMELY weird conference.  It occured in the Venetian, the same hotel that Adobe&#8217;s MAX was at.  So, I had the opportunity to see the vibe differences between the 2 communities, and whoa man&#8230; what a difference.</p>
<p><span id="more-2106"></span>Adobe has more chicks, more of a party vibe, and &#8220;appears&#8221; more diverse in terms of backgrounds.  In talking to some of the individuals at after parties, the majority at MIX were involved in the Microsoft technology stack in some shape or fashion whereas at Adobe, you had no clue what those people did.  There were patterns, yes, but design, back-end, Flash, Flex, Python&#8230;. all over the map.</p>
<p>At the 200x one, when they showed Silverlight 3 new features, I nearly lost my shit.  The audience was really excited about features that I perceived as things the Flash community had done 5 years ago.  Yet, if you looked at the audience, they were eating it up, excited, and you could tell they couldn&#8217;t wait to start coding.  After taking some time to reflect, I realized that Microsoft developers use Microsoft technologies.  They don&#8217;t &#8220;branch out&#8221; like Adobe ones do.  That&#8217;s why it&#8217;s rare as heck to see a .NET dev who uses Flash/Flex for their front-end.  Most use AJAX&#8230; generated from Microsoft tools.</p>
<p>This year was different.  I was armed with the understanding that Silverlight really isn&#8217;t just about competing with Flash/Flex/AIR in the video arena, but rather providing a missing piece that .NET devs didn&#8217;t have in the past.  The features added into Silverlight 1 through 4 match a lot of what us Flash/Flex Developers have.  They also validate our work.  It&#8217;s also about building on Microsoft&#8217;s platform, which is great.  You need a great web runtime + a phat browser + device to kick some tail.  Apple does it, Google&#8217;s doing it&#8230; Adobe?  Well, no device or browser, but Flash Player rocks, so&#8230;.</p>
<p>However, no matter how on parity those features get, or even surpass, the Microsoft community clearly is missing the design aspect in terms of designers working with .NET devs.  There are some, yes, but it&#8217;s a night and day difference compared to your average Flex consulting firm, or Flash agency, or small software shop that uses Flex.  I even talked to one small .NET shop manager who hired a Flash Designer specifically to get his UX/Design help with their Silverlight/WPF endeavors.</p>
<p>What many predicted finally came true: Microsoft forewent fighting Adobe on the design front, and embraced it.  It&#8217;s actually scary vs. cool.  I mean, it&#8217;s cool, but damn they did it well.  I haven&#8217;t used the tools in production, thus this entire paragraph is suspect, but wow.  They are now supporting PSD (Photoshop) and AI (Illustrator) native import as well as FXG.  Holy.  Shit.  I was on my 2nd cup of coffee, and I still did a triple take when <a href="http://weblogs.asp.net/scottgu/">Scott Guthrie</a> mentioned &#8220;So, we&#8217;re going to import some FXG&#8230;&#8221;.  Say what?  Where&#8217;s Design!?</p>
<blockquote><p>&#8220;Designers don&#8217;t use Design, they use Photoshop &amp; Illustrator.&#8221;</p></blockquote>
<p> said Mike Downey when I confronted him about it.  His tone was very matter of fact, confident&#8230; almost like, &#8220;Yeah man&#8230; exactly&#8221;.  What that means, though, is that they are on the RIGHT path.  Very cool stuff to embrace the design tools we all use.  Also lowers the barrier of entry for the design agencies to work with these Microsoft shops as partners.  Wow.</p>
<p>Yet again, it was great to see Sketchflow in action.  Rapid prototyping is HUGE in helping sales snag gigs, and now that the .NET world has a way to do this WITH valid design tools, man.</p>
<p>The common theme of the conference was &#8220;mobile, mobile, mobile&#8221;.  They were pushing their Windows Mobile 7, or whatever the heck it&#8217;s called, HARD.  I body checked &#8216;em on the 3 buttons, and they had some valid use cases.  Everyone codes a back button in iPhone apps&#8230; why not remove that step and put it natively on the phone?  Also, making search a first class citizen.  Well&#8230; can&#8217;t argue with that.</p>
<p>Like I drunkenly yelled at <a href="http://www.flashstreamworks.com/">Jens</a>, this was the most amazing keynote I&#8217;ve seen in terms of flow and momentum.  Microsoft this year clearly had it down pat.  They had a consistent message, it was effectively communicated, and it inspired the audience into action.  Well&#8230; mostly.  While the developer story was picturesque with all the tools working together with a device &amp; marketplace just waiting on you to start coding, the phone doesn&#8217;t exist yet.  iPhone does.  When it arrives, though, holy fish.  I believe Adobe can definately have just as a compelling story&#8230; but there was just something really professional, confident, and effective at this MIX keynote.  Maybe it was the speakers&#8217; experience level.  Maybe it was good rehearsal.  Maybe it was good content.  Every speaker was certainly very positive and didn&#8217;t come across as better-than-thou like in times past.  Maybe it was all it.  Bottom line, it was great, and set a high bar.</p>
<p>&#8230;.but like I said, the audience is just not a Adobe audience.  If it was, it would of been a lot louder, with random screams and yells, perhaps some heckling.  .NET devs need more Redbull&#8230; that&#8217;s all I can say.  Maybe some Picasso too.  I don&#8217;t know.  Maybe that&#8217;s why all the Flex &amp; Flash devs were there. *ahem*</p>
<p>I hopped around sessions to &#8220;see what people were working on&#8221;.  They were doing the same things we&#8217;re doing. CMS systems that have rich front-ends to manage &amp; deploy media.  Video players.  Mobile development for phones that don&#8217;t exist (see what I did thar?).  Dealing with scaleable client-side software via modules.  Bottom line, they are a lot like us, doing very similar work.  Sadly, most of the Silverlight specific stuff is still funded-by-Microsoft vs. a client hiring someone/some firm/company.  While the technology seems to be ready, the market isn&#8217;t.</p>
<p>And that leads me to my conclusion.  Once they get to 60%, we&#8217;re in trouble.  Not big trouble, but we WILL start losing work.  At that point, you have 2 choices.  You can take the Cynergy approach of a few years ago, and go, &#8220;Dude, we do both &#8217;cause they both rock!&#8221;, or you can just deal with the reduced amount of gigs.  I don&#8217;t know to what degree this will affect the Flash/Flex world, but I know a lot of the big clients I&#8217;ve had in the past 2 years will no longer exist&#8230; unless I code Silverlight.  I, like others, still get a lot of work, so it&#8217;s not like we&#8217;ll just become unemployed, not in the least.  It&#8217;s just that the &#8220;MLB&#8217;s&#8221; and the &#8220;Olympics&#8221; style gigs will start to flow towards the Microsoft realm vs. the Flash realm.  And no, just because Flash has a higher install base won&#8217;t matter.  I can&#8217;t compete with free, regardless if my plugin of choice is at 99% and theirs is at 60%.  That said, Java/Python/Ruby etc. still exist in large quantities.  They target specific markets &amp; verticals.  A lot of those is where Flash &amp; Flex still shine, and will continue to do so.  Not everyone on the planet uses Microsoft technology stacks.</p>
<p>ESPECIALLY in the consumer sphere.</p>
<p>That&#8217;s what was interesting about the way Microsoft pitched their phone.  To consumers.  They hired all the right people, said all the right things, integrated all the right tools.  While I&#8217;m sure the manufacturers will make pimp devices, it&#8217;s challenging not to be cynical about Operators.  I guess if Apple can do it with glib, perhaps Microsoft can do it with dough?</p>
<p>Finally, Microsoft is definitely hiring the right people.  They are positioning key individuals in certain parts of the company, removing the old guard who just don&#8217;t get the web, nor younger consumers.</p>
<p>Will I be doing anything different after my 2nd MIX?  No.  Yes, I&#8217;ll be keeping in touch with my new found Microsoft friends&#8230; but until the Silverlight work flows to me vs. me having to form Microsoft consulting/partner relationships, nothing changes in my world.  It&#8217;s all about the money.  If people pay, I&#8217;ll do it.  Right now, Microsoft pays.  I don&#8217;t mind working as a partner for Microsoft, but right now the world knows me as a Flash &amp; Flex Dev who likes to kick ass with Flash Player, not Silverlight.  It&#8217;s up to the greenbacks flow to change that.  I know it comes off as reactive, but the Microsoft market is large enough that if I did dive in, I&#8217;d have zero problem finding clients even if am &#8220;late to the game&#8221;.</p>
<p>Oh yeah, and lastly, all the &#8220;free&#8221; software Microsoft is releasing to get you on board is a smart f&#8217;ing move.  And Visual Studio still looks awesome&#8230; so does C#.  Maybe I&#8217;ll go learn <a href="http://unity3d.com/">Unity</a> this weekend to get taste without having to dust off my PC or install VMWare or whatever it&#8217;s called.  Anything I can do to avoid Objective C&#8230;.</p>
<p>Anyway, thanks a ton to Microsoft for inviting me, I really appreciate it and all the events, they were fun, and I love meeting new people.  It was the best MIX yet, I learned a lot, and I look forward to speaking at the next one!</p>
<img src="http://feeds.feedburner.com/~r/jessewarden/~4/5F7Q9JoOdZw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jessewarden.com/2010/03/what-i-learned-from-microsoft-mix-2010.html/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		<feedburner:origLink>http://jessewarden.com/2010/03/what-i-learned-from-microsoft-mix-2010.html</feedburner:origLink></item>
		<item>
		<title>What I Learned From 360Flex 2010</title>
		<link>http://feedproxy.google.com/~r/jessewarden/~3/vNdAsCtABjk/what-i-learned-from-360flex-2010.html</link>
		<comments>http://jessewarden.com/2010/03/what-i-learned-from-360flex-2010.html#comments</comments>
		<pubDate>Wed, 17 Mar 2010 23:43:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://jessewarden.com/?p=2102</guid>
		<description><![CDATA[Preface
I attended and spoke at the 360 Flex conference in San Jose this year.  Before the high fades away, I wanted to post what I learned last week for a few reasons.  First, to share with others.  Second, to share for those who didn&#8217;t attend, but might if they feel they&#8217;d gain [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Preface</strong></p>
<p>I attended and spoke at the 360 Flex conference in San Jose this year.  Before the high fades away, I wanted to post what I learned last week for a few reasons.  First, to share with others.  Second, to share for those who didn&#8217;t attend, but might if they feel they&#8217;d gain something from it.  Third, a growing number of Flex devs, albeit really small, feel they don&#8217;t gain much from conferences.  I wanted to show a potential counterpoint to this in hopes it&#8217;ll convert them back.</p>
<p><span id="more-2102"></span>360 Flex was in San Jose, California this year, so it&#8217;s a long hike.  That said, people from all over the USA and world converged to meet &amp; greet.  360 Flex is THE premiere Flex conference.  As a speaker, it&#8217;s always been the place, next to Boston, where I KNOW people in the audience will get what I&#8217;m talking about.  As I&#8217;ve progressed in my career, I&#8217;ve struggled to present topics that weren&#8217;t too advanced for the general Flex community, yet would interest those who are advanced as well.  Her majesty constantly reminds me that the things I&#8217;ve spoke about 2 years are still very relevant to Flex &amp; Flash devs today, and I should find some way to get passionate enough about those topics so I can speak on them.  Regardless, I don&#8217;t have that problem in San Jose and Boston, so it was a nice reprieve.</p>
<p>This attitude is based on my perceptions of the body language of the audience as well as twitter &amp; in person responses afterwards (or lack thereof).  It&#8217;s not 100% accurate, but I can usually read an audience, knowing if they are getting it, and recognizing what things in my talks need to change material wise.  I also find that I speak better when I&#8217;m jet lagged and/or hung over.  This mellows my normal spazz-tastic nature, and helps me find a really good pace, especially if her majesty reminds me to have fun before hand.  Timing these sorts of things is hard, hehe.</p>
<p>I&#8217;m usually just so excited to speak about something I love that I forget the basic tenets of giving speeches, and that is &#8220;effective pausing&#8221;, pace, and stopping to re-assess the audience&#8217; engagement.  That&#8217;s one of the reasons I continue to speak.  I feel like I rock at Flex, but still have a long way to go at speaking.  Regardless, what &#8220;job&#8221; allows you to spread knowledge, gives you the opportunity to have dialogues with geniuses, and act like a crackhead in front of an audience causing them to <a href="http://andrewteman.org/blog/wp-content/uploads/lolcano.gif">lolcano</a>?</p>
<p>I may not come away from conferences &amp; user groups with gallons of insight like I did in the past, but I&#8217;ve found other angles of knowledge, and EVERYTHING is right with making new friends, and re-connecting in person with existing ones.  I love this shit.</p>
<p><strong>Goal: Flex 4 and Catalyst Workflows, &amp; Meeting Different, New People</strong></p>
<p>My goals for Flex/Flash specific conferences nowadays are to hit the sessions that are gaping holes in my knowledge.  I&#8217;m probably the last Flex dev on the planet who doesn&#8217;t use Flex 4.  This is a combination of my consulting work on existing Flex 3 projects, tight deadlines, and the need for dependability.  Thus, anything Flex 4 specific I&#8217;m interested in, not really from the technical side (Adobe&#8217;s got great docs), but more from piercing the marketing bs.  Asking top tier to regular devs &#8220;how do you REALLY work with the tools?&#8221; and striking up a dialogue.</p>
<p>Another passion of mine is people.  I love people.  I love working at Starbucks, and even more so, Manhattan, because I&#8217;m surrounded by people. By energy.  By life.  It&#8217;s an exciting feeling, and helps motivate to create cool shiz.  I&#8217;m fascinated by what makes people tick.  I like to see how some people have certain causes that lead them to certain effects.  If you challenge some commonly held beliefs, you can really get a good dialogue going with developers.  If you make vaporous statements about commonly held agreements, you&#8217;ll nodding confirmations, but not much more.  From groups to individuals, you can cause a lot of interesting things to happen.  IF you know what buttons to push.</p>
<p>I&#8217;m not just fascinated by crowds and groups, but by individuals.  If you&#8217;ve ever been to a Microsoft conference, one thing that differentiates the Flash/Flex world from them is our diversity.  We don&#8217;t have every application angle handled by Adobe, thus we must reach out to others for help in certain areas.  While we do technically have a client side and middle tier, we don&#8217;t have a database solution.  We must use MySQL, SQL Server, Oracle, etc.  This requires us to integrate with other communities.  In turn, they are exposed to us.  We&#8217;re different, from different backgrounds.  Some of the culture these clashes are bad, most are good.</p>
<p>Because our tech works with a common goal, we have a &#8220;managed diversity&#8221;.   Studies have proven that companies who have diversity that&#8217;s managed are more successful than those who don&#8217;t have diversity.  In turn, those who are so diverse, but aren&#8217;t managed are worse.  Flash hitting Rails, Flex hitting Django, AIR conjoining with C++.  Design agency punks mingling with executive, khaki wearing Enterprise Java J2EE devs.  It&#8217;s wonderful, crazy.</p>
<p>In short, the opportunity at these conferences, both large and small, to meet someone totally not like me is high.  Yes, we have a common thread; we love t3h SWF.  Yet we all have different backgrounds, different goals, desires&#8230; and once you dig into someone&#8217;s background, and get them talkin, I eat that shit up.  I love hearing about where people come from, how they arrived where they are, and why they decided to come this way, if at all.</p>
<p>It&#8217;s said that the best things about tech conferences are the discussions between/after sessions. For me, it IS the conference.  I&#8217;ve always tried to surround myself with people that are better than me.  They rise you up.  Debating with computer scientists, and genius artists&#8230; how can you NOT walk away a better person?</p>
<p><strong>What Did I Learn?</strong></p>
<p>A ton.</p>
<ol>
<li>A lot of developers don&#8217;t mind the lack of career path.  You rise to architect/consultant level, and instead of hitting the glass ceiling and breaking into management, many just saturate Flex/Flash avenues as far as they can, or go learn another technology and do the whole thing over&#8230; only a lot quicker than it took them the first time.</li>
<li>A lot of developers read technical manuals &amp; programming books vs. marketing &amp; sales ones.  There are exceptions, but most drink from the tech knowledge fountain and can&#8217;t get enough.  I feel like I have a responsibility to help fill the gaps to help them so they either (A) don&#8217;t have to worry about this gap or (B) have a desire to get out of their comfort zone.</li>
<li>Adobe doesn&#8217;t like me much anymore.  There are some great people there whom I still interact with, but it&#8217;s been pretty clear over the past 3 years that as I&#8217;ve moved into a more architect/sales role with my professional consulting, I&#8217;ve had zero time to evangelize software I don&#8217;t even fully believe in.  You can get away with not filing bugs for Adobe as long as you evangelize and help the community, but even that value perception has fallen out of favor apparently.  Given the fact that I&#8217;m focused on higher level problems like software workflows, marketing, sales, and products, this is time NOT spent talking about how dope Flex 4 states are, or how wonderful Flash Builder 4 handles certain coding challenges.  I&#8217;m not alone in this career transition, it just sucks that I can&#8217;t really devote the time I need to get respected again.  Additionally, Adobe&#8217;s focus, at least in the Flash Player sphere, has been exposing boilerplate API&#8217;s and functionality to allow them + 3rd parties to build powerful extensions on top fo the Flash Player.  I totally agree with the approach, but I&#8217;m not technically saavy enough to really help them in this area.  I know what my clients need and want, but translating that to a use case &#8220;please expose sound data via sound sample data so I can build <a href="http://www.hobnox.com/sidbr662tm3hnppndd05hjj9tgdo5/index.en.html">Hobnox</a>&#8221; is just not a jump I can technically make. To be fair, only 10% of it is CS3/CS4 related.  I screamed and bitched at Macromedia and Adobe for years, and saw the fruits of my suggestions along with the communities become a reality.  While some of their software is old, and it&#8217;s challenging for them to add pimp, new revenue generating features without alienating old markets or breaking old workflows, they still have people with mad skillz working for them, with a long successful track record (except for Flash CS3 and CS4; even though Fireworks CS3/4 crashes, we ALL love that prog).  I&#8217;m still in good with the Flash Media team, though, and that&#8217;s been helpful since I&#8217;ve been 100% focused on video for the past 3 years.  They are a pretty thick skinned bunch, so maybe that&#8217;s why&#8230; Anyway, given the amount of responsibility I have with running my own consulting firm + having 2 kids, I just don&#8217;t see how I can return to the days of old where I&#8217;d take 4 hours one night, create some kick ass shit, blog it, and thank Macromedia/Adobe for the cool toys&#8230;. and then suggest new things.  Maybe someday.</li>
<li>The latest fad with our industry is Dependency Injection, and <a href="http://flexblog.faratasystems.com/">Yakov Fain</a> won&#8217;t tell me what the next fad will be&#8230; if you figure that out, you&#8217;ll be the shiz.  Historically this has been what another programming community has had for years, and the Flash/Flex devs just suddenly get and freak out.  While cool, it was apparently obvious to others.</li>
<li>If a mentoring program existed for the Flex community whose sole goal was to make 1 product/project complete and &#8220;live&#8221; from 1 of the 30 &#8220;side projects&#8221; each Flash/Flex dev has on their computer, the world would be an AMAZINGLY better place.  All these 20% to 80% done apps/libraries/products that these developers have, some are really damn cool and NEED TO BE RELEASED.  Those like me who know this have a moral responsibility to help/empower these individuals to &#8220;do the last 10%&#8221;.  I don&#8217;t know how to do that, but it needs to be done somehow.</li>
<li>People who create kick ass open source projects don&#8217;t get enough feedback.  The only solution I can think of is people need more evangelists to not only promote their projects if they aren&#8217;t capable of being evangelists themselves, but also utilizing those envangelists to forcibly extract/publicly recognize via Twitter &amp; Blog streams successful projects that have utilized their software.  Meaning, like Joel Hooks will re-tweet Robotlegs endeavors done by the community to help give it a wider recognition.  Additionally, he&#8217;ll interact with those who&#8217;ve done projects, and take &#8220;back to the Robotlegs community&#8221; the problems/concerns/commendations those who use the software.  Steven Sacks getting public, community member quotes on the Gaia site is another example.  Projects like PyAMF and Hamcrest need this role, and I&#8217;m not really sure how to help them recruit for it beyond citing simple tasks they can do to help themselves.</li>
<li><a href="http://polygeek.com/">Dan Florio</a> was right in ignoring my advice.  I told him not to do <a href="http://runpee.com">RunPee.com</a>.  I didn&#8217;t think it&#8217;d be profitable.  I was wrong.</li>
<li>A lot of people in our industry are happy to make bling working on consistent Flex work with a consulting firm.  I am not like this.</li>
<li>There&#8217;s a growing desire for many developers to learn &amp; teach UX concepts.  This is a direct result from the lack of qualified UX talent.  Since this discipline most affects our client&#8217;s bottom line as well as project costs &amp; risk&#8230; we don&#8217;t have time to wait for UX people to just magically popup out of colleges.</li>
<li>I&#8217;ve gone 10 years without having a contract of my own, and signing any contract a client/company/consulting firm throws at me.  As long as the correct rate/price is on there, I didn&#8217;t care what the rest said.  After seeing Ellie Khabazian&#8217;s presentation, while I won&#8217;t create a contract of my own (since the clients work with would never sign it) I will most definitely ALWAYS be reading contracts I sign, and adjusting wording as necessary.  I&#8217;m one lucky mofo.</li>
<li>There seems to be more animosity towards Silverlight, and more fear towards HTML5.  Those in the know don&#8217;t care about HTML5, and don&#8217;t seem to fear Silverlight.</li>
<li>A lot of the old Flash devs don&#8217;t seem to see a lot of rapid innovation in produced content, whereas the new devs seem to have that feeling of daily finding wonder that the old ones had back in 2002.</li>
<li>Twitter makes blogging hard.  We all already knew this, I just got more corroboration.</li>
<li>Writing large scale examples for frameworks is a constant problem in &#8220;finding the time&#8221;.</li>
<li>I have a lot to learn about sales.</li>
<li>Getting developers on camera is freaking hard.  For a podcast?  Simple.</li>
<li>Getting <a href="http://kevinsuttle.com/">Kevin Suttle</a> to break character is freaking hard.</li>
</ol>
<p>Hope to see y&#8217;all another conference soon!  Thanks <a href="http://twitter.com/jwilker">John</a> &amp; <a href="http://twitter.com/lordbron">Tom</a>.</p>
<img src="http://feeds.feedburner.com/~r/jessewarden/~4/vNdAsCtABjk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jessewarden.com/2010/03/what-i-learned-from-360flex-2010.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://jessewarden.com/2010/03/what-i-learned-from-360flex-2010.html</feedburner:origLink></item>
		<item>
		<title>D2W and Roundtable with Joel Hooks &amp; Nick Joyce – JXLTV Episode #006</title>
		<link>http://feedproxy.google.com/~r/jessewarden/~3/IQG-k5bmTZ0/roundtable-with-joel-hooks-nick-joyce-jxltv-episode-006.html</link>
		<comments>http://jessewarden.com/2010/02/roundtable-with-joel-hooks-nick-joyce-jxltv-episode-006.html#comments</comments>
		<pubDate>Fri, 26 Feb 2010 04:10:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[jxltv]]></category>
		<category><![CDATA[d2w]]></category>
		<category><![CDATA[dee]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[hooks]]></category>
		<category><![CDATA[joel]]></category>
		<category><![CDATA[joyce]]></category>
		<category><![CDATA[nick]]></category>
		<category><![CDATA[pyamf]]></category>
		<category><![CDATA[pycon]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[robotlegs]]></category>
		<category><![CDATA[sadler]]></category>

		<guid isPermaLink="false">http://jessewarden.com/?p=2087</guid>
		<description><![CDATA[


		




var flashvars = {};
var params = {
	allowScriptAccess: "always",
	allowFullScreen: "true"
};
var attributes = {
  id: "viddler_cb438f21",
  name: "viddler_cb438f21"
};

swfobject.embedSWF("http://www.viddler.com/player/cb438f21/", "viddler_cb438f21", "437", "287", "9.0.0","http://www.jessewarden.com/expressInstall.swf", flashvars, params, attributes);



Announcements:

D2W Conference
Dee Sadler &#8211; Twitter &#124; Site
RIA Radio &#8211; Episode 8: Jesse Warden
DebugWindow v2 &#8211; Log window for Flex apps

References:

PyCon &#8211; Atlanta Python Conference
Joel Hooks &#8211; Twitter &#124; Blog
Robotlegs &#8211; MVCS [...]]]></description>
			<content:encoded><![CDATA[<div id="viddler_cb438f21" name="viddler_cb438f21">
<pre style="border: 0px; margin: 0px;">
<object type="video/mp4" data="http://jessewarden.com/archives/jxltv/jxltv-episode-006.jpg" width="720" height="404"><param name="controller" value="false" /><param name="src" value="http://jessewarden.com/archives/jxltv/jxltv-episode-006.jpg" /><param name="href" value="http://jessewarden.com/archives/jxltv/jxltv-episode-006-iphone.mp4" /><param name="target" value="myself" /><img src="http://jessewarden.com/archives/jxltv/jxltv-episode-006.jpg" alt="JXL TV Episode 6"></img>
		</object>
</pre>
</div>
<pre style="border: 0px; margin: 0px;"><script type="text/javascript">

var flashvars = {};
var params = {
	allowScriptAccess: "always",
	allowFullScreen: "true"
};
var attributes = {
  id: "viddler_cb438f21",
  name: "viddler_cb438f21"
};

swfobject.embedSWF("http://www.viddler.com/player/cb438f21/", "viddler_cb438f21", "437", "287", "9.0.0","http://www.jessewarden.com/expressInstall.swf", flashvars, params, attributes);

</script></pre>
<p><span id="more-2087"></span><br />
<b>Announcements:</b></p>
<ul>
<li><a href="http://www.d2wc.com/default/index.cfm">D2W Conference</a></li>
<li>Dee Sadler &#8211; <a href="http://twitter.com/deesadler">Twitter</a> | <a href="http://aboxofpixels.com/">Site</a></li>
<li><a href="http://www.insideria.com/2010/02/ria-radio---episode-7-jesse-wa.html">RIA Radio &#8211; Episode 8: Jesse Warden</a></li>
<li><a href="http://jessewarden.com/2010/02/debug-window-v2-simple-flex-debug-window.html">DebugWindow v2 &#8211; Log window for Flex apps</a></li>
</ul>
<p><b>References:</b></p>
<ul>
<li><a href="http://us.pycon.org/2010/about/">PyCon &#8211; Atlanta Python Conference</a></li>
<li>Joel Hooks &#8211; <a href="http://twitter.com/jhooks">Twitter</a> | <a href="http://joelhooks.com/">Blog</a></li>
<li><a href="http://robotlegs.org/">Robotlegs &#8211; MVCS Framework for AS3 and Flex</a></li>
<li><a href="http://twitter.com/nick_joyce">Nick Joyce</a> on Twitter</li>
<li><a href="http://pyamf.org/">PyAMF</a> &#8211; AMF support for Python</li>
<li><a href="http://universalmind.com/">Universal Mind</a> &#8211; RIA Consulting Firm</a></li>
<li><a href="http://jessewarden.com/2007/12/mix-n-mash-2k7-bill-gates-web-blend-and-silverlight.html" title="Mix n Mash 2007 - Bill Gates n Bloggers by jesterxl, on Flickr"><img src="http://farm3.static.flickr.com/2276/2092951645_934a0ece66_m.jpg" width="240" height="160" alt="Mix n Mash 2007 - Bill Gates n Bloggers" /></a></li>
<p><b>Beer</b> &#8211; <a href="http://beeradvocate.com/beer/profile/418/3434">Milk Stout</a> by <a href="http://www.lefthandbrewing.com/">Left Hand Brewing Company</a></p>
<img src="http://feeds.feedburner.com/~r/jessewarden/~4/IQG-k5bmTZ0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jessewarden.com/2010/02/roundtable-with-joel-hooks-nick-joyce-jxltv-episode-006.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
<enclosure url="http://jessewarden.com/archives/jxltv/jxltv-episode-006-iphone.mp4" length="279814530" type="video/mp4" />
		<feedburner:origLink>http://jessewarden.com/2010/02/roundtable-with-joel-hooks-nick-joyce-jxltv-episode-006.html</feedburner:origLink></item>
		<item>
		<title>Debug Window v2 – Simple Flex Debug Window</title>
		<link>http://feedproxy.google.com/~r/jessewarden/~3/415AFCzCf3w/debug-window-v2-simple-flex-debug-window.html</link>
		<comments>http://jessewarden.com/2010/02/debug-window-v2-simple-flex-debug-window.html#comments</comments>
		<pubDate>Thu, 18 Feb 2010 15:46:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Flex]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[debugwindow]]></category>
		<category><![CDATA[logging]]></category>

		<guid isPermaLink="false">http://jessewarden.com/?p=1988</guid>
		<description><![CDATA[Back in Flex 1.5, I created a simple DebugWindow that was 1 class, and worked inside of Flex apps.  I don&#8217;t like a lot of complexity, and the fact I just needed to drop 1 class in my project, and write 2 lines of code to make it work was something that no others delivered [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://jessewarden.com/wp-content/uploads/2010/02/debugwindowv2.png"><img style="padding-right: 4px; padding-bottom: 4px;" title="debugwindowv2" src="http://jessewarden.com/wp-content/uploads/2010/02/debugwindowv2-300x222.png" alt="" width="180" height="133" align="left" /></a>Back in Flex 1.5, I created a simple <a href="http://www.jessewarden.com/archives/flex/flash_flex/source/srcview/">DebugWindow</a> that was 1 class, and worked inside of Flex apps.  I don&#8217;t like a lot of complexity, and the fact I just needed to drop 1 class in my project, and write 2 lines of code to make it work was something that no others delivered on.  Using trace required you to not look at your Flex app to see traces, you had to run in debug mode, and you had to use ASCII art to filter messages.  I was using <a href="http://www.luminicbox.com/blog/">LuminicBox</a> for Flex 1.5 projects later in the game, and in 2 &amp; 3, I used the <a href="http://yourpalmark.com/2007/02/19/luminicboxlog-as3-update/">AS3 update of it by Mark Walters</a>.  There were a couple of problems, though, and some features I wanted to add.</p>
<p><span id="more-1988"></span>So, I revisited my DebugWindow in hopes of keeping the same setup &amp; ease of use simplicity.  DebugWindow only required 1 class, and 2 lines of code to make it work.  However, I wanted the message type &amp; filtering that LuminicBox had with 2 other features: developer message filtering &amp; clipboard copy.</p>
<p>Enter DebugWindow v2.  There are plenty of other debuggers out there, so here&#8217;s the quick skizzy on what mine offers.</p>
<p><strong>Features</strong></p>
<ol>
<li>If you are/were a LuminicBox fan, you&#8217;ll (mostly) feel at home.</li>
<li>Works in your application; no browser or AIR dependencies</li>
<li>Simple setup; requires a SWC and 2 lines of code.</li>
<li>Open source under MIT license.</li>
<li>Simple API; Debug.log, Debug.debug, etc.</li>
<li>Works; I&#8217;ve used on 4 projects so far.</li>
<li>Works in Flex 3 &amp; 4.</li>
<li>Works in AIR.</li>
<li>Trivial to wire up to work in AS3 AIR.</li>
<li>Falls back to trace.</li>
<li>Filters message types by log, debug, info, warn, error, and fatal.</li>
<li>Easily copy to clipboard.</li>
<li>Auto-scrolling can be turned off.</li>
<li>Easy to clear.</li>
<li>Filter message types.</li>
<li>Compile time filtering for different loggers; for example, you can choose to only show your messages and a profiler for example.</li>
<li>Built using Flex SDK; tweak if you need to.</li>
<li>You can close it and your messages are still there and continually recorded.</li>
</ol>
<p><strong>Cons</strong></p>
<ul>
<li>Doesn&#8217;t work in the Flash IDE.</li>
<li>Not very fast (remove from production code).</li>
</ul>
<p><strong>How to Use</strong></p>
<p>Drop the SWC into your libs folder.  Then, use this code (I typically do it in Application.mxml file&#8217;s script block).</p>
<p><span style="font-family: Consolas, Monaco, 'Courier New', Courier, monospace; line-height: 18px; font-size: 12px; white-space: pre;"><span class="keyword">import</span> <span class="identifier2">mx</span>.<span class="identifier2">managers</span>.<span class="identifier2">PopUpManager</span>;</span></p>
<p><code> </code></p>
<p><code></p>
<pre><span class="identifier2">PopUpManager</span>.<span class="identifier2">createPopUp</span>(<span class="identifier">this</span>, DebugMax, <span class="identifier">false</span>);
DebugMax.<span class="identifier">log</span>(<span class="string">"Application::init, DebugMax ready and able, SIR!"</span>);</pre>
<p></code></p>
<p><strong>Message Types</strong></p>
<p>For more thorough documentation on when/where to utilize the different message types, refer to<a href="http://jessewarden.com/2010/02/consulting-chronicles-3-preventing-fire-drills-crises-by-removing-land-mines-and-using-diagnostic-tools.html#writinglogmessages"> the logging section</a> in my previous consulting article.  Below, I&#8217;ll briefly cover them.</p>
<p>Log&#8217;s are for common messages that should occur every time your application runs.  If you don&#8217;t see these log messages, you should be worried.</p>
<p>Debug&#8217;s are for when writing new code that you want to visually confirm is working in addition to your unit tests.   They are also for log messages you don&#8217;t intend to leave in your application long; they are supposed to stand out as being temporary.</p>
<p>Info&#8217;s are for unique situations you want be made aware of, but aren&#8217;t necessarily bad.  They are best used in tandem with debug&#8217;s so they stand out.</p>
<p>Warn&#8217;s are for errors that occur, but don&#8217;t negatively affect application functionality, such as images not loading, fullscreen not working because you forgot the correct JavaScript, etc.</p>
<p>Error&#8217;s are for logging all errors; synchronous, asynchronous, and custom ones.  Not all try/catch blocks should have them (some can be regulated to warns), but anything bad should be put here.</p>
<p>Fatal&#8217;s aren&#8217;t really ever used since there aren&#8217;t a lot of fatal things in Flash Player.  Usually these are business specific such as an initial XML configuration file that your application requires to run not loading, running out of memory, or other crucial things not happening like they should.</p>
<p><strong>Additional Notes</strong></p>
<p>The Debug window save&#8217;s its current position in a local SharedObject.  If you&#8217;re app shrinks and the window appears off-screen, just delete your SO, or just call a win.move(0, 0) or PopUpManager.centerPopUp(win) on it to reset it.</p>
<p>The Message ValueObject has the ability to add a time stamp for each message, but it&#8217;s commented out.  If you wish to have those for validation, open up the Message.as class, and you&#8217;ll see the line of code to uncomment.</p>
<p>Finally, using in AIR requires a simple wrapper window.  Here&#8217;s some code to get you started:</p>
<p><code></p>
<pre><span class="keyword">private</span> <span class="keyword">var</span> debugWin:<span class="identifier2">Window</span>;

<span class="keyword">private</span> <span class="keyword">function</span> onOpenDebugWindow(<span class="identifier2">event</span>:Event):<span class="keyword">void</span>
{
        openDebugWindow();
}

<span class="keyword">private</span> <span class="keyword">function</span> openDebugWindow():<span class="keyword">void</span>
{
        <span class="keyword">if</span>(debugWin == <span class="identifier">null</span>)
        {
                debugWin = <span class="keyword">new</span> <span class="identifier2">Window</span>();
                debugWin.<span class="identifier2">addEventListener</span>(Event.CLOSE, onDebugClosed);
                debugWin.addChild(<span class="keyword">new</span> Debug());
                debugWin.<span class="identifier2">open</span>();
                debugWin.<span class="identifier2">width</span> = 556;
                debugWin.<span class="identifier2">height</span> = 418;
                debugWin.<span class="identifier2">move</span>(0, 0);
        }
        <span class="keyword">else</span>
        {
                debugWin.activate();
        }
}</pre>
<p></code></p>
<p><strong>Download</strong></p>
<p>Includes a Library Project with SWC and an example project with Source code.  Both are for Flex 3 (but you can use in 4 if you&#8217;re so inclined). &#8211; <a href="http://jessewarden.com/archives/jxl-DebugWindowV2.zip">Download ZIP</a> | <a href="http://code.google.com/p/debugwindowv2">Source</a></p>
<img src="http://feeds.feedburner.com/~r/jessewarden/~4/415AFCzCf3w" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jessewarden.com/2010/02/debug-window-v2-simple-flex-debug-window.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://jessewarden.com/2010/02/debug-window-v2-simple-flex-debug-window.html</feedburner:origLink></item>
	</channel>
</rss>
