<?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>Josh Talks Flash</title>
	<atom:link href="http://joshblog.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://joshblog.net</link>
	<description>Just another WordPress site</description>
	<lastBuildDate>Tue, 15 Jan 2013 01:42:23 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Feathers 1.0 &#8212; hot on the heels of Starling 1.3</title>
		<link>http://joshblog.net/2013/01/14/feathers-1-0-hot-on-the-heels-of-starling-1-3/</link>
		<comments>http://joshblog.net/2013/01/14/feathers-1-0-hot-on-the-heels-of-starling-1-3/#comments</comments>
		<pubDate>Tue, 15 Jan 2013 01:42:23 +0000</pubDate>
		<dc:creator>Josh Tynjala</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://joshblog.net/?p=1433</guid>
		<description><![CDATA[Thank you to everyone in the community for your continued support of Feathers. Today, we&#8217;ve finally reached the big milestone that many of you have been waiting for. You can download Feathers 1.0 now. Be sure to grab Starling Framework 1.3 too. Development of Feathers 1.1 has begun. I pushed several changes today that have [...]]]></description>
				<content:encoded><![CDATA[<p>Thank you to everyone in the community for your continued support of <a href="http://feathersui.com/">Feathers</a>. Today, we&#8217;ve finally reached the big milestone that many of you have been waiting for. You can <a href="http://feathersui.com/download/">download Feathers 1.0 now</a>. Be sure to grab <a href="http://gamua.com/blog/2013/01/starling-13/">Starling Framework 1.3</a> too.</p>
<p>Development of Feathers 1.1 has begun. I pushed several changes today that have been sitting in a local branch, which makes <a href="https://github.com/joshtynjala/feathers">Feathers on Github</a> unstable again. If you&#8217;re just getting started with Feathers, stick with 1.0 from the <a href="http://feathersui.com/download/">Feathers website</a>, where things are more stable. If you want to test out what&#8217;s going into Feathers 1.1, and you&#8217;re not afraid of the occasional issue, then Github is the place to be.</p>
<p>I have good stuff planned for the next version, including fluid layouts, focus management for desktop apps, and a lot more. As always, I&#8217;m looking forward to community feedback as these new capabilities start to appear. Don&#8217;t be afraid to make <a href="https://github.com/joshtynjala/feathers/issues">bug reports or feature requests</a>. Even if something seems &#8220;obvious&#8221;, don&#8217;t hesitate to mention it. Thanks!</p>
]]></content:encoded>
			<wfw:commentRss>http://joshblog.net/2013/01/14/feathers-1-0-hot-on-the-heels-of-starling-1-3/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>On Names</title>
		<link>http://joshblog.net/2012/10/11/on-names/</link>
		<comments>http://joshblog.net/2012/10/11/on-names/#comments</comments>
		<pubDate>Thu, 11 Oct 2012 20:50:20 +0000</pubDate>
		<dc:creator>Josh Tynjala</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[Components]]></category>
		<category><![CDATA[Feathers]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://joshblog.net/?p=1415</guid>
		<description><![CDATA[It&#8217;s fascinating to me how people use names. For instance, I frequently see people refer to an Apple computer as a MAC. Every letter capitalized. At first, I give them the benefit of a doubt. That maybe they&#8217;re emphasizing the word to ensure that I understand exactly what type of computers they are referring to. [...]]]></description>
				<content:encoded><![CDATA[<p>It&#8217;s fascinating to me how people use names. For instance, I frequently see people refer to an Apple computer as a MAC. Every letter capitalized. At first, I give them the benefit of a doubt. That maybe they&#8217;re emphasizing the word to ensure that I understand exactly what type of computers they are referring to. Nope. A sentence later, I see MAC again, instead of Mac. Maybe a few more times after that. <a href="http://www.apple.com/mac/">Apple uses Mac everywhere, never MAC</a>. Yet, some people still type out MAC in all caps, as if it were an acronym instead of an abbreviation of Macintosh.</p>
<p>I&#8217;ve seen the same thing with Adobe Flex, now Apache Flex. Some people always type out FLEX, capitalizing every letter. Adobe and Apache both call it Flex, with only the F capitalized.</p>
<blockquote><p>Fun side note. Adobe AIR was once called Adobe Integrated Runtime, yet I haven&#8217;t seen Adobe call it that for years.</p>
<p>A colleague once challenged me to find a page on Adobe&#8217;s website that actually refers to the name, Adobe Integrated Runtime. Other than some very, very old references on Adobe Labs from when the runtime was still alpha/beta and the name wasn&#8217;t finalized yet, I couldn&#8217;t find it. Those Labs pages are so old, that they don&#8217;t really count.</p>
<p>Oddly, Adobe still capitalizes the name AIR. In this particular case, using all caps is valid, and yet there&#8217;s basically no official indication for why it&#8217;s like that if someone new to AIR were to go looking for it. At best, Wikipedia is probably the most authoritative place that spells out Adobe Integrated Runtime.</p>
</blockquote>
<p>My project, <a href="http://feathersui.com/">Feathers</a> has a similar thing happening with its name. Some people call it FeathersUI. I have never called it that. The domain name does have &#8220;ui&#8221; in it, admittedly, because that&#8217;s the best one I could find. However, some people called it FeathersUI before that, which is fascinating because it basically came out of nowhere. Yes, it&#8217;s a UI library, but when the library&#8217;s author doesn&#8217;t call it that, where does one get the idea to add a little something extra on their own? Now, obviously, I understand that you might want to add a bit of context for people who are first encountering the project. I often say &#8220;Feathers UI components&#8221; or something like that when I feel that it&#8217;s helpful. But that&#8217;s different than making it a part of the name. Now, some library names might look nice with camel case naming, but man, FeathersUI just doesn&#8217;t look aesthetically pleasing. At least put a space in there. Blech!</p>
<p>Anyway, I&#8217;m not trying to criticize or make fun of anyone. In all seriousness, I&#8217;m completely fascinated how each person in the world bends language to his or her own desires, and I think that&#8217;s awesome. Sometimes I don&#8217;t understand why, but that&#8217;s part of the charm. The MAC and FLEX thing have always fascinated me, and I&#8217;ve always liked pointing it out and asking people, &#8220;have you noticed this?&#8221; and &#8220;I wonder why?&#8221; Now that it&#8217;s happened to something that I created, the observation has been just screaming to get out. So, if you&#8217;ve called it FeathersUI, instead of Feathers like I do, why? Did you read it from someone else? Did it just seem right to you, and you didn&#8217;t think to confirm it? Will you continue calling it that just to spite me? <img src='http://joshblog.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://joshblog.net/2012/10/11/on-names/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Get Feathers News and Links on Facebook</title>
		<link>http://joshblog.net/2012/10/10/get-feathers-news-and-links-on-facebook/</link>
		<comments>http://joshblog.net/2012/10/10/get-feathers-news-and-links-on-facebook/#comments</comments>
		<pubDate>Thu, 11 Oct 2012 02:11:48 +0000</pubDate>
		<dc:creator>Josh Tynjala</dc:creator>
				<category><![CDATA[Feathers]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://joshblog.net/?p=1408</guid>
		<description><![CDATA[Want to keep up to date with Feathers? Besides obsessively checking the commit log on Github, you can Like Feathers on Facebook. The Feathers Facebook page will be a low-traffic (no more than one post per day, probably more like once a week) news and cool links sort of thing. Big announcements will be there, [...]]]></description>
				<content:encoded><![CDATA[<p>Want to keep up to date with <a href="http://feathersui.com/">Feathers</a>? Besides obsessively checking the commit log on <a href="https://github.com/joshtynjala/feathers">Github</a>, you can <a href="https://www.facebook.com/feathersui">Like Feathers on Facebook</a>.</p>
<p>The <a href="https://www.facebook.com/feathersui">Feathers Facebook page</a> will be a low-traffic (no more than one post per day, probably more like once a week) news and cool links sort of thing. Big announcements will be there, obviously. Probably leading to a more detailed post here on my blog. However, I expect to most commonly post links to videos and websites for cool apps, games, or experiments that were built with Feathers.</p>
<p>For example, I&#8217;ve posted videos of two apps this week, including <a href="http://teleport.io">the beautifully-designed Teleport file-sharing app</a> that&#8217;s in development and a nice little <a href="http://vimeo.com/51147143">educational app by Martin Bjeld</a>. Here&#8217;s the video of the Teleport app:</p>
<p><iframe src="http://player.vimeo.com/video/51010861?title=1&amp;byline=1&amp;portrait=1" width="500" height="375" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>
<p><a href="http://vimeo.com/51010861">Teleport &#8211; User Interface Sneak Peek</a> from <a href="http://vimeo.com/teleportio">Teleport Team</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
<p>You can also <a href="https://twitter.com/joshtynjala">follow me on Twitter</a>, but you&#8217;ll also get my random opinions on tech news, Flash and Flex thoughts and questions (yes, I&#8217;m still working on legacy Flex apps for clients), and more mundane Feathers &#8220;I wrote some documentation today&#8221; sorts of things mixed in there too.</p>
<p>If you&#8217;re interested in only <a href="http://feathersui.com/">Feathers</a> specifically, and you might be looking for some cool stuff to show your boss if you need to convince him that Feathers and Starling are the right tools for the job, then <a href="https://www.facebook.com/feathersui">Like Feathers on Facebook</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://joshblog.net/2012/10/10/get-feathers-news-and-links-on-facebook/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>From Foxhole to Feathers</title>
		<link>http://joshblog.net/2012/09/19/from-foxhole-to-feathers/</link>
		<comments>http://joshblog.net/2012/09/19/from-foxhole-to-feathers/#comments</comments>
		<pubDate>Thu, 20 Sep 2012 02:06:09 +0000</pubDate>
		<dc:creator>Josh Tynjala</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[Components]]></category>
		<category><![CDATA[Feathers]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Source Code]]></category>

		<guid isPermaLink="false">http://joshblog.net/?p=1396</guid>
		<description><![CDATA[Ever since I started targeting Starling Framework for my open source user interface components, I&#8217;ve wanted the name of my project to more closely match the Starling brand. The name should reference birds in some way, but also have a deeper meaning associated with the purpose of the code. Allow me to reintroduce Feathers. A [...]]]></description>
				<content:encoded><![CDATA[<p>Ever since I started targeting <a href="http://starling-framework.org/">Starling Framework</a> for my open source user interface components, I&#8217;ve wanted the name of my project to more closely match the Starling brand. The name should reference birds in some way, but also have a deeper meaning associated with the purpose of the code. Allow me to reintroduce <a href="http://feathersui.com/">Feathers</a>.</p>
<blockquote><p>A bird&#8217;s feathers offer functional and aesthetic benefits similar to how UI controls enhance a graphics library.</p></blockquote>
<p>Along with the new name comes a number of great changes that help bring Feathers to the next level. The package structure has been simplified. <code>org.josht.starling.foxhole.controls.Button</code> is now <code>feathers.controls.Button</code>. Short and simple. It makes the documentation easier to read and cleans up everyone&#8217;s code a bit.</p>
<div class="previewimage"><a href="http://feathersui.com/"><img src="http://joshblog.net/wp-content/uploads/feathers-logo.jpg" alt="Feathers logo"></a></div>
<p>The <a href="http://wiki.starling-framework.org/feathers/start">Feathers Documentation</a> has moved to the official <a href="http://wiki.starling-framework.org/">Starling Wiki</a>. If you&#8217;re going to develop with Starling and Feathers, everything you need will now be found in one place. Daniel, Starling&#8217;s author, has been wonderfully supportive and I can&#8217;t thank him enough for being so generous and helpful. Not only with the wiki, but also the <a href="http://forum.starling-framework.org/forum/feathers">Feathers forum</a>. He&#8217;s led the Starling community with such positive enthusiasm, and I couldn&#8217;t be happier joining him in sharing code and interacting with all the great folks who use Starling.</p>
<div class="previewimage"><a href="http://feathersui.com/"><img src="http://joshblog.net/wp-content/uploads/feathers-groupedlist.jpg" alt="Screenshot of Feathers Grouped List component"></a></div>
<p>As part of this relaunch, I&#8217;ve also designed a new Feathers theme that I call <em>Metal Works</em>. I made it to match the website design of the new <a href="http://feathersui.com/">feathersui.com</a>. You can see it in action in the <a href="http://feathersui.com/examples/components-explorer/">Components Explorer example</a> that highlights many of the UI components that Feathers provides.</p>
<p>I&#8217;m looking forward to watching Starling and Feathers grow in the future. It&#8217;s been so long since I was excited about my work like this, and I love that I&#8217;m returning to component development with such enthusiasm. I hope you&#8217;ll take some time to try out <a href="http://feathersui.com/">Feathers</a> and let me know what you think. Happy coding!</p>
]]></content:encoded>
			<wfw:commentRss>http://joshblog.net/2012/09/19/from-foxhole-to-feathers/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>Foxhole UI Components for Starling Update</title>
		<link>http://joshblog.net/2012/08/17/foxhole-ui-components-for-starling-update/</link>
		<comments>http://joshblog.net/2012/08/17/foxhole-ui-components-for-starling-update/#comments</comments>
		<pubDate>Sat, 18 Aug 2012 00:43:23 +0000</pubDate>
		<dc:creator>Josh Tynjala</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[Components]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Source Code]]></category>

		<guid isPermaLink="false">http://joshblog.net/?p=1390</guid>
		<description><![CDATA[Not long ago, I introduced Foxhole for Starling, a library of user interface components built on the Starling Framework. Over the last couple of months, I&#8217;ve been working hard on Foxhole, and a ton of progress has been made on all fronts. Let&#8217;s look at a few noteworthy details. First of all, if you&#8217;re just [...]]]></description>
				<content:encoded><![CDATA[<p>Not long ago, I introduced <a href="https://github.com/joshtynjala/foxhole-starling">Foxhole for Starling</a>, a library of user interface components built on the <a href="http://starling-framework.org">Starling Framework</a>. Over the last couple of months, I&#8217;ve been working hard on Foxhole, and a ton of progress has been made on all fronts. Let&#8217;s look at a few noteworthy details.</p>
<p>First of all, if you&#8217;re just checking out Foxhole for the first time, or if you haven&#8217;t checked in on Foxhole&#8217;s progress in a while, take a look at <a href="https://github.com/joshtynjala/foxhole-starling/wiki/List-of-Features">Foxhole&#8217;s List of Features</a> to see what you can do with the components right now. I think you&#8217;ll find that Foxhole is a pretty powerful library for building UI in apps and games using the awesome hardware acceleration available in recent versions of the Flash runtimes. Foxhole is light, extensible, and especially great for mobile. If you have experience with Adobe Flex or with Flash Pro&#8217;s AS3 components, you&#8217;ll feel right at home with Foxhole.</p>
<p>Daniel recently <a href="http://gamua.com/blog/2012/08/starling-12/">released Starling 1.2</a>, and that means that Foxhole can start taking advantage of the new features in that version. I always try to keep Foxhole compatible with the current official release of Starling, and I&#8217;ve been anticipating some great updates in Foxhole&#8217;s internals to improve performance with Starling 1.2&#8242;s updates. Along with those enhancements, I also <a href="http://forum.starling-framework.org/topic/foxhole-heads-up-starling-12-support-and-new-text-renderers">added support for custom text renderers</a>. Previous versions of Foxhole supported bitmap fonts only, but now you can use a new renderer called <code>TextFieldTextRenderer</code> that creates a texture from a TextField to support embedded and device fonts in Foxhole components. You can even create your own custom text renderer, so the Text Layout Framework or something else based on Flash Text Engine could be used with Foxhole too.</p>
<p>I&#8217;ve been adding more and more tutorials to the <a href="https://github.com/joshtynjala/foxhole-starling/wiki">Foxhole Wiki</a> whenever I get a chance. Check out the updated <a href="https://github.com/joshtynjala/foxhole-starling/wiki/Getting-Started">Getting Started with Foxhole tutorial</a> which now follows along with the source code for the <a href="https://github.com/joshtynjala/foxhole-starling-examples/tree/master/HelloWorld">Foxhole HelloWorld example</a>. The <a href="https://github.com/joshtynjala/foxhole-starling/wiki/How-to-Use-ScreenNavigator">ScreenNavigator component</a> is an essential part of navigating between menus/screens in a mobile app or game, and its &#8220;How To&#8221; tutorial covers all of the important features. Finally, a detailed article explains the lifecycle and architecture of <a href="https://github.com/joshtynjala/foxhole-starling/wiki/Custom-Components">custom Foxhole components</a>. More tutorials and articles to come.</p>
<p>Because Foxhole has been gaining so much interest, Daniel added a new <a href="http://forum.starling-framework.org/forum/foxhole">Foxhole Sub-Forum</a> over at the official Starling forums. If you ever need any help with the components, I visit the forums many times a day, and I will be happy to answer any questions that you have. A number of Starling users are becoming very experienced with Foxhole too. I look forward to meeting more of the community there. Come join us. There&#8217;s a lot of excitement brewing around Starling and Foxhole. It&#8217;s a breath of fresh air, for sure.</p>
<p>Very exciting things are on the horizon for Foxhole. I&#8217;m looking forward to sharing more with you soon.</p>
]]></content:encoded>
			<wfw:commentRss>http://joshblog.net/2012/08/17/foxhole-ui-components-for-starling-update/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Foxhole mobile UI controls for Starling</title>
		<link>http://joshblog.net/2012/04/03/foxhole-mobile-ui-controls-for-starling/</link>
		<comments>http://joshblog.net/2012/04/03/foxhole-mobile-ui-controls-for-starling/#comments</comments>
		<pubDate>Wed, 04 Apr 2012 01:18:13 +0000</pubDate>
		<dc:creator>Josh Tynjala</dc:creator>
				<category><![CDATA[Components]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Source Code]]></category>

		<guid isPermaLink="false">http://joshblog.net/?p=1329</guid>
		<description><![CDATA[If you follow me on Twitter, you probably already heard all about my project, Foxhole for Starling. It&#8217;s a set of UI components built on Starling Framework. Though originally designed for my mobile games, I&#8217;m working hard on them every day to expand the capabilities for use in a wider variety of scenarios. A few [...]]]></description>
				<content:encoded><![CDATA[<p>If you <a href="http://twitter.com/joshtynjala">follow me on Twitter</a>, you probably already heard all about my project, <a href="https://github.com/joshtynjala/foxhole-starling/">Foxhole for Starling</a>. It&#8217;s a set of UI components built on <a href="http://starling-framework.org">Starling Framework</a>. Though originally designed for my mobile games, I&#8217;m working hard on them every day to expand the capabilities for use in a wider variety of scenarios.</p>
<div class="previewimage"><img src="http://flashtoolbox.com/foxhole-starling/showcase/images/rivers-of-olympus.jpg"><br />
<caption>A few Foxhole controls skinned for <a href="http://bowlerhatgames.com/mobile-games/rivers-of-olympus/">Rivers of Olympus</a></div>
<p>I released the source code a few weeks ago, with no documentation at all and only a brief mention in <a href="http://joshblog.net/2012/03/07/rivers-of-olympus-goes-starling/">the announcement</a> for my game, <a href="http://bowlerhatgames.com/mobile-games/rivers-of-olympus/">Rivers of Olympus</a>. Immediately, I received a number of requests for more info and general interest in giving the components a try. With the pressure on, I spent a week adding some much-needed features, creating some example code (including a skin, which I left out at first), and finally adding a little API documentation. Things have finally settled into a bit of stability, so I thought I&#8217;d make a more formal announcement of the <a href="https://github.com/joshtynjala/foxhole-starling/">Foxhole for Starling</a> project now.</p>
<p>Here are a number of important links to get you started:</p>
<ul>
<li>
<p><a href="https://github.com/joshtynjala/foxhole-starling">Github Repository</a></p>
</li>
<li>
<p><a href="https://github.com/joshtynjala/foxhole-starling/wiki">Wiki and Tutorials</a></p>
</li>
<li>
<p><a href="http://flashtoolbox.com/foxhole-starling/examples/kitchen-sink/">In-Browser Demo of the Kitchen Sink Example</a></p>
</li>
<li>
<p><a href="http://flashtoolbox.com/foxhole-starling/examples/layout-explorer/">In-Browser Demo of the Layout Explorer Example</a></p>
</li>
<li>
<p><a href="https://github.com/joshtynjala/foxhole-starling-examples">Example Projects and Skins</a></p>
</li>
<li>
<p><a href="http://www.flashtoolbox.com/foxhole-starling/documentation/">API Documentation</a></p>
</li>
<li>
<p><a href="https://github.com/joshtynjala/foxhole-starling/issues">Bugs and Feature Requests</a></p>
</li>
<li>
<p><a href="http://forum.starling-framework.org/forum/foxhole">Official Foxhole section on Starling Forum</a></p>
</li>
</ul>
<p>Please don&#8217;t hesitate to send feedback. I&#8217;ve been having a ton of fun working on <a href="https://github.com/joshtynjala/foxhole-starling/">Foxhole for Starling</a>, and I&#8217;d love to continue making it better for everyone. Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://joshblog.net/2012/04/03/foxhole-mobile-ui-controls-for-starling/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Nurturing and maintaining a relationship with a big corporation while choosing the best paths for your own needs and interests</title>
		<link>http://joshblog.net/2012/03/27/nurturing-and-maintaining-a-relationship-with-a-big-corporation-while-choosing-the-best-paths-for-your-own-needs-and-interests/</link>
		<comments>http://joshblog.net/2012/03/27/nurturing-and-maintaining-a-relationship-with-a-big-corporation-while-choosing-the-best-paths-for-your-own-needs-and-interests/#comments</comments>
		<pubDate>Wed, 28 Mar 2012 06:46:42 +0000</pubDate>
		<dc:creator>Josh Tynjala</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[Corona]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Sencha]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://joshblog.net/?p=1316</guid>
		<description><![CDATA[For a while, a couple years ago, my games seemed to be mentioned constantly by Adobe. Kevin Lynch even demoed Chroma Circuit for a minute or so on stage at Adobe MAX one year. I was in a perfect position, as Adobe was starting to change focus to gaming and video (though, I think they [...]]]></description>
				<content:encoded><![CDATA[<p>For a while, a couple years ago, my games seemed to be mentioned constantly by Adobe. Kevin Lynch even demoed <a href="http://bowlerhatgames.com/mobile-games/chroma-circuit/">Chroma Circuit</a> for a minute or so on stage at Adobe MAX one year. I was in a perfect position, as Adobe was starting to change focus to gaming and video (though, I think they hadn&#8217;t fully committed to the change yet). Many of Adobe&#8217;s evangelists and other community figures knew me from my time building components and rich apps. Since I was new to indie games, they took an interest and helped me out by mentioning me in all the right places.</p>
<p>As the non-Flash tech community gained strength in arguments against Flash (after getting a major ego boost from Steve Jobs&#8217; famous <a href="http://www.apple.com/hotnews/thoughts-on-flash/">Thoughts of Flash</a> letter), I knew right away that Flash&#8217;s future would be changing. I spent a number of months exploring other, often competing, technologies. This included a look at HTML5 and JavaScript, <a href="http://www.anscamobile.com/">Corona</a>, and most recently, <a href="http://www.sencha.com/">Sencha</a> (which, I&#8217;ll say, confidently, is definitely the best web standards replacement for Flex that&#8217;s available today). Not long after, things got quieter on the Adobe front. I was still using Adobe AIR to build games, but I also talked a lot about the competition. I don&#8217;t know if this was an intentional reaction to my change in loyalty, or if my Flash work was simply less exciting. I&#8217;ll freely admit that a few semi-generic casino games that I built during that time aren&#8217;t exactly sexy demo material. Either way, the difference was obvious.</p>
<p>Still, though, I feel like my explorations of other technologies really made a difference in making Adobe technology better. I happened to receive a free one-year subscription to Corona about a year ago, and I took advantage of that time to really kick the tires. It resulted in <a href="http://joshblog.net/2011/05/13/adventures-with-corona-part-1-what-corona-offers-thats-better-than-adobe-air/">several blog posts</a> that <a href="http://joshblog.net/2011/05/16/adventures-with-corona-part-2-where-corona-needs-improvement/">compared and contrasted</a> the capabilities of Corona and AIR. A couple of the posts were <a href="http://joshblog.net/2011/10/05/corona-versus-air-again-where-corona-falls-behind/">in favor of AIR</a> while a couple were <a href="http://joshblog.net/2011/08/19/corona-continues-to-add-essential-features-ahead-of-air/">more critical</a>. Most importantly, to me, the things I was most critical about have actually been improved in AIR in the time since I wrote those posts. Captive runtime and native extensions, in particular, are really removing old boundaries that made AIR less appealing (now if only captive runtime file size were smaller). I won&#8217;t claim that I had a big part in that. I was just once voice among many who were looking for a better experience with AIR. Regardless, it&#8217;s awesome to see things move in the direction that I asked for them to go.</p>
<p>Ultimately, I still somewhat feel like my relationship with Adobe is a little less warm than it was before. I&#8217;ll take that, proudly even, because I also feel like I helped in some way by finally deciding to provide some proper negative feedback when it was needed. In years past, I was less likely to speak up (but I was less likely to know what I really needed, as well). These days, it&#8217;s usually more clear to me what&#8217;s missing or what isn&#8217;t ideal. If I need something today, I&#8217;ll say it loudly, with more urgency, and less gently. I don&#8217;t want to wait years (or even months) for new features, and I don&#8217;t want to work around the same old issues over and over again in that time. Maybe that&#8217;s asking for a lot, but I just want to get the job done and make great apps and games.</p>
<p>Anyway, my thoughts tonight ultimately came about because I discovered that my game, <a href="bowlerhatgames.com/mobile-games/rivers-of-olympus/">Rivers of Olympus</a> (you can read about how <a href="http://joshblog.net/2012/03/07/rivers-of-olympus-goes-starling/">I converted it to Starling</a>), was mentioned as part of <a href="http://blogs.adobe.com/digitalmedia/2012/03/adobe-introduces-premium-features-for-gaming-with-flash-player-11-2-announces-collaboration-with-unity-technologies-2/">Adobe&#8217;s Flash Player 11.2 and AIR 3.2 announcements</a> (including the fascinating announcement of <a href="http://www.adobe.com/go/fpl">premium Flash Player features</a>). I didn&#8217;t know that they would be mentioning my game, and it&#8217;s great to see a little nod from my old ally again after so long. Even after many attempts to explore alternatives to the Flash platform, I keep choosing AIR to build my games, and I still feel most at home calling myself a Flash developer. I recently created the <a href="https://github.com/joshtynjala/foxhole-starling">Foxhole for Starling</a> project, a set of mobile UI components build on <a href="http://www.starling-framework.org/">Starling</a>, and I feel like it has reinvigorated my interest in Flash and AIR. It&#8217;s been so awesome to see the community show a lot of curiosity in my work too.</p>
<p>I felt very conflicted when I realized that Flash&#8217;s future was changing (even before all of Adobe&#8217;s big announcements about Flex, mobile Flash Player, and everything else at the end of last year). It became harder as my expectations on the matter were met (and so abruptly). Now, though, I&#8217;m feeling like I can confidently keep <a href="http://gaming.adobe.com/">using Flash and AIR to build games</a> while also <a href="http://www.sencha.com/">transitioning elsewhere</a> for other work. I almost wish this had all happened earlier, so that I wouldn&#8217;t have had to ride the crazy waves for so long. Either way, I&#8217;m glad that I finally feel at peace with all that has happened in the last year and more. I&#8217;m looking forward to my next adventures too.</p>
]]></content:encoded>
			<wfw:commentRss>http://joshblog.net/2012/03/27/nurturing-and-maintaining-a-relationship-with-a-big-corporation-while-choosing-the-best-paths-for-your-own-needs-and-interests/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rivers of Olympus Goes Starling</title>
		<link>http://joshblog.net/2012/03/07/rivers-of-olympus-goes-starling/</link>
		<comments>http://joshblog.net/2012/03/07/rivers-of-olympus-goes-starling/#comments</comments>
		<pubDate>Thu, 08 Mar 2012 00:17:14 +0000</pubDate>
		<dc:creator>Josh Tynjala</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Games]]></category>

		<guid isPermaLink="false">http://joshblog.net/?p=1293</guid>
		<description><![CDATA[Adobe AIR 3.2 adds the much anticipated Stage 3D to mobile apps. With this comes the ability to use Starling, a great little 2D library built on Stage 3D that closely matches the APIs of the classic Flash Player display list. I&#8217;ve been looking for a reason to learn Starling, and I take learning seriously, [...]]]></description>
				<content:encoded><![CDATA[<p>Adobe AIR 3.2 adds the much anticipated <a href="http://www.adobe.com/devnet/flashplayer/stage3d.html">Stage 3D</a> to mobile apps. With this comes the ability to use <a href="http://starling-framework.org/">Starling</a>, a great little 2D library built on Stage 3D that closely matches the APIs of the classic Flash Player display list. I&#8217;ve been looking for a reason to learn Starling, and I take learning seriously, so that means throwing myself head-first into the development of a complete, real app using Starling. As of today, <a href="http://bowlerhatgames.com/mobile-games/rivers-of-olympus/">Rivers of Olympus</a>, my tile-matching game with similarities to Mahjong solitaire, is available on <a href="http://itunes.apple.com/us/app/rivers-of-olympus/id484647992?mt=8">iOS (universal iPad and iPhone)</a>, <a href="https://play.google.com/store/apps/details?id=air.com.bowlerhatgames.mobile.RiversOfOlympus">Android</a>, <a href="http://www.amazon.com/Bowler-Hat-Games-Rivers-Olympus/dp/B006LBGV7S">Amazon Kindle Fire</a>, along with the <a href="http://www.barnesandnoble.com/w/rivers-of-olympus-bowler-hat-games/1107726837">NOOK Tablet and Color</a>. All these versions use Starling and AIR 3.2 captive runtime.</p>
<div class="previewimage"><a href="http://bowlerhatgames.com/mobile-games/rivers-of-olympus/"><img src="http://joshblog.net/wp-content/uploads/rivers.jpg" alt="Screenshot of Rivers of Olympus"></a></div>
<p>Note: Until RIM adds Stage 3D support, I cannot deploy the Starling version to the BlackBerry PlayBook. The non-Starling version is still <a href="http://appworld.blackberry.com/webstore/content/81292/?lang=en">available on PlayBook</a>.</p>
<h4>UI Controls</h4>
<p>My task for the conversion from classic display list consisted of two major parts. First, I needed to make my personal library of mobile UI controls run on Starling. These older &#8220;Foxhole&#8221; controls were built on <code>fl.core.UIComponent</code> included with Flash Professional. However, in Starling, I needed to start with a new base class. This meant either porting <code>UIComponent</code> over to Starling or starting from scratch with something simpler.</p>
<p>I decided to start from scratch and personalize things. In particular, I ripped out the styling system and made all styles in the Starling version into regular getters and setters. This gives me stronger typing and keeps code from getting too messy with all the magic strings that Adobe&#8217;s style managers often use. I should be able to build some sort of external style manager that injects styles into each component as they&#8217;re added to the display list, if I ever need something like that. For now, it hasn&#8217;t been too important. I also simplified the invalidation mechanisms to ensure that all components validate completely each frame. In general, the depth of nesting isn&#8217;t too extreme, so I feel pretty safe working like that.</p>
<p>The new <a href="https://github.com/joshtynjala/foxhole-starling">Foxhole for Starling</a> mobile UI controls are now on Github. They&#8217;re severely lacking in documentation and examples (in other words, there are none). They&#8217;re without a default skin too, so some assembly is required. Maybe someone will find them useful, though. I wish I could take some time off to polish them up a bit more for general usage.</p>
<p><strong>Edit:</strong> I put together a <em>very</em> basic <a href="https://github.com/joshtynjala/foxhole-starling/wiki/Getting-Started">Getting Started</a> page on the Github wiki. For the curious, it simply shows how to create a Foxhole Button control.</p>
<h4>The Rest of the Game</h4>
<p>Working on Foxhole for Starling was relatively easy, and I could mostly focus on each component in isolation. However, converting a full game&#8217;s codebase to Starling was a more daunting task. Not only did I have the basic Starling conversion of the display list (including changing all text to bitmap fonts), I also had to update the code to use the new APIs in the updated Foxhole controls. This left me working through compile errors one by one, with no ability to run my code for a couple of days. That&#8217;s a new and scary experience for me. I&#8217;m used to constantly running my code to verify that things are working, and even very ambitious refactoring will give me something I can run (even if buggy) within a couple of hours. Once I finally got it to compile, I ran into immediate runtime errors, so I spent more time tracking down each one until I could get a title screen or something displayed. Since the new Starling-based UI controls were still not fully tested, all this work took much longer, and I found myself switching between both codebases to fix bugs in each.</p>
<p>Overall, the full conversion, including both UI controls and the game itself took about a week, including heavy testing to be sure that I didn&#8217;t introduce any new bugs from the differences between the old and new renderers. With the UI controls stabilized now, and more experience in the steps required to do an ambitious conversion like this, I think I can finish the next game in about 3-4 full working days. It&#8217;s still not as simple as changing imports from <code>flash.*</code> to <code>starling*</code>, but it would be a lot worse if I were using a 2D framework that didn&#8217;t match the classic display list so closely. I cannot stress enough how nice it is that Starling matches the display list. Learning is easier, and if you need to convert existing code, it helps so much.</p>
<h4>Starling Performance</h4>
<p>Starling running on Stage 3D is obviously visually smoother than renderMode gpu in my games. Most devices I tested on were consistently running at over 30 frames per second, with many close to 60. Choppy framerates and hiccups, which can be all too common with renderMode gpu, already feel like a thing of the past. My games aren&#8217;t super intense, but this seems like a pretty significant improvement that will greatly increase what AIR mobile developers are able to do, especially on some older devices.</p>
<p>That isn&#8217;t to say that Starling removes all performance issues. In particular, very slow devices like the NOOK Color still needed some optimization to make things run smoothly. There seems to be a threshold where very, very slow devices have a slightly harder time with Starling than renderMode gpu, if you don&#8217;t do some basic optimizations, and then everything else gets a beautiful performance boost even without those improvements.</p>
<p>During testing, I found that the NOOK Color seemed to be rendering somewhat faster than it did with renderMode gpu, but touch events in particular where lagging way behind. I was uploading textures straight from PNGs for basically every single display object, like individual, separate button states. All the textures were staying on the GPU, but swapping between them all became a bottleneck. I needed to combine all my game&#8217;s images into a single 2048&#215;2048 texture atlas to fix this. Even after that, if I created a single separate Quad (single-color rectangle) somewhere on the stage, the performance would drop significantly. If I wanted to display the framerate, I had to rewrite parts of <a href="http://forum.starling-framework.org/topic/starling-port-of-mrdoobs-stats-class">this port of mr. doob&#8217;s Stats class</a> so that the bitmap font and background would come from my atlas instead of using their own separate textures. It was a little frustrating, but the result was that the game ended up being more responsive than the previous version.</p>
<p>To be clear, these optimizations only applied as requirements on the NOOK Color, and an equally-underpowered Motorola Droid 1, among my various test devices. The original unoptimized code worked flawlessly on the Nexus One, Nexus S, NOOK Tablet, Kindle Fire, iPad 1, and iPhone 3GS. Several of those devices couldn&#8217;t keep up with 30fps in renderMode gpu (but were &#8220;good enough&#8221;), but all were running above 30fps with Starling. The best didn&#8217;t quite reach 60fps, like my PC, but a few were in the low to mid-50s consistently, even during tweens that changed the entire screen every frame.</p>
<h4>Come on in, Starling</h4>
<p>Any game I make with AIR for mobile (and probably Flash Player, but I&#8217;m pretty focused on apps these days) from now on will use Starling, for sure. In fact, the performance improvement feels so good that I wish I had the time to port all of my existing games over to Starling. I doubt I would see enough improvements in sales to make it worth my while, though. Still, maybe I&#8217;ll have the occasional weekend afternoon to catch up on all that over time. If you&#8217;re developing 2D apps for mobile with Adobe AIR, I highly recommend checking out Starling or another 2D framework built on Stage 3D. Between Stage 3D and captive runtime, AIR is finally getting close to a &#8220;perfect&#8221; rich mobile app solution for my needs. Now if only Adobe offered a way to remove parts of the captive runtime to decrease the final binary size. There&#8217;s always just one more thing you wish were better, no matter what technology you use.</p>
<div class="previewimage"><a href="http://bowlerhatgames.com/mobile-games/rivers-of-olympus/"><img src="http://joshblog.net/wp-content/uploads/icon128.png" alt="Icon for Rivers of Olympus"></a><br />
<caption>Mentioned above: <a href="http://bowlerhatgames.com/mobile-games/rivers-of-olympus/">Rivers of Olympus</a></caption>
</div>
]]></content:encoded>
			<wfw:commentRss>http://joshblog.net/2012/03/07/rivers-of-olympus-goes-starling/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Indie Game Development 2012: A Look At My Third Year</title>
		<link>http://joshblog.net/2012/01/24/indie-game-development-2012-a-look-at-my-third-year/</link>
		<comments>http://joshblog.net/2012/01/24/indie-game-development-2012-a-look-at-my-third-year/#comments</comments>
		<pubDate>Tue, 24 Jan 2012 19:16:46 +0000</pubDate>
		<dc:creator>Josh Tynjala</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[Corona]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://joshblog.net/?p=1266</guid>
		<description><![CDATA[At the end of 2010, I finished the year feeling a little underwhelmed. I earned less from game development in 2010 than I had in 2009&#8212;the year I started my indie adventure. I hadn&#8217;t found much success in mobile, and I was hoping to take a different approach in 2011. For some reason, I didn&#8217;t [...]]]></description>
				<content:encoded><![CDATA[<p>At the end of 2010, I finished the year feeling <a href="http://joshblog.net/2011/01/17/indie-flash-game-developer-2010-revenue/">a little underwhelmed</a>. I earned less from game development in 2010 than I had in <a href="http://joshblog.net/2010/01/04/indie-flash-game-development-a-2009-year-end-retrospective/">2009</a>&mdash;the year I started my indie adventure. I hadn&#8217;t found much success in mobile, and I was hoping to take a different approach in 2011. For some reason, I didn&#8217;t quite get around to that, though. 2011 became another year of mobile exploration, with some successes that make me pretty happy. Yet, the final numbers totaled up to almost exactly the same as last year&#8217;s earnings. Still, I&#8217;m a little more optimistic this time around because the underlying trend shows an encouraging shift in the right direction.</p>
<h4>The Breakdown</h4>
<p>In total, I earned $21,551 from game development in 2011. This includes mobile device game sales, non-exclusive licensing of Flash games to portals, ad revenue from free Flash games, and a couple of small game-related freelance projects (short-term contract work). As always, I&#8217;m sharing only my earnings as a game developer. I also work on a variety of other freelance projects throughout the year that are mostly <abbr title="Rich Internet Applications">RIAs</abbr>, and I sell an educational app called <a href="http://logic.ly/">Logicly</a>.</p>
<div class="previewimage"><img src="http://joshblog.net/wp-content/uploads/bowler-hat-games-all-revenue-2011.png" alt="Chart of 2011 Revenue, By Type" width="240" height="300"></div>
<p>Let&#8217;s start by comparing the differences in the percentage breakdown from last year to this year. Last year, freelance work brought in 79% of my game development revenue. In other words, the vast majority of my earnings came from working on games for other people. That doesn&#8217;t exactly matching my goal of eventually going totally independent (or nearly so). This year, freelance work dropped to 14% (again, this is for game development only. RIA freelance projects still make up the majority of my total income). Mobile game sales went in the opposite direction from a mere 8% last year up to 80% in 2011. In spite of total earnings staying nearly the same from year to year, I&#8217;ve seen a major shift in <em>what</em> is earning me money, and it grew significantly.</p>
<h4>The Best App Stores</h4>
<p>Next, let&#8217;s take a look at why my mobile game sales increased so strongly. Seeing which app stores performed best should make it particularly obvious:</p>
<div class="previewimage"><img src="http://joshblog.net/wp-content/uploads/bowler-hat-games-app-stores-revenue-2011.png" alt="Chart of 2011 Revenue, By App Store" width="240" height="300"></div>
<p>The device that deserves to be in the spotlight is the <a href="http://www.barnesandnoble.com/nook">NOOK Color (and now the NOOK Tablet too)</a> from Barnes &#038; Noble. As you can see, NOOK apps make up 90% of my app sales. It seems to be kind of a dark horse in the app store world. I think most mobile developers don&#8217;t know about the NOOK store, or they haven&#8217;t given it a fair look. NOOK readers are very willing to pay for e-books, or they probably wouldn&#8217;t have bought the NOOK. I took a peek at some of my favorite novels, and they sell for at least 7 or 8 bucks a piece. An extra 50% or more for newer releases. Compared to that, an app that sells for 2 to 4 dollars is no big deal. This is an audience that seems to be even more willing to spend money than iOS users&mdash;at least in my experience so far.</p>
<p>NOOK sales brought in over ten times more than iOS sales, while the Android Market and the BlackBerry PlayBook both got lost miles behind. Neither of those two earned over $200 (although, full disclosure, two of my games aren&#8217;t yet out on Android Market and one isn&#8217;t on PlayBook yet). The Amazon Appstore for Android didn&#8217;t even make the cut. I hadn&#8217;t earned enough to get a check in the mail from them by the end of 2011. However, Christmas sales of the Kindle Fire must have been halfway decent. App sales finally started trickling in from Amazon around Christmas. At the moment, my Amazon sales are comparable to my iOS sales. If I were to limit myself to three stores, it looks like NOOK, Amazon, and iOS come out on top, with NOOK being the absolute first priority.</p>
<blockquote><p>Update February 10, 2012: Amazon sales are still going strong, and they&#8217;re typically better than iOS on most days. Still not as high as NOOK sales, but Amazon is now number 2. Moreover, the PlayBook seems to be doing better now too, and iOS is pretty much in fourth place. Funny how things can change so dramatically, and also a sign that focusing on new and smaller app stores can be a good choice for indies without much marketing budget or experience.</p>
</blockquote>
<h4>Everything Else</h4>
<p>Other revenue either came from small projects, like some portals that wanted an older Flash game site-locked or quick freelance projects that took no more than a day. Nothing significant, but a quick buck here and there for very little effort. To my surprise, ad renveue from MochiAds, MindJolt, and Google AdSense is still coming in. Ads earned me enough to pay my bills for about a month, and I did all the work to make that happen 1-2 years ago. This ad revenue won&#8217;t last forever, but it&#8217;s nice to have it while it lasts.</p>
<h4>Into 2012</h4>
<p>The huge jump in sales thanks to NOOK is awesome, and I hope to continue exploring this platform and finding apps that resonate with its unique audience. However, each new release was just a little bit less successful. I was lucky to get in at the very beginning when the number of apps was well under 1,000. As with the iOS gold rush, it was easy to get recognized by potential users because you couldn&#8217;t drowned out by everyone else clamoring for attention. Thankfully, as with the Amazon Appstore, NOOK sales spiked on Christmas, and they still haven&#8217;t completely dropped back down. There&#8217;s still a little time to enjoy the benefits of being an early developer.</p>
<p>My first game, Chroma Circuit, is my absolute favorite of my creations. It wasn&#8217;t the very best seller, but the fans it found have some real enthusiasm that is inspiring, and I hope I can find more of them. I&#8217;ve been working to release a huge new content update for quite some time, actually. Several new elements are all coded up. Some rotate like the others. Some slide around instead. They&#8217;re fun new additions and there are a lot of little animations and things that add to the aesthetic experience that I didn&#8217;t have the time/brainspace to add when I first released Chroma Circuit three years ago. The biggest barrier now is building new levels. I built a great little visual level editor (unlike the original version, which had hand-coded XML!), but it&#8217;s still a time consuming process, and I don&#8217;t want to release anything until I have over 100 levels. I&#8217;m at about 60 now, and I think I&#8217;m going to set some daily or weekly goals to get me over the last hill and to the finish line.</p>
<p>Other than that, I don&#8217;t have many other concrete plans for the new year. I mainly want to continue releasing games that can sell decently as NOOK apps. Whether they&#8217;re unique games like Chroma Circuit, or more generic ones like Sweet Shop Slots and Rivers of Olympus, I&#8217;m willing to explore both directions. I&#8217;d like to stick to shorter projects that don&#8217;t go longer than a month or so, and then I can see if a bigger collection of games can create the foundation on which I can become more and more independent. If some turn into real hits, even better, but I&#8217;ll be happy with small and modest successes.</p>
]]></content:encoded>
			<wfw:commentRss>http://joshblog.net/2012/01/24/indie-game-development-2012-a-look-at-my-third-year/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Stop dwelling. Look forward.</title>
		<link>http://joshblog.net/2011/12/02/stop-dwelling-look-forward/</link>
		<comments>http://joshblog.net/2011/12/02/stop-dwelling-look-forward/#comments</comments>
		<pubDate>Sat, 03 Dec 2011 05:18:06 +0000</pubDate>
		<dc:creator>Josh Tynjala</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://joshblog.net/?p=1263</guid>
		<description><![CDATA[Developers around me have recently begun to look more closely at the fuzzy area where one should choose HTML/CSS/JS over Flash for rich browser content. Unfortunately, conversations on the topic have a tendency to get derailed almost immediately because features like Canvas, and even the whole JavaScript language, get dismissed entirely by a vocal few. [...]]]></description>
				<content:encoded><![CDATA[<p>Developers around me have recently begun to look more closely at the fuzzy area where one should choose HTML/CSS/JS over Flash for rich browser content. Unfortunately, conversations on the topic have a tendency to get derailed almost immediately because features like Canvas, and even the whole JavaScript language, get dismissed entirely by a vocal few. When that happens, everyone heads off on a tangent to argue a couple points, and then the conversation pretty much ends. Without a clear winner, the dismissal becomes the defacto conclusion and further exploration within the group is halted, at least temporarily.</p>
<p>We&#8217;re all aware that certain options may be technically or aesthetically inferior. Yet, we can&#8217;t improve the situation without getting our hands dirty. Rather than preach to the choir, we should be providing clear, visible evidence of where web standards (or implementations of the standards) need improvement. We should be creating publicly visible works that push the limits of the browser as it exists today, even if doing so requires the nastiest of workarounds. In fact, finding those workarounds should be a priority because I want us to be able to point to them and say, &#8220;Hey browser vendors: I made this, and users love it, but check out this code that&#8217;s going to make you want to puke  (or this overworked CPU, or excessive memory, or whatever). You need to fix that.&#8221; By showing truly compelling projects that can hit barriers and raise awareness of web development pain points that anyone can see, I think we&#8217;ll find that browser vendors can be far more agile than some people assume.</p>
<p>The open web community has been calling out Flash for many years, whether their arguments were accurate or not. Now that they&#8217;ve &#8220;won&#8221; for certain use-cases, I think that it&#8217;s time for the tables to turn, but in a more productive way. Targeted and actionable feedback, measurable data, along with impressive content will do much more to improve the web than complaining that we miss the good old days. Our jobs may not be as fun at first, but wouldn&#8217;t you rather make it better sooner than later?</p>
]]></content:encoded>
			<wfw:commentRss>http://joshblog.net/2011/12/02/stop-dwelling-look-forward/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.441 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2013-05-24 21:00:09 -->

<!-- Compression = gzip -->