<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Flexuous &#187; Uncategorized</title>
	<atom:link href="http://blog.flexuous.com/category/uncategorized/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.flexuous.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Wed, 14 Dec 2011 16:20:32 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='blog.flexuous.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Flexuous &#187; Uncategorized</title>
		<link>http://blog.flexuous.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blog.flexuous.com/osd.xml" title="Flexuous" />
	<atom:link rel='hub' href='http://blog.flexuous.com/?pushpress=hub'/>
		<item>
		<title>What does [Bindable] mean in ActionScript?</title>
		<link>http://blog.flexuous.com/2011/03/07/what-does-bindable-mean-in-actionscript/</link>
		<comments>http://blog.flexuous.com/2011/03/07/what-does-bindable-mean-in-actionscript/#comments</comments>
		<pubDate>Mon, 07 Mar 2011 17:20:59 +0000</pubDate>
		<dc:creator>justinohms</dc:creator>
				<category><![CDATA[AIR (Adobe Integrated Runtime)]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[StackOverflow]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Bindable]]></category>
		<category><![CDATA[Data Binding]]></category>
		<category><![CDATA[flash builder 4]]></category>
		<category><![CDATA[flexbuilder]]></category>
		<category><![CDATA[mxml]]></category>

		<guid isPermaLink="false">http://blog.flexuous.com/?p=216</guid>
		<description><![CDATA[I&#8217;ve been hanging out a bit lately over at Stack Overflow answering questions, earning badges, etc.  I love to find older questions that have incomplete answers or answers that could be expounded upon.   Here is the latest question I &#8230; <a href="http://blog.flexuous.com/2011/03/07/what-does-bindable-mean-in-actionscript/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.flexuous.com&amp;blog=3072563&amp;post=216&amp;subd=flexuous&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been hanging out a bit lately over at Stack Overflow answering questions, earning badges, etc.  I love to find older questions that have incomplete answers or answers that could be expounded upon.   Here is the latest question I wrote an answer for.</p>
<p><strong><em>What does [Bindable] mean in ActionScript?</em></strong></p>
<p>You can either read my answer here or <a title="What does [Bindable] mean in ActionScript" href="http://stackoverflow.com/questions/3959546/what-does-bindable-mean-in-actionscript/5183839#5183839" target="_blank">over on Stack Overflow</a>.</p>
<hr />
<p><strong>[Bindable]</strong> is a one of several meta tags that you can use in flex ActionScript code. It can be applied to properties, or methods that are marked in any scope. It cannot be used with static class members.</p>
<p>The key to useing the <strong>[Bindable]</strong> meta tag is understanding what is going on under the hood when you use it. Essentially using data binding is a type of short hand for adding event listeners and dispatching events.</p>
<p>There are two basic forms of the <strong>[Bindable]</strong> tag. The first is just <strong>[Bindable]</strong> followed by a var/property declaration. The Second is <strong>[Bindable(event="eventname")]</strong> followed by either a var/property declaration, a function/method declaration or one half of a getter/setter declaration.</p>
<p>I&#8217;ll explain the longer notation first since the other builds on the same concept but with even more short hand.</p>
<p><span id="more-216"></span></p>
<p>When you use <strong>[Bindable(event="eventname")]</strong> you are essentially telling the compiler that this var/property/function/method (call this the instance member) is &#8216;available&#8217; to be used as the source for data binding. You are also telling it that when the value of the instance member has been invalidated/changed and it needs to be re-read that the &#8220;eventname&#8221; event will be dispatched.<br />
In this longer form this all you are doing. You the developer are responsible for actually dispatching the &#8220;eventname&#8221; event whenever the value needs to be updated in the binding subscribers.</p>
<p>The real efficiency of using data binding comes on the subscribing side. The typical notation you will see in MXML is <strong>value=&#8221;{instance.propertyName}&#8221;</strong> When you use the notation <strong>{ }</strong> you are telling the compiler to do the following:</p>
<ol>
<li>Create an event listener that listens to the event named in the bindable meta tag</li>
<li>In that event listener re-read the instance.propertyName and update this value</li>
</ol>
<p>If you use the shorter form <strong>[Bindable]</strong>, and you add the tag before a property/var, the compiler fills in the blanks and adds some additional functionality to make the property bindable. Essentially you are telling the compiler <em>&#8220;add the events and methods you need to make this property bindable&#8221;</em><br />
Now the way to think of what the compiler will do under the hood is this.</p>
<ol>
<li>make a private version of your var</li>
<li>create an &#8220;event&#8221; to trigger the binding</li>
<li>create a getter function with scope and name of your original var that returns the private verson of the var when called.</li>
<li>create a setter function with scope and name of your original var that sets the private version of the var when called AND dispatches the triggering event.</li>
</ol>
<p>In essence the compiler will do much of the work for you.</p>
<p><pre class="brush: as3;">
[Bindable]
public var xyz
</pre></p>
<p>is equivalent to</p>
<p><pre class="brush: as3;">
private var _xyz:String;

[Bindable(event=&quot;updateXYZValue&quot;)]
public function get xyz():String{
return _xyz;
}

public function set xyz(newxyz:String):void{
_xyz = newxyz;
dispatchEvent(new Event(&quot;updateXYZValue&quot;));
}
</pre></p>
<p>The only functional differences in these is that in the first instance;</p>
<ol>
<li>you do not know the name of the event that will be dispatched to trigger the binding</li>
<li>there is no way to update the underlying value <em>without</em> triggering the data binding</li>
</ol>
<p>This second example also demonstrates one special case of the <strong>[Bindable]</strong> meta tag. This is that when you are applying it to a getter/setter pair defined for the same variable name you need only apply it to one or the other, it will apply to both. Typically you should set it on the getter.</p>
<p>You can use either notation on a function/method however if you do not specify an event the binding will never be triggered so if you are trying to bind to a function you should alway specify an event. It is also possible to specify more than one triggering event by stacking the tag. eg.</p>
<p><pre class="brush: as3;">
[Bindable(event=&quot;metaDataChanged&quot;)]
[Bindable(event=&quot;metaObjectUpdated&quot;)]
public function readMyMetaData():MetaDataObject{
var myMetaDataObject:MetaDataObject;
.
.
.

return myMetaDataObject;
}

</pre></p>
<p>This would presume that somewhere else you your class you will dispatch this <em>metaDataChanged</em> event or the <em>metaObjectUpdated</em> event when you want trigger the binding.</p>
<p>Also note that with this notation you can tie the binding of any instance member to any event that the instance will dispatch. Even inherited events that you yourself do not generate such as FrameEnter, OnChange, etc&#8230;</p>
<p>Data bindings can also be setup and destroyed during runtime. If you are interested in this take a look at the mx.binding.utils classes.</p>
<p><a href="http://stackoverflow.com/questions/3959546/what-does-bindable-mean-in-actionscript/5183839#5183839">http://stackoverflow.com/questions/3959546/what-does-bindable-mean-in-actionscript/5183839#5183839</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flexuous.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flexuous.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flexuous.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flexuous.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flexuous.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flexuous.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flexuous.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flexuous.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flexuous.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flexuous.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flexuous.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flexuous.wordpress.com/216/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flexuous.wordpress.com/216/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flexuous.wordpress.com/216/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.flexuous.com&amp;blog=3072563&amp;post=216&amp;subd=flexuous&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.flexuous.com/2011/03/07/what-does-bindable-mean-in-actionscript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/265f8fef23f99b7192248b37c2c584ac?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">justinohms</media:title>
		</media:content>
	</item>
		<item>
		<title>Flex/Flash Builder localization configuration</title>
		<link>http://blog.flexuous.com/2010/09/08/flexflash-builder-localization-configuration/</link>
		<comments>http://blog.flexuous.com/2010/09/08/flexflash-builder-localization-configuration/#comments</comments>
		<pubDate>Wed, 08 Sep 2010 22:14:19 +0000</pubDate>
		<dc:creator>justinohms</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.flexuous.com/?p=141</guid>
		<description><![CDATA[In addition to the localization strings that you can add, the underlying Flex framework needs to be localized in order to format numbers, dates, currency etc.    (think of the days of the week on a calendar control, or the &#8230; <a href="http://blog.flexuous.com/2010/09/08/flexflash-builder-localization-configuration/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.flexuous.com&amp;blog=3072563&amp;post=141&amp;subd=flexuous&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>In addition to the localization strings that you can add, the underlying Flex framework needs to be localized in order to format numbers, dates, currency etc.    (think of the days of the week on a calendar control, or the decimal separator for currency)</p>
<p>Adobe makes available but does not include by default many framework localization resource bundles in the form of collections of property files. These files provide localization settings for the Flex framework components including; number and currency formats, month and day names, internal error messages etc&#8230;</p>
<p>To localize the framework components it is necessary to download these property files and recompile the framework resource bundle library (framework_rb.swc) for each locale. (see attachment)  These libraries can then be compiled into our localization files.</p>
<h4>Setting up basic standard localization for the Flex environment.</h4>
<p>This post does not cover how to apply localization to your application when I have a chance I&#8217;ll post one on how to do that. Also, this information is made regarding the Flex SDK 3.4 but should apply with minor modifications to most other versions of the SDK.  These steps should apply to the command line or any version of Flex/Flash Builder with minor variation.</p>
<p>For reference, I am using Flash Builder 4 installed in the default install directory, with the 3.4.0.9271 SDK loaded as an alternative SDK.<br />
The process to setup basic Flex localization can be broken into the following steps.</p>
<ol>
<li> Create the localization component libraries in the SDK</li>
<li> Localize the component librariesfor the SDK</li>
<li> Recompile the component libraries for the SDK</li>
</ol>
<p><span id="more-141"></span><br />
Before you can localize you must set up the localization component libraries in the SDK.  By default only en_US is installed.  To install the others follow the following steps.</p>
<h3>1.	Create the localization component libraries in the SDK.</h3>
<p>To do this you must first copy the en_US stub to your new localization.  There are several standard localization names most take the form of <em>two letter language code + underscore + two letter country code</em>.  However there is no rule that you must follow this convention. Adobe includes a utility to make a copy of localizations.   You must navigate to  your SDK bin directory via the command line.    Since I am using Flash Builder 4 with the  additional SDK loaded in it, that means this directory for me is:</p>
<pre> C:\Program Files\Adobe\Adobe Flash Builder 4\sdks\3.4.0.9271\bin\</pre>
<p>You then want to run the program <strong><span style="color:#800080;">copylocale </span></strong>(if you need to find your bin directory you can do a file search for <span style="color:#800080;">copylocale.exe</span>)</p>
<p>This is a very simple program it takes two arguments <em><strong>source</strong></em> and <strong><em>destination</em></strong> locales.  You don’t worry about directories, it knows where to do it’s business.    I will be creating a generic Spanish locale (<span style="color:#800080;"><strong>es</strong></span>) and a Mexico specific locale (<span style="color:#800080;"><strong>es_MX</strong></span>).  So I will run the following two commands.</p>
<pre>copylocale en_US es
copylocale en_US es_MX</pre>
<p>These commands will do a number of things but basically they copy:</p>
<pre> C:\...\Adobe Flash Builder 4\sdks\3.4.0.9271\frameworks\projects\framework\bundles\en_US\</pre>
<p>To:</p>
<pre> C:\...\Adobe Flash Builder 4\sdks\3.4.0.9271\frameworks\projects\framework\bundles\es\
 C:\...\Adobe Flash Builder 4\sdks\3.4.0.9271\frameworks\projects\framework\bundles\es_MX\</pre>
<p>And at the same time they compile the contents of those directories to several swc files located in:</p>
<pre> C:\...\Adobe Flash Builder 4\sdks\3.4.0.9271\frameworks\locale\es\
 C:\...\Adobe Flash Builder 4\sdks\3.4.0.9271\frameworks\locale\es_MX\</pre>
<h3>2.	Localize the component libraries for the SDK</h3>
<p>Now you need to modify the source files located in the first set of directories</p>
<pre> C:\...\Adobe Flash Builder 4\sdks\3.4.0.9271\frameworks\projects\framework\bundles\es\
 C:\...\Adobe Flash Builder 4\sdks\3.4.0.9271\frameworks\projects\framework\bundles\es_MX\</pre>
<p>You can modify these by hand if you want to and happen to have the knowledge.  But there is an easier way.</p>
<p>Adobe has made available a set of basic localization files for over a dozen languages online.  (Why they just don&#8217;t just include these… I don’t understand)  You can download the files at:</p>
<p><a href="http://opensource.adobe.com/svn/opensource/flex/sdk/trunk/frameworks/projects/framework/bundles/" target="_blank">http://opensource.adobe.com/svn/opensource/flex/sdk/trunk/frameworks/projects/framework/bundles/</a></p>
<p>For my purpose I will get the<strong> es_ES</strong> directory and copy all of the <span style="color:#800080;"><strong>*.property</strong></span> files to the two directories above.  I will make a further change to a few of the files I copy into the <strong>es_MX</strong> directory, but other than that, that is it.</p>
<p style="padding-left:30px;"><em> Note: There is a “docs/” directory in the resource directories on the download site.  I don’t think you need it unless you want to localize the context help for your installation of Flex/Flash Builder.</em></p>
<h3>3.	Recompile the component libraries for the SDK</h3>
<p>You are not quite done yet.  If you were to attempt to localize an application at this time you would find that everything is still using en_US.   (&#8216;January&#8217; &#8216;Monday&#8217;,$, etc..)  The reason is that when flex compiles your application,  it uses the SWC files located in these directories:</p>
<pre>C:\...\Adobe Flash Builder 4\sdks\3.4.0.9271\frameworks\locale\es\
C:\...\Adobe Flash Builder 4\sdks\3.4.0.9271\frameworks\locale\es_MX\</pre>
<p>These were created in step 1, before you downloaded the localized files from Adobe.  To recompile these files I use the following command, but first I must change my command console directory to the root of the sdk.  In my case that is:</p>
<pre>C:\Program Files\Adobe\Adobe Flash Builder 4\sdks\3.4.0.9271</pre>
<p style="padding-left:30px;"><em>(Note: the next commands are all on one line. I broke it out so you could read it easier.  I also boldfaced the command line options.)</em></p>
<p>Now I run the following command</p>
<p><code> <strong><span style="color:#0000ff;"> bin\compc</span></strong><strong> -locale</strong>=es<br />
<strong> -source-path</strong>+=<br />
frameworks/projects/framework/bundles/es/src/<br />
<strong> -include-resource-bundles</strong>=<br />
collections,containers,controls,core,effects,formatters,logging,SharedRe<br />
sources,skins,states,styles<br />
<strong> -output</strong>=frameworks/locale/es/framework_rb.swc<br />
</code></p>
<p style="padding-left:30px;">I run it again for Mexico variant</p>
<p><code><br />
<strong><span style="color:#0000ff;">bin\comp</span><span style="color:#0000ff;">c</span><span style="color:#0000ff;"> </span>-locale</strong>=es_MX<br />
<strong>-source-path</strong>+=<br />
frameworks/projects/framework/bundles/es_MX/src/<br />
<strong>-include-resource-bundles</strong>=<br />
collections,containers,controls,core,<br />
effects,formatters,logging,SharedResources,skins,states,styles<br />
<strong>-output</strong>=frameworks/locale/es_MX/framework_rb.swc</code></p>
<p>These last two commands compile the property files into the <strong><span style="color:#993366;">framework_rb.swc</span></strong> file.  This library is then in turn used by the compiler when you compile your application or can be dynamically loaded as a localization into your app.</p>
<p>Now you are set to localize your project swf or compile dynamic locale swf files with all of the base flex components being localized.    (&#8216;Enero&#8217; &#8216;de lunes&#8217;, peso, euro etc..)</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flexuous.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flexuous.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flexuous.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flexuous.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flexuous.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flexuous.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flexuous.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flexuous.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flexuous.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flexuous.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flexuous.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flexuous.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flexuous.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flexuous.wordpress.com/141/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.flexuous.com&amp;blog=3072563&amp;post=141&amp;subd=flexuous&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.flexuous.com/2010/09/08/flexflash-builder-localization-configuration/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/265f8fef23f99b7192248b37c2c584ac?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">justinohms</media:title>
		</media:content>
	</item>
		<item>
		<title>Top 3 roadblocks to purchasing an iPad</title>
		<link>http://blog.flexuous.com/2010/02/01/top-3-roadblocks-to-purchasing-an-ipad/</link>
		<comments>http://blog.flexuous.com/2010/02/01/top-3-roadblocks-to-purchasing-an-ipad/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 20:41:10 +0000</pubDate>
		<dc:creator>justinohms</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Camera]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iPod Touch]]></category>
		<category><![CDATA[Multitasking]]></category>
		<category><![CDATA[Steve Jobs]]></category>

		<guid isPermaLink="false">http://blog.flexuous.com/?p=104</guid>
		<description><![CDATA[Apple wants to be at war with everyone!  It is no longer enough to take on Microsoft.  Apple wants to rumble with everyone Google, Nintendo, Amazon, Sony and now one of its oldest allies Adobe.  I get it, Steve wants to rule the world.  <a href="http://blog.flexuous.com/2010/02/01/top-3-roadblocks-to-purchasing-an-ipad/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.flexuous.com&amp;blog=3072563&amp;post=104&amp;subd=flexuous&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Disappointment is the best way to describe how I feel about the iPad.  Such a promising and innovative device that has developmental problems before it is even born.</p>
<p>No I am not going to criticize Jobs for these choices.  I can see the business logic behind every one of them so that is not fair.  He is after all running a business.    I will however include what I think those reasons are in this little rant (and why they are bogus).  So here goes &#8230; the top 3 roadblocks to purchasing an iPad</p>
<p><span id="more-104"></span></p>
<ol>
<li><span style="text-decoration:underline;"><strong>Lack of Flash support:</strong></span><br />
It really boggles the mind to think that a device designed specifically to be used as a device to browse online would intentionally leave this out.  For me this is the single biggest problem with the device.  If this were fixed I would probably buy one even with the other issues below.  Now I may be biased as I do Flash/Flex development work however it is not for my own work that I lament, but for the numerous services that would be simply inaccessible with this device.  As with non-inclusion of Flash on the iPhone in the first place this is just a bone-headed move on the part of Apple.  I appreciate that they want to support and encourage HTML5  and I think that is fantastic!    However, it denies the reality-on-the-ground that as of right now and the foreseeable future, Flash is an integral part of the web experience.  (I am NOT saying that is good or bad, just a fact.)  This problem is likely to be the biggest day to day disappointment  for those using the iPad.<br />
<em><strong>Business Reason:</strong></em> Apple wants to be at war with everyone!  It is no longer enough to take on Microsoft.  Apple wants to rumble with everyone Google, Nintendo, Amazon, Sony and now one of its oldest allies Adobe.  I get it, Steve wants to rule the world.  Closed systems mean you have to buy from Apple.  Closed systems mean developers have to develop versions specifically for Apple products.  If you want to develop for Apple products you have to develop ON Apple products, which means you must BUY the Apple products.  It also means you have less time to develop for other environments and products.  The more exclusive applications available on Apple products the more users will have to buy Apple products to use those applications.  Apple is betting that at some moment a &#8220;killer app&#8221; will come along that makes owning an iXxx absolutely necessary. Failing that it is betting that ubiquity will be the killer app.</li>
</ol>
<ol>
<li><span style="text-decoration:underline;"><strong>Still no Multitasking:</strong></span><br />
I understood this on the iPhone, the official justification for a single processor thread was basically <em>~ensure that the devices primary purpose ( being a phone ) is not compromised by applications that hog cpu usage and memory~</em> So for the iPhone this strategy made a little sense. However now I don&#8217;t see the argument for leaving this out of a device such as the iPad.  There is no phone.  That is not its purpose.   so&#8230;..???  What is the problem?<br />
<em><strong>Business Reason: </strong></em> Cost and speed&#8230; get it to market faster and capture market share.  This required less change in the way applications and the OS worked so it <em>*might* </em>(doubtful) be corrected in a future patch or release.</li>
<li><span style="text-decoration:underline;"><strong>Still no camera</strong></span><br />
I&#8217;ll be honest I really don&#8217;t care about this one personally.  However when Nintendo can cram 2 decent cameras into the DSi.  WTF?  How much is a CCD camera to include $1 &#8211; $2 ?  Really on a $500 device?   Ok ok, I get that keeping features to a minimum is a design philosophy at Apple but in this day and age when it is difficult to even find a cell phone without a camera it just doesn&#8217;t make much sense.  Couple that with the fact that support for a camera is already built into the iPhone OS  again WTF?   So I&#8217;ll end on you can add a camera to the little iPod but you can&#8217;t put one on the iPod touch or the iPad ??  Wow Apple&#8217;s engineers must be really incompetent or unfocused.<br />
<em><strong>Business Reason: </strong></em>Planned obsolescence, 2nd gen upgrade.   We&#8217;ve seen this before from Apple (and other companies)   It is very likely that the camera(s) will be the great addition to a version 2 of the iPad causing legions of those who have perfectly functioning iPads to upgrade to new units even when their old ones are perfectly serviceable.   My prediction is that this upgrade will come to both the iPad and iPod touch at or about the same time, probably next year.</li>
</ol>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flexuous.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flexuous.wordpress.com/104/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flexuous.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flexuous.wordpress.com/104/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flexuous.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flexuous.wordpress.com/104/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flexuous.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flexuous.wordpress.com/104/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flexuous.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flexuous.wordpress.com/104/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flexuous.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flexuous.wordpress.com/104/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flexuous.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flexuous.wordpress.com/104/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.flexuous.com&amp;blog=3072563&amp;post=104&amp;subd=flexuous&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.flexuous.com/2010/02/01/top-3-roadblocks-to-purchasing-an-ipad/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/265f8fef23f99b7192248b37c2c584ac?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">justinohms</media:title>
		</media:content>
	</item>
		<item>
		<title>Patent Issued</title>
		<link>http://blog.flexuous.com/2008/06/03/patent-issued-2/</link>
		<comments>http://blog.flexuous.com/2008/06/03/patent-issued-2/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 08:14:32 +0000</pubDate>
		<dc:creator>justinohms</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://flexuous.wordpress.com/2008/06/04/patent-issued-2/</guid>
		<description><![CDATA[My first patent was issued today from the US Patent and Trademark office. Patent number 07380665 issued June 3, 2008. It might not mean a lot to many people but for as long as I can remember I&#8217;ve had ideas &#8230; <a href="http://blog.flexuous.com/2008/06/03/patent-issued-2/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.flexuous.com&amp;blog=3072563&amp;post=50&amp;subd=flexuous&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>My first patent was issued today from the US Patent and Trademark office. Patent number 07380665 issued June 3, 2008.</p>
<p><img src="http://flexuous.files.wordpress.com/2008/06/3onbucket.jpg?w=393&#038;h=370" alt="3 on bucket" vspace="20" width="393" height="370" /></p>
<p>It might not mean a lot to many people but for as long as I can remember I&#8217;ve had ideas and inventions floating around in my head. A couple years ago I decided to start patenting my ideas&#8230;</p>
<p><span id="more-50"></span></p>
<p>This was the first of what I hope will be many more to come. So far I am working on three other patents with over a dozen other ideas just waiting for the time and money to be able to file.</p>
<p>For those that are interested I originally filed this patent application back in mid 2005, It was published one year later. It took almost two full years before it worked its way through the queue to a patent examiner. It was returned to me for some minor corrections late last year and approved early this year. After paying the fee to have it issued about two months ago, it was finnally issued today. The whole process took about 3 1/2 years and cost about $8000.</p>
<p>Here is a pdf of the patent.</p>
<p><a href="http://justinohms.files.wordpress.com/2008/06/uspatent007380665.pdf">http://justinohms.files.wordpress.com/2008/06/uspatent007380665.pdf</a></p>
<p>The patent is available for license.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/flexuous.wordpress.com/50/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/flexuous.wordpress.com/50/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flexuous.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flexuous.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flexuous.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flexuous.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flexuous.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flexuous.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flexuous.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flexuous.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flexuous.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flexuous.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flexuous.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flexuous.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flexuous.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flexuous.wordpress.com/50/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.flexuous.com&amp;blog=3072563&amp;post=50&amp;subd=flexuous&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.flexuous.com/2008/06/03/patent-issued-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/265f8fef23f99b7192248b37c2c584ac?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">justinohms</media:title>
		</media:content>

		<media:content url="http://flexuous.files.wordpress.com/2008/06/3onbucket.jpg" medium="image">
			<media:title type="html">3 on bucket</media:title>
		</media:content>
	</item>
		<item>
		<title>Blog Moved</title>
		<link>http://blog.flexuous.com/2008/03/24/blog-moved/</link>
		<comments>http://blog.flexuous.com/2008/03/24/blog-moved/#comments</comments>
		<pubDate>Mon, 24 Mar 2008 05:09:34 +0000</pubDate>
		<dc:creator>justinohms</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://flexuous.wordpress.com/2008/03/24/blog-moved/</guid>
		<description><![CDATA[I finally did it&#8230; I got tired of paying for my crippled ColdFusion hosting account so I&#8217;ve moved my blog over to wordpress. I have also taken the extra step of splitting up my personal blog from my programming blog. &#8230; <a href="http://blog.flexuous.com/2008/03/24/blog-moved/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.flexuous.com&amp;blog=3072563&amp;post=38&amp;subd=flexuous&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I finally did it&#8230; I got tired of paying for my crippled ColdFusion hosting account so I&#8217;ve moved my blog over to wordpress.    I have also taken the extra step of splitting up my personal blog from my programming blog.  I have gotten increasing amounts of traffic for both areas and felt it was just time to separate the two out.  Officially the URLS are now:</p>
<p>For my programming blog:  <a href="http://blog.flexuous.com/">http://blog.flexuous.com/</a></p>
<p>For my personal blog: <a href="http://blog.justinohms.com/">http://blog.justinohms.com/</a></p>
<p>In one of my future posts I plan to include my methodology for moving my blog over including redirects for search engines so that I don&#8217;t loose my page rankings and any other links that are out there.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/flexuous.wordpress.com/38/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/flexuous.wordpress.com/38/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/flexuous.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/flexuous.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/flexuous.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/flexuous.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/flexuous.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/flexuous.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/flexuous.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/flexuous.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/flexuous.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/flexuous.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/flexuous.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/flexuous.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/flexuous.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/flexuous.wordpress.com/38/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.flexuous.com&amp;blog=3072563&amp;post=38&amp;subd=flexuous&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.flexuous.com/2008/03/24/blog-moved/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/265f8fef23f99b7192248b37c2c584ac?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">justinohms</media:title>
		</media:content>
	</item>
	</channel>
</rss>
