<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7758626027926442077</id><updated>2011-11-27T17:27:16.952-07:00</updated><category term='flash'/><category term='debugger'/><category term='flash player'/><category term='chrome'/><title type='text'>A Better Experience</title><subtitle type='html'>everyone hates bad interfaces.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>76</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-6709657078582979525</id><published>2011-07-02T15:32:00.002-06:00</published><updated>2011-07-02T15:43:32.021-06:00</updated><title type='text'>Persisting typed singleton objects in Flex Mobile via PersistenceManager</title><content type='html'>I recently ran into a real mess when trying to persist a typed singleton object in a Flex Mobile application via the PersistenceManager class.&lt;br /&gt;&lt;br /&gt;DevGirl Holly Schinsky has a &lt;a href="http://devgirl.org/2011/05/18/flex-4-5-mobile-data-handling/"&gt;great blog post on managing data in a Flex Mobile application&lt;/a&gt;, and I was specifically using her instructions on persisting typed objects.  The basics are this:&lt;br /&gt;&lt;br /&gt;1.) Register the class alias&lt;br /&gt;flash.net.registerClassAlias("person",model.Person);&lt;br /&gt;&lt;br /&gt;2.) Get an instance of the PersistenceManager class&lt;br /&gt;var persistenceManager : PersistenceManager = new PersistenceManager();&lt;br /&gt;&lt;br /&gt;3.) Save the object to be persisted&lt;br /&gt;persistenceManager.setProperty("savedData", _personInstance);&lt;br /&gt;persistenceManager.save();&lt;br /&gt;&lt;br /&gt;4.) Re-load the object at a later time&lt;br /&gt;persistenceManager.getProperty("savedData");&lt;br /&gt;&lt;br /&gt;Everything works totally fine UNLESS the object you're persisting has a hidden internal class - a class who's scope is internal to the model object class itself.  This is often the case for singleton classes in AS3 - since there's no way to make a private constructor &lt;a href="http://gskinner.com/blog/archives/2006/07/as3_singletons.html"&gt;the best-practice for singletons in AS3&lt;/a&gt; is to make the constructor take an instance of an internal class object so that no external classes can call the constructor.&lt;br /&gt;&lt;br /&gt;I suspect the error is during de-serialization - since the serializer can't make an instance of your singleton model's internal class, it can't make the model class itself at all, and de-serialization fails.&lt;br /&gt;&lt;br /&gt;For now I'm just removing the internal classes from my singleton.  It means it's no longer really secure, but I'll take the easy data persistence and built-in serialization of the PersistenceManager over having to do the serializing/de-serializing myself.&lt;br /&gt;&lt;br /&gt;I suspect this would be an issue with any AMF serialization in Flash - I bet these types of locked singleton's can't be persisted across the client/server or to a regular LSO or anything like that either.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-6709657078582979525?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/6709657078582979525/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=6709657078582979525' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6709657078582979525'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6709657078582979525'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2011/07/persisting-typed-singleton-objects-in.html' title='Persisting typed singleton objects in Flex Mobile via PersistenceManager'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-6986533513415469314</id><published>2011-04-14T21:09:00.002-06:00</published><updated>2011-04-14T21:15:27.693-06:00</updated><title type='text'>Amazing client quote</title><content type='html'>Regarding EUI's work for Pearson recently, the product manager for our client said:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;“Each of you probably had your own reasons for getting into this business, but I'm sure the hope was improving people's lives. That's what you've done here, one student, one class, one non-missed exam at a time. That's something to be proud of.”&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Wow, that's amazing feedback.  It feels great to be a part of the EffectiveUI team when we get this sort of feedback. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-6986533513415469314?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/6986533513415469314/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=6986533513415469314' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6986533513415469314'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6986533513415469314'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2011/04/amazing-client-quote.html' title='Amazing client quote'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-6424836453351921576</id><published>2011-01-18T17:05:00.003-07:00</published><updated>2011-01-18T17:08:18.006-07:00</updated><title type='text'>HTML5 Logo Background Images</title><content type='html'>HTML5 got a new logo today.  I spent a few minutes in illustrator and whipped up a few desktop backgrounds for HTML5 fans like myself.&lt;br /&gt;&lt;br /&gt;I'd like to add some other treatments, but this is all I had time for today.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_opS9Z5vqQYQ/TTYrEvZo-MI/AAAAAAAAAU4/s6uE1qop4vI/s1600/html5_bg.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 250px;" src="http://3.bp.blogspot.com/_opS9Z5vqQYQ/TTYrEvZo-MI/AAAAAAAAAU4/s6uE1qop4vI/s400/html5_bg.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5563681750106306754" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_opS9Z5vqQYQ/TTYrMHXNiRI/AAAAAAAAAVA/H0gJ2oCoBTg/s1600/html5_bg_no_icons.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 250px;" src="http://2.bp.blogspot.com/_opS9Z5vqQYQ/TTYrMHXNiRI/AAAAAAAAAVA/H0gJ2oCoBTg/s400/html5_bg_no_icons.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5563681876797655314" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-6424836453351921576?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/6424836453351921576/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=6424836453351921576' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6424836453351921576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6424836453351921576'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2011/01/html5-logo-background-images.html' title='HTML5 Logo Background Images'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_opS9Z5vqQYQ/TTYrEvZo-MI/AAAAAAAAAU4/s6uE1qop4vI/s72-c/html5_bg.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-5880864902736356057</id><published>2010-10-29T15:09:00.001-06:00</published><updated>2010-10-29T15:11:08.394-06:00</updated><title type='text'>MAX Volume presentation is live</title><content type='html'>&lt;div&gt;My presentation at MAX 2010 with &lt;a href="http://www.twitter.com/juansanchez"&gt;Juan Sanchez&lt;/a&gt; and &lt;a href="http://www.twitter.com/creativism"&gt;Leonard Souza&lt;/a&gt; is up now on AdobeTV.  We presented on MAX Volume - a multi-screen experience we built for the desktop and mobile phone using Adobe tools.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;object width="425" height="256"&gt;&lt;param name="movie" value="http://images.tv.adobe.com/swf/player.swf"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="FlashVars" value="fileID=8262&amp;amp;context=648&amp;amp;embeded=true&amp;amp;environment=production"&gt;&lt;embed src="http://images.tv.adobe.com/swf/player.swf" flashvars="fileID=8262&amp;amp;context=648&amp;amp;embeded=true&amp;amp;environment=production" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="256"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-5880864902736356057?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/5880864902736356057/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=5880864902736356057' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5880864902736356057'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5880864902736356057'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2010/10/max-volume-presentation-is-live.html' title='MAX Volume presentation is live'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-2707303838237363343</id><published>2010-09-20T09:33:00.004-06:00</published><updated>2011-01-10T14:38:53.823-07:00</updated><title type='text'>Doug McCune Is Not Dead</title><content type='html'>Doug McCune is not really dead, but I gave his eulogy this morning as part of a prank that&lt;a href="http://blog.natebeck.net/"&gt; Nate Beck&lt;/a&gt; organized, produced and masterminded this morning at 360|Flex.  Nate and Doug have had something of a prank war going in their sessions at 360|Flex over the past year and this was Nate's latest salvo, based on my &lt;a href="http://insideria.com/2010/04/doug-mccune-1980-2010.html"&gt;April Fools Day post "RIP Doug McCune"&lt;/a&gt; earlier this year.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here's the full text of the eulogy.  It was immediately followed by this video that Nate posted to &lt;a href="http://www.weheartdoug.org/"&gt;weheartdoug.org&lt;/a&gt;, which was in turn followed by Doug himself, giving his part of the keynote here at 360 | Flex.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;Friends and honored guests, members of the Flex community.  I stand before you today to with a message of sadness.  Our once merry and mirthful friend, Douglas Quincy McCune, passed away last week and so will be unable to give the keynote here this morning.  I know that Doug was a good friend to many of you and an honored member of the Flex community, remembered for the fanciful (if occassionally inappropriate) titles he gave to his sessions and frequent exhibitionism.  There is no doubt that Doug will be sorely missed this weekend.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Though details of Doug's demise and the real reason for his passing are not available at his time, I would ask that we all honor his memory by thinking more about the happy times we had with him than the surely tragic and unfortunate events that surround his shuffling off of the mortal coil.  For myself, the thing I remember most about Doug was the way he filled a room - how his presence permeated the place.  Though I know Doug has passed on, in a weird six-sense sort of way I can still feel that presence, that warmth, that joy of his here with us know - as if he were sitting right in the front row.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Many of you know that Doug and Nate Beck had a prank war going.  It started when Nate threw rubber balls at Doug during a session.  Doug retailiated by having a man dressed as marilyn monroe sing happy birthday to Nate in the middle of his session at the last 360 Flex.  Nate Beck was planning a masterful rebuttal; an epic final stroke to end the war by escalating it so far that Doug couldn't possibly respond.  He'd hired a troupe of dancers to can-can out during this very keynote.  They were to be lead by Michael Labriola who, contrary to common misperception, is quite a nimble ballerina.  But due to Doug's passing Nate immediately dropped the prank plans and focused all of his efforts on rallying the Flex community in memorial with Doug.  He's prepared a short memorial video, which we will watch together now.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://player.vimeo.com/video/15122717?autoplay=0" width="500" height="350" frameborder="0"&gt;&lt;/iframe&gt;&lt;p&gt;&lt;a href="http://vimeo.com/15122717"&gt;We &amp;lt;3 Doug - In Memoriam&lt;/a&gt; from &lt;a href="http://vimeo.com/user4772283"&gt;Nate Beck&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-2707303838237363343?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/2707303838237363343/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=2707303838237363343' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2707303838237363343'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2707303838237363343'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2010/09/doug-mccune-is-not-dead.html' title='Doug McCune Is Not Dead'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-8372540272380017542</id><published>2010-06-28T14:02:00.003-06:00</published><updated>2010-06-30T12:18:29.996-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='debugger'/><category scheme='http://www.blogger.com/atom/ns#' term='flash player'/><category scheme='http://www.blogger.com/atom/ns#' term='chrome'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><title type='text'>Installing new Flash Player in Chrome</title><content type='html'>The illustrious &lt;a href="http://twitter.com/kevinsuttle"&gt;Kevin Suttle&lt;/a&gt; turned me on to a fix for an issue I've been having with Flash Player and Google's Chrome browser, which is my favorite browser by far.&lt;br /&gt;&lt;br /&gt;My flash player debugger had simply stopped working in Chrome without warning.  It turns out that Flash Player comes bundled as a plugin with Chrome now and you have to visit chrome://plugins to disable it.  &lt;span style="font-weight: bold;"&gt;The only way to install a new Flash Player version for Chrome is to disable the old one, shut down chrome, run the Flash Player installer, and then restart Chrome.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_opS9Z5vqQYQ/TCkAePnhUHI/AAAAAAAAAUI/PN2EWaeox34/s1600/Screen+shot+2010-06-28+at+1.20.10+PM.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 256px;" src="http://1.bp.blogspot.com/_opS9Z5vqQYQ/TCkAePnhUHI/AAAAAAAAAUI/PN2EWaeox34/s400/Screen+shot+2010-06-28+at+1.20.10+PM.png" alt="" id="BLOGGER_PHOTO_ID_5487918140516028530" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;When you're done, check out this &lt;a href="http://kb2.adobe.com/cps/155/tn_15507.html"&gt;Flash Player version test page&lt;/a&gt; from Adobe to make sure everything worked.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_opS9Z5vqQYQ/TCkAXzFq5TI/AAAAAAAAAUA/3b9eKcd6xtk/s1600/Screen+shot+2010-06-28+at+1.53.43+PM.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 256px;" src="http://1.bp.blogspot.com/_opS9Z5vqQYQ/TCkAXzFq5TI/AAAAAAAAAUA/3b9eKcd6xtk/s400/Screen+shot+2010-06-28+at+1.53.43+PM.png" alt="" id="BLOGGER_PHOTO_ID_5487918029778642226" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-8372540272380017542?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/8372540272380017542/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=8372540272380017542' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8372540272380017542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8372540272380017542'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2010/06/installing-new-flash-player-in-chrome.html' title='Installing new Flash Player in Chrome'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_opS9Z5vqQYQ/TCkAePnhUHI/AAAAAAAAAUI/PN2EWaeox34/s72-c/Screen+shot+2010-06-28+at+1.20.10+PM.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-8853751982015306771</id><published>2010-06-04T11:50:00.004-06:00</published><updated>2010-06-04T12:02:16.790-06:00</updated><title type='text'>Making a site specific browser for Campfire using Fluid</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span"  style="color:#0000EE;"&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/span&gt;&lt;/div&gt;I tried making a site specific browser for Campfire today using Fluid.  It was a bit painful at first, until I got a little help from my friends out on the internet.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Step 1: Make the new fluid isntance.  Grab the &lt;a href="http://37signals.com/svn/posts/797-fluid-wrap-your-favorite-web-apps-in-their-own-browser"&gt;high-res image for Campfire from 37Signals here&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Step 2: Add &lt;span class="Apple-style-span" style="font-size: 15px; line-height: 21px; "&gt;*launchpad.37signals.com* to your list of allowed URLs for browsing (thanks &lt;a href="http://stevesanderson.com/2010/01/19/fix-for-cant-use-fluid-with-campfire-anymore/"&gt;Steve Sanderson&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style=" line-height: 21px; font-size:15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style=" line-height: 21px; font-size:15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:130%;"&gt;&lt;span class="Apple-style-span"  style=" line-height: 21px;font-size:15px;"&gt;&lt;span class="Apple-style-span" style="line-height: normal; font-size: 16px; "&gt;&lt;a href="http://4.bp.blogspot.com/_opS9Z5vqQYQ/TAk-XDA05xI/AAAAAAAAATY/6NZqXVTwBY8/s1600/Screen+shot+2010-06-04+at+11.51.37+AM.png"&gt;&lt;img src="http://4.bp.blogspot.com/_opS9Z5vqQYQ/TAk-XDA05xI/AAAAAAAAATY/6NZqXVTwBY8/s400/Screen+shot+2010-06-04+at+11.51.37+AM.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5478978987339605778" style="display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; width: 400px; height: 298px; " /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:130%;"&gt;&lt;span class="Apple-style-span"  style=" line-height: 21px;font-size:15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="line-height: 21px; font-size: -webkit-xxx-large;"&gt;&lt;span class="Apple-style-span" style="line-height: normal; font-size: 16px; "&gt;Step 3: Add scripts to to do things like &lt;a href="http://userscripts.org/scripts/show/22891"&gt;growl notifications when someone says your name&lt;/a&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="line-height: 21px; font-size: -webkit-xxx-large;"&gt;&lt;span class="Apple-style-span" style="line-height: normal; font-size: 16px; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="line-height: 21px; font-size: -webkit-xxx-large;"&gt;&lt;span class="Apple-style-span" style="line-height: normal; font-size: 16px; "&gt;Step 4: FUN&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-8853751982015306771?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/8853751982015306771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=8853751982015306771' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8853751982015306771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8853751982015306771'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2010/06/making-site-specific-browser-for.html' title='Making a site specific browser for Campfire using Fluid'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_opS9Z5vqQYQ/TAk-XDA05xI/AAAAAAAAATY/6NZqXVTwBY8/s72-c/Screen+shot+2010-06-04+at+11.51.37+AM.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-9055184351318163132</id><published>2010-02-10T12:51:00.004-07:00</published><updated>2010-02-10T12:55:55.769-07:00</updated><title type='text'>EffectiveUI book released</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://covers.oreilly.com/images/9780596154790/cat.gif"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 180px; height: 219px;" src="http://covers.oreilly.com/images/9780596154790/cat.gif" border="0" alt="" /&gt;&lt;/a&gt;The EffectiveUI book by various people here at EUI and published by O'Reilly was released to the wild yesterday.  Here's the official statement we put out:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;"As the gap between the high-quality experiences users expect from software and the mediocre ones companies actually deliver continues to expand, there's no greater time to drive home the importance of building better UX for software.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Delivering on UX potential involves more than just innovative ideas and technologies. Building software centered on UX quality requires that the design, engineering, staffing and business considerations — as well as the overall art of software project management and development — be centered on users' needs and grounded in the practical realities that underlie innovative developments.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;At EffectiveUI, we apply UX development and technology each day for custom Web, mobile and desktop applications.  Over the years, we’ve learned through success and error what does and doesn’t work. Through these lessons, we have reached an approach that truly maximizes UX strategies for both the consumer and the developer.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We are incredibly fortunate to have a new book published by O’Reilly Media that will help answer many outstanding questions, or questions not yet pondered, for those embarking on better UX.  We only wish we’d had this book a few times throughout projects in the past.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;“Effective UI: The Art of Building Great User Experience in Software” is written as a complete roadmap of how to successfully develop groundbreaking software when the quality of the user experience is critical. The book will help:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;business and product managers trying to build and fund innovative products successfully.&lt;/li&gt;&lt;li&gt;software professionals who want to more easily advance the cause of better UX in their companies and with their clients.&lt;/li&gt;&lt;li&gt;anyone striving to advocate and deliver on the promise of higher quality software.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;“Effective UI: The Art of Building Great User Experience in Software” covers all aspects of how to create superior UX, from the initial concept to deployment. It also explores the business, project management, design, and engineering considerations that must work in tandem along the way.  By presenting real UX projects that EffectiveUI undertook with National Geographic and Herff Jones, the book demonstrates how the principles discussed can be applied to overcome UX challenges and to meet UX opportunities.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Authored by  Jonathan Anderson and John McRee of EffectiveUI, in conjunction with Robb Wilson, “EffectiveUI” joins O’Reilly’s animal series of books and features a Rainbow Lorikeet on its cover. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The book costs $44.99 and is available at major retailers such as &lt;a href="http://www.amazon.com/"&gt;Amazon.com&lt;/a&gt; (&lt;a href="http://www.tinyurl.com/effectiveui"&gt;www.tinyurl.com/effectiveui&lt;/a&gt;) and through O’Reilly Media at &lt;a href="http://oreilly.com/"&gt;oreilly.com&lt;/a&gt;. It is also &lt;a href="http://itunes.apple.com/us/app/effective-ui/id352641160?mt=8"&gt;available on iTunes&lt;/a&gt; for $4.99."&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-9055184351318163132?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/9055184351318163132/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=9055184351318163132' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/9055184351318163132'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/9055184351318163132'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2010/02/effectiveui-book-released.html' title='EffectiveUI book released'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-6342436708514817132</id><published>2009-09-04T16:26:00.003-06:00</published><updated>2009-09-15T13:21:41.294-06:00</updated><title type='text'>"Flash" package missing, code hinting lost</title><content type='html'>Earlier today I started getting some ridiculous behavior out of Flex Builder.  All code completion revolving around the Flash package, especially events, just quit.  Then it started flagging the word "flash" itself as an error:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:lucida grande;"&gt;1120: Access of undefined property flash.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;After a while hitting up the bug database and searching the googleverse I found &lt;a href="https://bugs.adobe.com/jira/browse/FB-16703"&gt;this great tip from Garth Somerville&lt;/a&gt; - make a new workspace.&lt;br /&gt;&lt;br /&gt;It's kind of a pain, but it worked!&lt;br /&gt;&lt;br /&gt;Update:&lt;br /&gt;WHEN THIS FAILS:  When this fails, as Andrew T pointed out in the comments, re-install the SDK&lt;br /&gt;&lt;br /&gt;AND WHEN THAT FAILS: Re-intsall Flex Builder.  After re-building my workspace 5 times with no luck, reinstalling the SDK, and fighting with this for hours, I finally just scrapped all of that and re-installed Flex Builder.  It all works fine now - old workspaces and all.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-6342436708514817132?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/6342436708514817132/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=6342436708514817132' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6342436708514817132'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6342436708514817132'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2009/09/flash-package-missing-code-hinting-lost.html' title='&quot;Flash&quot; package missing, code hinting lost'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-4225927638231785339</id><published>2009-05-14T11:25:00.002-06:00</published><updated>2009-05-14T11:34:52.414-06:00</updated><title type='text'>CFUnited Speaker Questionnaire</title><content type='html'>Recently &lt;a href="http://cfunited.com/2009/"&gt;CFUnited&lt;/a&gt; sent out a speaker questionnaire.  Since this whole thing was too long to &lt;a href="http://www.twitter.com/rjowen"&gt;twitter&lt;/a&gt;, I thought I'd share it with you, gentle reader, here on my weblog page.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;1. Have you spoken at CFUnited in the past?  What would you tell someone who hasn't been to CFUnited before?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I have never, even once, spoken at CFUnited.  Last year I was sworn to silence.  I would tell someone, it's okay - you can get through this.&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt;2. Why should people attend your session(s)?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;People should attend my session if they want to learn about what's new in Flex 4, or how they can use Flex to build some sweet UI's onto the hearty back-ends they're used to building in CF.&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt;3. Do you have any projects in the works that you will be revealing at CFUnited?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;[mysterious]If I did, I most certainly wouldn't reveal them on the internet. You'll just have to come and see for yourself.[/mysterious]&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt;4. Besides your topic, what other sessions are you looking forward to?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I'm looking forward to Jun's session and David Tucker's session.  They both know a lot about a lot of things, and I like learning things from people who know them.&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt;5. What are some of the hot topics you'd like to see at RoundTable discussions?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I'd really enjoy listening to two gentlemen (or ladies) diplomatically argue the merits of the multi-party system of government favored in Europe compared to our rather intransigent tradition of only two.&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt;6. Where can people find you at CFUnited?  (At the bar, networking, working, in your room, etc.)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I will most likely be in the pool, trying to see how long I can hold my breath.&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt;7. What's the latest news with you? Has anything changed since last CFUnited?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Well, Liz, I'm glad you asked.  Last week we watched our friends' dog.  It's a pretty nice dog, so it went well, generally, but it yipped a lot at night, and I'm a light sleeper, so that was a little rough.  You know what, why don't we just catch up at the conference?&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt;8. What is unique about CFUnited?&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;It's the last great bastion of hope for a dying world in need of a hero.  There are a few mediocre bastions around, but you won't find any other great ones.  Especially not around WADC.&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt;9. When you are not working what do you like to do in your free time?&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;When I'm not working, I like reading, playing video games, and occasionally playing sports in my free time. When I'm working, I prefer to spend my free time playing scrabble over a nice glass of 2% milk.&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight: bold;"&gt;10. How do you feel about Law and Order?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;It is my firm belief that there are too many crime dramas on evening television, but of those crime dramas, Law and Order is pretty good, I guess.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-4225927638231785339?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/4225927638231785339/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=4225927638231785339' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4225927638231785339'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4225927638231785339'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2009/05/cfunited-speaker-questionnaire.html' title='CFUnited Speaker Questionnaire'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-4617217913604895520</id><published>2009-05-04T12:24:00.010-06:00</published><updated>2009-05-04T12:34:18.315-06:00</updated><title type='text'>New offices - EUI Upstairs!</title><content type='html'>Back in the summer of 2006, we (EffectiveUI) purchased a really big warehouse in down town Denver and moved in. In the early days we didn't have bathrooms or lights or conference rooms, and it was a real shack. That was quickly rectified, but as our numbers were still small we only built out the bottom floor of the building.&lt;br /&gt;&lt;br /&gt;Since then we've grown considerably and our space started to constrain us - we couldn't physically fit enough desks in the office to house our Denver crew. Late last year we got serious about finishing the upstairs of the office, and today is the glorious day in which we've finally moved upstairs. Our design, development and PM teams moved upstairs, while account management and sales (the noisy people) stayed on the ground floor. It's nice and quiet up here. :)&lt;br /&gt;&lt;br /&gt;Here are a few pictures, for anyone interested. It's still got a good industrial feel but is far nicer and more workable than the raw warehouse was.&lt;br /&gt;&lt;br /&gt;The view from my desk of our "developer pit" area:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_opS9Z5vqQYQ/Sf8zkrziikI/AAAAAAAAAPo/TDKOFhhm4s8/s1600-h/IMG_0370.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_opS9Z5vqQYQ/Sf8zkrziikI/AAAAAAAAAPo/TDKOFhhm4s8/s400/IMG_0370.JPG" alt="" id="BLOGGER_PHOTO_ID_5332037189157161538" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_opS9Z5vqQYQ/Sf8zngzdw3I/AAAAAAAAAPw/HmYNzj0sIVU/s1600-h/IMG_0371.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_opS9Z5vqQYQ/Sf8zngzdw3I/AAAAAAAAAPw/HmYNzj0sIVU/s400/IMG_0371.JPG" alt="" id="BLOGGER_PHOTO_ID_5332037237743666034" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;This is the designer "pit", separated by a half wall for us developers.  The wall is there to make sense of the difference in floor height - not to keep them out (or us in (I think.))&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_opS9Z5vqQYQ/Sf80L5p15qI/AAAAAAAAAQg/TlsRSauU2i0/s1600-h/IMG_0372.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_opS9Z5vqQYQ/Sf80L5p15qI/AAAAAAAAAQg/TlsRSauU2i0/s400/IMG_0372.JPG" alt="" id="BLOGGER_PHOTO_ID_5332037862889481890" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Front couches upstairs - a good place to take phone calls. :)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_opS9Z5vqQYQ/Sf80Hk7mtrI/AAAAAAAAAQY/kDYyan7f-do/s1600-h/IMG_0373.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_opS9Z5vqQYQ/Sf80Hk7mtrI/AAAAAAAAAQY/kDYyan7f-do/s400/IMG_0373.JPG" alt="" id="BLOGGER_PHOTO_ID_5332037788607362738" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The front stair case leading up to our new digs, with some of the art we're going to hang on the walls soon.  I think Todd Hebenstreit made that one.  All of the art we're using to decorate upstairs was done by EUI employees.  I spray painted a smiley face myself, but it's not here. :)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_opS9Z5vqQYQ/Sf80CwQBdII/AAAAAAAAAQQ/euxQFyA7Cy8/s1600-h/IMG_0374.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_opS9Z5vqQYQ/Sf80CwQBdII/AAAAAAAAAQQ/euxQFyA7Cy8/s400/IMG_0374.JPG" alt="" id="BLOGGER_PHOTO_ID_5332037705746445442" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;View of the pits from the staircase:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_opS9Z5vqQYQ/Sf8z7gGI3iI/AAAAAAAAAQI/s4erxKX4Ai4/s1600-h/IMG_0376.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_opS9Z5vqQYQ/Sf8z7gGI3iI/AAAAAAAAAQI/s4erxKX4Ai4/s400/IMG_0376.JPG" alt="" id="BLOGGER_PHOTO_ID_5332037581150936610" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_opS9Z5vqQYQ/Sf8z1ubQUAI/AAAAAAAAAQA/o7j2Ip2uC78/s1600-h/IMG_0377.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_opS9Z5vqQYQ/Sf8z1ubQUAI/AAAAAAAAAQA/o7j2Ip2uC78/s400/IMG_0377.JPG" alt="" id="BLOGGER_PHOTO_ID_5332037481918386178" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;We made Andy McIntosh sit with the designers to help him appreciate Flex Builder more:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_opS9Z5vqQYQ/Sf8zvAMDwLI/AAAAAAAAAP4/KA7k3JOZkts/s1600-h/IMG_0378.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_opS9Z5vqQYQ/Sf8zvAMDwLI/AAAAAAAAAP4/KA7k3JOZkts/s400/IMG_0378.JPG" alt="" id="BLOGGER_PHOTO_ID_5332037366427402418" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-4617217913604895520?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/4617217913604895520/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=4617217913604895520' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4617217913604895520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4617217913604895520'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2009/05/new-offices-eui-upstairs.html' title='New offices - EUI Upstairs!'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_opS9Z5vqQYQ/Sf8zkrziikI/AAAAAAAAAPo/TDKOFhhm4s8/s72-c/IMG_0370.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-1412346011688148988</id><published>2009-04-20T10:36:00.003-06:00</published><updated>2009-04-20T10:46:53.172-06:00</updated><title type='text'>Rocky Mountain Adobe Camp, June 22nd</title><content type='html'>Mark your calendars and get out your stimulus check: &lt;a href="http://camp.rmaug.com/"&gt;Rocky Mountain Adobe camp&lt;/a&gt; is on June 22nd.  The camp will be at the chic Magnolia Hotel, smack dab in the middle of Denver.  Expect an exciting day of &lt;a href="http://camp.rmaug.com/sessions/flash"&gt;the Flash platform&lt;/a&gt;, &lt;a href="http://camp.rmaug.com/sessions/media/"&gt;Dynamic Media&lt;/a&gt;, or &lt;a href="http://denverflashcamp.com/sessions/elearning/"&gt;eLearning&lt;/a&gt;, depending on your preference, hosted by the &lt;a href="http://www.rmaug.com/"&gt;Rocky Mountain Adobe User Group&lt;/a&gt;.  Get all the latest news on &lt;a href="http://twitter.com/adobecamp"&gt;Adobe Camp through twitter, here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I'll be speaking there on Flash Catalyst and Flex 4 with &lt;a href="http://www.scalenine.com/"&gt;Juan Sanchez&lt;/a&gt;.  Juan will provide the Flash Catalyst designer details and I'll be talking about the code.  We'll look at how Flex 4 works along with some best practices (as far as we can tell) for integrating with Catalyst.&lt;br /&gt;&lt;br /&gt;There are some other great Flex / Flash platform talks planned, including an intro to Flex by Jun Heider, some more talk on Flash Catalyst from DEVELOPER &lt;a href="http://adamflater.blogspot.com/"&gt;Adam Flater&lt;/a&gt; (what does he know? :) ) and an in-depth talk on testing by Michael Labriola, who co-invented testing with Liebnitz (or Newton, depending on who you ask.)&lt;br /&gt;&lt;br /&gt;I'm pretty excited for the great day of the learning, and to have so many great minds descending on our city.  If you're in Denver or ever wanted to visit this would be a great time to make the trip.  Let us know on &lt;a href="http://ww.twitter.com/rjowen"&gt;Twitter&lt;/a&gt; or in the comments here if you're coming - I'm sure we'll take some time to tour the city after the conference.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-1412346011688148988?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/1412346011688148988/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=1412346011688148988' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/1412346011688148988'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/1412346011688148988'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2009/04/rocky-mountain-adobe-camp-june-22nd.html' title='Rocky Mountain Adobe Camp, June 22nd'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-7845162419151207108</id><published>2009-04-06T17:28:00.002-06:00</published><updated>2009-04-06T17:34:11.261-06:00</updated><title type='text'>CF United Express Denver Presentation</title><content type='html'>This afternoon I gave a presentation on the Flex 3 Component Life-cycle at &lt;a href="http://express.cfunited.com/go/denver/2009/topics"&gt;CF United Express in Denver&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;We had a good group at the talk who did an amazing job of keeping up as we blazed through the material!  We had to skip some things at the end, as this presentation was originally 80 minutes long (condensed to 60 for CF United Express) and because I was 10 minutes late (blame it on my calendar.)&lt;br /&gt;&lt;br /&gt;All in all it was really fun, and I'm really glad I had the opportunity to present.&lt;br /&gt;&lt;br /&gt;Here are the slides from that presentation:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="width: 425px; text-align: left;" id="__ss_1256782"&gt;&lt;a style="margin: 12px 0pt 3px; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; display: block; text-decoration: underline;" href="http://www.slideshare.net/rjowen/component-life-cycle?type=powerpoint" title="Adobe Flex 3 Component Life Cycle"&gt;Adobe Flex 3 Component Life Cycle&lt;/a&gt;&lt;object style="margin: 0px;" height="355" width="425"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=componentlifecycle-090406182303-phpapp02&amp;amp;stripped_title=component-life-cycle"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=componentlifecycle-090406182303-phpapp02&amp;amp;stripped_title=component-life-cycle" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size: 11px; font-family: tahoma,arial; height: 26px; padding-top: 2px;"&gt;View more &lt;a style="text-decoration: underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration: underline;" href="http://www.slideshare.net/rjowen"&gt;rjowen&lt;/a&gt;.&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;I'm going to be speaking in August at the full-blooded &lt;a href="http://cfunited.com/"&gt;CF United event in Leesburg, VA&lt;/a&gt;, on the how the Component Life-cycle and the rest of component development changes in Flex 4.  If you're in the area or up for a good time, get yourself there and check it out!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-7845162419151207108?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/7845162419151207108/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=7845162419151207108' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7845162419151207108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7845162419151207108'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2009/04/cf-united-express-denver-presentation.html' title='CF United Express Denver Presentation'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-2897546461194051858</id><published>2009-03-11T16:27:00.002-06:00</published><updated>2009-03-11T16:29:45.514-06:00</updated><title type='text'>the new ipod shuffle and bad design</title><content type='html'>The new ipod shuffle interface is completely confusing and totally non-intuitive.  Bring back the old one, with buttons that made sense and the ability to plug in any headphones I want. &lt;br /&gt;&lt;br /&gt;Engadget says it best:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.blogcdn.com/www.engadget.com/media/2009/03/3-11-09ipodwar3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 513px; height: 536px;" src="http://www.blogcdn.com/www.engadget.com/media/2009/03/3-11-09ipodwar3.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-2897546461194051858?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/2897546461194051858/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=2897546461194051858' title='11 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2897546461194051858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2897546461194051858'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2009/03/new-ipod-shuffle-and-bad-design.html' title='the new ipod shuffle and bad design'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>11</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-8389590318593851205</id><published>2009-01-23T15:28:00.002-07:00</published><updated>2009-01-23T15:33:23.031-07:00</updated><title type='text'>Things I will never need</title><content type='html'>1.  More than one clock on my desktop&lt;br /&gt;2.  An analog clock on my computer or phone, anywhere&lt;br /&gt;3.  Small widgetized forms of old games (block breaker, that picture shuffle thing) I never enjoyed in their original form cluttering up my desktop&lt;br /&gt;4.  Cover flow for just about anything&lt;br /&gt;5.  Transparent or semi-transparent windows that lock themselves on top of other windows&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-8389590318593851205?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/8389590318593851205/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=8389590318593851205' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8389590318593851205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8389590318593851205'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2009/01/things-i-will-never-need.html' title='Things I will never need'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-5018654464724756317</id><published>2008-12-17T12:34:00.002-07:00</published><updated>2008-12-17T12:34:52.267-07:00</updated><title type='text'>MAX slides posted to Slideshare, embedded here</title><content type='html'>Slides from my presentation at MAX titled "A Deep Dive Into the Flex 3 Framework" are available up on slideshare:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="width:425px;text-align:left" id="__ss_853797"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/rjowen/flex3-deep-dive-final-presentation?type=powerpoint" title="Flex3 Deep Dive Final"&gt;Flex3 Deep Dive Final&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=flex3deepdivefinal-1229531680374945-1&amp;amp;stripped_title=flex3-deep-dive-final-presentation"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=flex3deepdivefinal-1229531680374945-1&amp;amp;stripped_title=flex3-deep-dive-final-presentation" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View SlideShare &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/rjowen/flex3-deep-dive-final-presentation?type=powerpoint" title="View Flex3 Deep Dive Final on SlideShare"&gt;presentation&lt;/a&gt; or &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/upload?type=powerpoint"&gt;Upload&lt;/a&gt; your own. (tags: &lt;a style="text-decoration:underline;" href="http://slideshare.net/tag/flex"&gt;flex&lt;/a&gt; &lt;a style="text-decoration:underline;" href="http://slideshare.net/tag/adobe"&gt;adobe&lt;/a&gt;)&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;We got great reception and generally good reviews for this presentation, but some people were underwhelmed.  Some thought that the "deep dive" didn't dive quite as deeply as they would have liked, and others thought the title was misleading.  I agree with you on both accounts. :)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Matt Chotin actually picked the title and by the time we put the talk together it was too late to change it.  A better title might have been "Flex 3 Junk Drawer: something things you never knew about classes you use all the time."&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Balancing the depth of a talk like this is difficult.  We needed to give some "intro" level discussion for people who are new to Flex, but we also wanted to dive "deep" into some topics people hadn't learned before.  In the end, I really wish I would've had time to dive deeper into the style manager, but I thought Brad's presentation of Collections and Binding were both really good.  It's difficult to go too deep into the SystemManager, since it's not a class many people interact with.  I was hoping that information on how it works (particularly the section on the structure of the Flex-produced swf file) would be helpful all by itself, since it's a very interesting topic that most developers get away with never touching.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In our section on Data Binding we mentioned a talk given by Michael Labriola at 360 Flex San Jose.  Michael also has those slides on slideshare, but I thought it more appropriate to &lt;a href="http://blogs.digitalprimates.net/codeslinger/index.cfm?mode=entry&amp;amp;entry=E183CFC3-FFF8-98FF-6D00B91ADAB60593"&gt;link you to his post on the Digital Primates&lt;/a&gt; blog rather than embedding them myself.  This is by far the best discussion I've ever heard on Binding, and I'd encourage every one, even those who consider themselves experts in Flex, to take a look.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;All in all, I thought the MAX talk went pretty well.  60 minutes is a pretty short time to co-present something as blended as this talk, and I think we provided value to our attendees.  If you attended and have more feedback I'd love to hear it, or if you've just checked out the slides and have questions or feedback, please let me know.  I want to know how to make these talks better!  rj dot owen at effectiveui.com.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-5018654464724756317?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/5018654464724756317/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=5018654464724756317' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5018654464724756317'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5018654464724756317'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/12/max-slides-posted-to-slideshare.html' title='MAX slides posted to Slideshare, embedded here'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-5183639726755120060</id><published>2008-12-13T21:02:00.002-07:00</published><updated>2008-12-13T21:06:20.880-07:00</updated><title type='text'>Keep It Simple, CNet</title><content type='html'>&lt;a href="http://news.cnet.com/8301-17939_109-10120401-2.html?tag=mncol;txt"&gt;CNet's Don Reisinger completely misses the point&lt;/a&gt;.  It's specifically the LACK of all these additional features that makes Twitter popular.  Same goes for &lt;a href="http://news.cnet.com/8301-17939_109-10121446-2.html?tag=rtcol;newsNow"&gt;Facebook&lt;/a&gt;.  I don't WANT a social networking tool that specifically enables authors to upload their work.  Have they ever seen a blog?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-5183639726755120060?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/5183639726755120060/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=5183639726755120060' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5183639726755120060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5183639726755120060'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/12/keep-it-simple-cnet.html' title='Keep It Simple, CNet'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-5967418190362289193</id><published>2008-12-05T23:39:00.004-07:00</published><updated>2008-12-05T23:54:04.601-07:00</updated><title type='text'>Spore's DRM backfires, makes it most downloaded game of the year</title><content type='html'>&lt;a href="http://techdirt.com/articles/20081205/1533083035.shtml"&gt;TechDirt is reporting&lt;/a&gt; that Spore's insanely draconian DRM, much the bane of every video-gamer interested in the game, has completely backfired and made the game the most downloaded (the hacked version) this year despite being out only a few months.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When you look at the issue from a customer experience perspective, the DRM controversy is a no-brainer, and DRM loses.  DRM provides absolutely no value to customers - only pain.  Probably more than any other medium, video games are successful only when they create good and immersive experiences.  Furthermore, gamers are probably one of the more passionate demographics out there - they know they know what a good gaming experience looks like, and they get passionately involved in them.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Starting players off with a frustrating registration process and then subjecting them to the restraints of a silly DRM system is a pretty good recipe for pissing people off, and in this case EA's customers have made their frustration loudly known.  Some paying customers have downloaded the hacked version to avoid the DRM, and a few and even &lt;a href="http://www.techdirt.com/articles/20080924/1831242364.shtml"&gt;filed a class action lawsuit&lt;/a&gt; against EA.  Sony had similar problems back when it &lt;a href="http://en.wikipedia.org/wiki/2005_Sony_BMG_CD_copy_protection_scandal"&gt;published music CD's with rootkits&lt;/a&gt;, but they've since recanted - hopefully EA will see the benefit of good customer service and quit this sort of nonsense.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Until they do, I won't be buying any EA games.  Companies like EA (and on a larger scale, the entire entertainment industry) need to hear loud and clear that we won't put up with this.  Every part of the user experience matters, and those that unnecessarily subject we-the-customers to this degree of frustration should be shunned like the plague.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-5967418190362289193?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/5967418190362289193/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=5967418190362289193' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5967418190362289193'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5967418190362289193'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/12/spores-drm-backfires-makes-it-most.html' title='Spore&apos;s DRM backfires, makes it most downloaded game of the year'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-6752523106141925291</id><published>2008-12-03T10:24:00.003-07:00</published><updated>2008-12-03T10:28:42.274-07:00</updated><title type='text'>WWII as an RTS</title><content type='html'>This is just about the funniest thing I've seen in a while - WWII as an RTS game:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://i134.photobucket.com/albums/q83/BVIChester/hitlernoobs.gif"&gt;The animated version&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.scatteredthoughts.org/2005/09/30/world-war-ii-the-chat-log/"&gt;The chat log&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here's a sample:&lt;/div&gt;&lt;div&gt;...&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px; line-height: 20px; "&gt;*Roosevelt has joined the game.*&lt;br /&gt;*Stalin has joined the game.*&lt;br /&gt;*deGaulle has joined the game.*&lt;br /&gt;Roosevelt: hey sup&lt;br /&gt;T0J0: y0&lt;br /&gt;Stalin: hi&lt;br /&gt;Churchill: hi&lt;br /&gt;Hitler[AoE]: cool, i start with panzer tanks!&lt;br /&gt;paTTon: lol more like panzy tanks&lt;br /&gt;T0JO: lol&lt;br /&gt;Roosevelt: o this fuckin sucks i got a depression!&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px; line-height: 20px;"&gt;...&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px; line-height: 20px;"&gt;And it goes on from there. :)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-6752523106141925291?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/6752523106141925291/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=6752523106141925291' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6752523106141925291'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6752523106141925291'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/12/this-is-just-about-funniest-thing-ive.html' title='WWII as an RTS'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-2589563396477616478</id><published>2008-11-20T16:27:00.002-07:00</published><updated>2008-11-20T16:34:55.216-07:00</updated><title type='text'>10 reasons I hate CafePress</title><content type='html'>&lt;div&gt;In no particular order....&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;10. Their usage policies are vague and arbitrarily enforced.  Campaign materials for both candidates were featured on the home page, but technically anything featuring the likeness of a celebrity is in violation.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;9. Their web interface is poorly designed, and requires far too many page refreshes for the world of web 2.0 to deal with.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;8. They don't let you see records of sales for periods less than 3 months.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;7. If you make less than $25 on your account, they never pay you&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;6. There's no easy way to change the design on all of your products at once; you have to do it for each individually.  Want to resize that image on the 20 different types of shirts you sell?  Better block off an hour.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;5. The ability to design shirts is ridiculously constrained.  You can upload small images that will be displayed in small areas on the front and back only.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4. It's really expensive.  $12 for a plain white t-shirt.  You only get a percentage of your mark-up.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. Their customer service is frustrating.  When one of your images gets blocked, you receive a completely un-informative form email informing you of the block without telling you why.  It's up to you to guess and then reply with reasons they should turn your account back on.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. They require your social security number "for tax purposes" when it's likely they'll never send you a check.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. DesignAShirt.com and CustomInk.com are easier to remember.  It's weak, but I needed a 10th.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-2589563396477616478?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/2589563396477616478/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=2589563396477616478' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2589563396477616478'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2589563396477616478'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/11/10-reasons-i-hate-cafepress.html' title='10 reasons I hate CafePress'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-3848965141645039741</id><published>2008-11-11T14:29:00.001-07:00</published><updated>2008-11-11T14:30:51.187-07:00</updated><title type='text'>Watch Scott Adam's draw Dilbert</title><content type='html'>A cool insight into the way technology has innovated drawing comics.  Scott uses Photoshop and a really cool drawing touch screen.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The video is on Amazon, who of course doesn't let me embed it.  You have to visit the link so they can try to sell you the new Dilbert book. :)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.amazon.com/gp/mpd/permalink/m3RDBXZLJ5QU57"&gt;http://www.amazon.com/gp/mpd/permalink/m3RDBXZLJ5QU57&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-3848965141645039741?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/3848965141645039741/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=3848965141645039741' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3848965141645039741'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3848965141645039741'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/11/watch-scott-adams-draw-dilbert.html' title='Watch Scott Adam&apos;s draw Dilbert'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-4865761416711471880</id><published>2008-11-07T10:06:00.005-07:00</published><updated>2008-11-07T10:11:33.532-07:00</updated><title type='text'>Adobe ADC email FAIL</title><content type='html'>Like the rest of you in the Adobe Developer Community, I got this email this morning:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;!--StartFragment--&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:11pt"&gt;&lt;blockquote&gt;"Dear RJ,&lt;br /&gt;&lt;br /&gt;introNetworks has sent you an introMail regarding: IMPORTANT MESSAGE&lt;br /&gt;&lt;br /&gt;Please log in here &lt;&lt;span style="color:#0000FF;"&gt;&lt;u&gt;&lt;a href="http://adc.intronetworks.com"&gt;http://adc.intronetworks.com&lt;/a&gt;&lt;/u&gt;&lt;/span&gt;&gt;  to retrieve your messages.&lt;br /&gt;&lt;br /&gt;Sincerely,&lt;br /&gt;&lt;br /&gt;The Adobe Developer Connection team"&lt;/blockquote&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 15px;"&gt;SPOILER ALERT: The special message was this:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;IMPORTANT MESSAGE &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Please note that as of November 10, 2008 the Adobe Developer Connection introNetworks application will no longer be available.  Be sure to copy any important content or contacts you want to save prior to that date.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you have any questions or concerns email Edward Sullivan at esulliva@adobe.com.&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 15px;"&gt;Why the hell did I have to log in to your system for that?  Why couldn't you just email me that important message in the first place?  There's nothing remotely important or secret about it.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 15px;"&gt;Making people login, remember passwords, etc. unnecessarily is a huge user-experience FAIL.  Most likely the reason you're canceling the ADC is that none of us have logged in since MAX last year.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-4865761416711471880?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/4865761416711471880/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=4865761416711471880' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4865761416711471880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4865761416711471880'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/11/adobe-adc-email-fail.html' title='Adobe ADC email FAIL'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-689153290232683705</id><published>2008-10-21T17:33:00.003-06:00</published><updated>2008-10-21T17:50:41.565-06:00</updated><title type='text'>MAX 2008 game: Rescue Princess Chotin!</title><content type='html'>&lt;div style="text-align: left;"&gt;Near the end of this past summer, our intern Scott had very little to do and wanted to learn some Actionscript.  He'd been here all of four weeks, hired on to help do some last minute HR and pre-screen interview candidates.  We came up with a project that had very few requirements:&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1.) Make a game,&lt;/div&gt;&lt;div&gt;2.) featuring the FlexBot,&lt;/div&gt;&lt;div&gt;3.) that somehow involves Matt Chotin.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Scott really exceeded our expectations.  First, he de-compiled the root max.adobe.com swf to get a real animation of the FlexBot walking back and forth, which is no small task for someone with just about zero Flash experience going into the project.  Then he coded up a simple game where the 'bot can shoot lightning (press "shift"), fight "bugs", and ultimately take on a deranged version of the PhotoShop Penguin who's taken "Princess" Matt Chotin hostage for undisclosed reasons.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://labs.effectiveui.com/games/max/MAXGameDemo.html"&gt;&lt;img src="http://4.bp.blogspot.com/_opS9Z5vqQYQ/SP5oXgR1jRI/AAAAAAAAANg/E_V-a94ZgyY/s400/Picture+12.png" border="0" alt="" style="display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; width: 400px; " /&gt;&lt;/a&gt;&lt;div&gt;It's pretty great - click the image above to go give it a spin.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-689153290232683705?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/689153290232683705/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=689153290232683705' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/689153290232683705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/689153290232683705'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/10/max-2008-game-rescue-princess-chotin.html' title='MAX 2008 game: Rescue Princess Chotin!'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_opS9Z5vqQYQ/SP5oXgR1jRI/AAAAAAAAANg/E_V-a94ZgyY/s72-c/Picture+12.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-6072544804527067312</id><published>2008-09-17T17:35:00.005-06:00</published><updated>2008-09-19T18:20:31.293-06:00</updated><title type='text'>Our 360 Flex Presentation is online!</title><content type='html'>Here you go!  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thanks to &lt;a href="http://www.onflex.org/"&gt;Ted Patrick&lt;/a&gt; for getting this up and posting it on his blog.  I've been watching the 360 Flex RSS feed on Adobe Media Player for weeks now and never saw it, but Ted has it posted.  Enjoy, and please give us your feedback!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;embed src="http://services.brightcove.com/services/viewer/federated_f8/1596744118" bgcolor="#FFFFFF" flashvars="videoId=1743188617&amp;amp;playerId=1596744118&amp;amp;viewerSecureGatewayURL=https://console.brightcove.com/services/amfgateway&amp;amp;servicesURL=http://services.brightcove.com/services&amp;amp;cdnURL=http://admin.brightcove.com&amp;amp;domain=embed&amp;amp;autoStart=false&amp;amp;" base="http://admin.brightcove.com" name="flashObj" width="486" height="412" seamlesstabbing="false" type="application/x-shockwave-flash" swliveconnect="true" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I've posted the slides&lt;a href="http://www.slideshare.net/rjowen/adobe-flex-component-lifecycle-presentation/"&gt; on SlideShare here&lt;/a&gt;.  Email me at rj {dot} owen at effecitveui.com if you want the originals to use for yourself.  Please feel free to use these at user groups, conferences, or to impress attractive members of the opposite sex.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-6072544804527067312?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/6072544804527067312/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=6072544804527067312' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6072544804527067312'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6072544804527067312'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/09/our-360-flex-presentation-is-online.html' title='Our 360 Flex Presentation is online!'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-5830662559892871820</id><published>2008-09-13T02:36:00.004-06:00</published><updated>2008-09-13T02:45:08.658-06:00</updated><title type='text'>Microsoft Surface in the house</title><content type='html'>I'm happy to announce today that our embargo on surface blogging has been dropped, and I can announce that we upgraded our standard coffee table to a Microsoft Surface about two months ago and have started developing some basic applications for it.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The surface comes loaded with some pretty basic applications to start - a small keyboard, some applications to demo its ability to display, resize, and manipulate photos, four-way pong, a few basic test apps showing the types of information it can process, and a water simulation that ripples when touched.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;My reactions thus far have been pretty mixed.  On the one hand, nothing about the surface feels sleek, elegant, or in any way portable - it's huge and heavy - but it's alpha technology at this point and meant to be a table, so all of that should be forgiven.  It uses a camera to detect multi-touch (as opposed to pressure or heat in other devices), which has some real benefits: it's able to detect and react to many objects other than the human hand.  While the test applications aren't anything very impressive, they're fun and so intuitive that the technology is invisible, and that's what good user experience is all about.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Another thing that's worth mentioning is how helpful Microsoft has been in learning to program for the Surface.  We identified a few employees really interested in doing R&amp;amp;D work on the surface, and Microsoft did a lot to bring them up to speed, including conducting a special training session for them in Redmond.  Say what you will about office or Windows - Microsoft knows how to treat developers.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I'm pretty excited to see what our team comes up with for the surface.  Interfaces like this are going to be everywhere in the not-too-distant future, and it's exciting to be working with some of that technology now.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you're in Denver and interested, stop by our office sometime and check it out.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-5830662559892871820?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/5830662559892871820/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=5830662559892871820' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5830662559892871820'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5830662559892871820'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/09/microsoft-surface-in-house.html' title='Microsoft Surface in the house'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-3959577579178136443</id><published>2008-09-09T15:38:00.002-06:00</published><updated>2008-09-09T15:44:26.756-06:00</updated><title type='text'>Apple did what?</title><content type='html'>For a company who's touted as having nailed user experience through simplicity, Apple's new set of iPod features are very confusing.  Here's a list of things we never wanted in our iPod, and the exclusion of which made the iPod so successful during it's early days:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;- voice recording on the Nano&lt;/div&gt;&lt;div&gt;- 10 different colors to choose from&lt;/div&gt;&lt;div&gt;- "Shake to Shuffle"&lt;/div&gt;&lt;div&gt;- lots and lots of different price points&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The voice recording is specifically weird.  Apple's been praised by numerous analysts specifically for NOT including that feature.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The most recent place I read about this was in &lt;a href="http://www.youtube.com/watch?v=2UtcRB3KWyg"&gt;Subject to Change&lt;/a&gt; - &lt;a href="http://adaptivepath.com/"&gt;Adaptive Path's&lt;/a&gt; book / video on building user experience design into your company's process and culture.  The iPod and iPhone are case studies in simplicity - in being late to market, and beating your competition by offering fewer features in better integrated systems.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I guess Apple's moved out of the "user experience" stage into the "repeat buyer" stage - they've come to dominate the market, and now they need a new gimmick to get all of their existing iPod customers to buy another.  I'm sorry, Steve - the new colors are cool and all, but at the end of the day the features I really care about haven't changed.  I don't need another one.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-3959577579178136443?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/3959577579178136443/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=3959577579178136443' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3959577579178136443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3959577579178136443'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/09/apple-did-what.html' title='Apple did what?'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-6101718376008615503</id><published>2008-08-22T10:46:00.003-06:00</published><updated>2008-08-22T10:51:36.858-06:00</updated><title type='text'>John Wilker joins EffectiveUI!</title><content type='html'>I'm happy to welcome John Wilker (of 360Flex fame) to EffectiveUI.  John made &lt;a href="http://www.johnwilker.com/j/index.cfm/2008/8/22/My-next-new-adventure-begins"&gt;the announcement&lt;/a&gt; this morning on his blog and is going to be something called a "Community Evangelist."  &lt;a href="http://twitter.com/scalenine"&gt;Juan Sanchez&lt;/a&gt; is reportedly working on his &lt;a href="http://www.thetractstore.com/?gclid=CLODsOjzoZUCFQ8QagodQincjw"&gt;tracts&lt;/a&gt; right now.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;John's going to bring a lot to solidifying the community events that EffectiveUI is involved in.  A lot of us are doing a lot of independent and disorganized work to help broaden the RIA market, educate the Flex community, and promote the applications EffectiveUI builds and the brands we work with.  John's going to bring some much-needed focus to that, and I'm really excited to see what happens.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Welcome, John!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-6101718376008615503?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/6101718376008615503/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=6101718376008615503' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6101718376008615503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6101718376008615503'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/08/john-wilker-joins-effectiveui.html' title='John Wilker joins EffectiveUI!'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-3999065691740616991</id><published>2008-08-15T11:57:00.002-06:00</published><updated>2008-08-15T11:58:09.745-06:00</updated><title type='text'>Using Photographs to Enhance Video</title><content type='html'>Really amazing video about a new video-enhancement technique using still photographs.  Thanks to Zach Pinter for sending this out:&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;object width="400" height="300"&gt; &lt;param name="allowfullscreen" value="true" /&gt; &lt;param name="allowscriptaccess" value="always" /&gt; &lt;param name="movie" value="http://www.vimeo.com/moogaloop.swf?clip_id=1513129&amp;amp;server=www.vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" /&gt; &lt;embed src="http://www.vimeo.com/moogaloop.swf?clip_id=1513129&amp;amp;server=www.vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;a href="http://www.vimeo.com/1513129?pg=embed&amp;amp;sec=1513129"&gt;Using Photographs to Enhance Videos of a Static Scene&lt;/a&gt; from &lt;a href="http://www.vimeo.com/pravin?pg=embed&amp;amp;sec=1513129"&gt;pro&lt;/a&gt; on &lt;a href="http://vimeo.com?pg=embed&amp;amp;sec=1513129"&gt;Vimeo&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-3999065691740616991?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/3999065691740616991/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=3999065691740616991' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3999065691740616991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3999065691740616991'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/08/using-photographs-to-enhance-video.html' title='Using Photographs to Enhance Video'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-7523466365260082272</id><published>2008-08-05T12:06:00.004-06:00</published><updated>2008-08-05T12:22:09.689-06:00</updated><title type='text'>What the heck, Aurora?</title><content type='html'>&lt;object width="400" height="225"&gt; &lt;param name="allowfullscreen" value="true"&gt; &lt;param name="allowscriptaccess" value="always"&gt; &lt;param name="movie" value="http://www.vimeo.com/moogaloop.swf?clip_id=1450211&amp;amp;server=www.vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1"&gt; &lt;embed src="http://www.vimeo.com/moogaloop.swf?clip_id=1450211&amp;amp;server=www.vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="225"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;Ryan Stewart:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;a href="http://adaptivepath.com/aurora/" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;Aurora&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt; is &lt;/span&gt;&lt;/span&gt;&lt;a href="http://www.techcrunch.com/2008/08/04/adaptive-path-releases-aurora-to-inspire-and-engage-community/" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px;"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;a new “inspire” concept by Adaptive Path and Mozilla&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt; to give people a look at what the browser looks like in the future. It’s awesome. The user interface is great, it has lots of important visual queues, and it enables real time collaboration and user generated content."&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;span class="Apple-style-span"  style="line-height: 16px; white-space: normal; font-family:'-webkit-sans-serif';"&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="line-height: 16px; font-family:-webkit-sans-serif;"&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;Wow, Ryan.  Awesome?  Really? I couldn't disagree with you more on this.  I'm really surprised this came from Adaptive Path - I really expect a little more from those guys.  &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;THE GOOD&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;using the Z-axis for time&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;blurring the online/offline aspects and moving online content to the desktop &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;THE BAD: &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt; Holy clutter Batman! This is simply not a well organized interface. With things moving around and being hidden and lots of weird symbols to memorize (that petal-of-dots interface makes zero sense), it looks like it's set up for a very awkward and confusing user experience.  ORGANIZE my data - show me more files in a more organized way.  The last thing I want is a dock on every side of my screen and a giant cloud of content on my desktop.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;What's with that giant arm thing she's holding?  There aren't any interactions she does that benefit from the huge peripheral.  I think there's huge untapped potential in new interfaces and peripherals to power them.  This simply doesn't cut it - it's a step backwards from my mouse and keyboard.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;What's with all those annoying sounds?  There's a reason we stopped doing those back in 1995 - they're horribly distracting.  The last thing I want when I click something is for it to yell back, in some insanely happy voice, "HI! THANKS FOR CLICKING ME! LET'S PLAY!"  Sounds should be used quite sparingly, and when they are, they should be as short and simple as possible.  The quiet mouse "click" is about as intense as most of us can handle.&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;Real-time collaboration is really distracting.  The last thing I need is a bunch of people trying to voice chat me all day.  IM and email are great because they're passive communication - we don't need to collaborate on everything all the time.  If you want to enhance the way we collaborate and communicate, try organizing and consolidating all our passive communication forms into a more centralized hub.&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;Why the heck would you demonstrate your awesome next-gen design ideas in a video featuring farmers arguing about rainfall?&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(153, 153, 153);"&gt;In conclusion, please don't make me use that thing.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-7523466365260082272?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/7523466365260082272/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=7523466365260082272' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7523466365260082272'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7523466365260082272'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/08/what-heck-aurora.html' title='What the heck, Aurora?'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-1905641487662128850</id><published>2008-07-20T08:44:00.002-06:00</published><updated>2008-07-20T08:53:13.290-06:00</updated><title type='text'>Maikel Sibbald Joins EffectiveUI</title><content type='html'>This announcement is long overdue.  About a month ago, one of the most talented underground 3d Flex developers I've ever seen joined EffectiveUI.  His name is Maikel Sibbald, and he runs the popular &lt;a href="http://labs.flexcoders.nl/"&gt;labs.flexcoders.nl&lt;/a&gt; blog.  If the URL didn't give it away, Maikel lives in the Netherlands, where he has two sons and a lot of tatoos, but is currently visiting Denver.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Maikel's hiring a EffectiveUI is a funny story that speaks to the power of taking initiative.  Maikel's a proficient Away3D programmer, and after seeing some of the stuff we did for Discovery Earth Live he decided to &lt;a href="http://labs.flexcoders.nl/2008/02/12/flex-away3d-sample-3/"&gt;copy it's globe&lt;/a&gt;.  We discovered Maikel because of the copy, started talking, and the rest is history.  The motto of Maikel's story is simple: if you want to get a cool job at a sweet RIA company, copy some of their work.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Maikel joins a few other EffectiveUI Europe team members, including his fellow degrafa-contributor &lt;a href="http://flexibleexperiments.wordpress.com/"&gt;Jason Hawryluk&lt;/a&gt;, who lives in France.  On behalf of everyone, welcome to the team, and sorry I didn't blog about you a month ago. :)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-1905641487662128850?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/1905641487662128850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=1905641487662128850' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/1905641487662128850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/1905641487662128850'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/07/maikel-sibbald-joins-effectiveui.html' title='Maikel Sibbald Joins EffectiveUI'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-2252231528366129662</id><published>2008-07-18T14:58:00.002-06:00</published><updated>2008-07-18T15:03:32.333-06:00</updated><title type='text'>ebay desktop hits 1 million downloads!</title><content type='html'>&lt;!--StartFragment--&gt;&lt;span style="font-family:Calibri, Verdana, Helvetica, Arial;"&gt;&lt;span style="font-size:11pt"&gt;&lt;div&gt;Today it was announced that eBay desktop reached 1 million downloads.  Mike Potter from Adobe, who had the initial idea for the application and got us involved, wrote a great &lt;a href="http://www.riapedia.com/2008/07/18/ebay_desktop_reaches_1_million_downloads"&gt;summary&lt;/a&gt; of it on his blog, which I've reprinted here:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;"&lt;span class="Apple-style-span" style="color: rgb(81, 93, 82); font-family: Verdana; font-size: 12px; line-height: 20px; "&gt;Earlier this week the &lt;a href="http://desktop.ebay.com/" rel="nofollow" style="color: rgb(199, 0, 0); text-decoration: none; "&gt;eBay desktop&lt;/a&gt; was &lt;a href="http://ebayinkblog.com/2008/07/17/ebay-desktop-turns-1-million-steve-jobs-likes-meat-and-potatoes-ebay-iphone-app/" rel="nofollow" style="color: rgb(199, 0, 0); text-decoration: none; "&gt;downloaded for the 1 millionth time&lt;/a&gt;. That's a great accomplishment for one of the first AIR apps that's been developed.&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="color: rgb(81, 93, 82); font-family: Verdana; font-size: 12px; line-height: 20px; "&gt;&lt;p style="margin-top: 0.6em; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;That application was originally built by a summer intern of mine, Charles Bihis, who is now working at Adobe in Seattle. He developed the initial &lt;a href="http://code.google.com/p/as3ebaylib/" rel="nofollow" style="color: rgb(199, 0, 0); text-decoration: none; "&gt;AS 3 APIs&lt;/a&gt; and a very earlly alpha version of eBay Desktop. The team at &lt;a href="http://www.effectiveui.com/" rel="nofollow" style="color: rgb(199, 0, 0); text-decoration: none; "&gt;effectiveUI&lt;/a&gt; took the project on after a conversation I had with them in a bus in San Francisco after the first Adobe component developer summit run by &lt;a href="http://onflex.org/" rel="nofollow" style="color: rgb(199, 0, 0); text-decoration: none; "&gt;Ted Patrick&lt;/a&gt;. They're the ones who have made it look so great and added most of the functionality that it has today.&lt;/p&gt;&lt;p style="margin-top: 0.6em; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;Congrats &lt;a href="http://alanlewis.typepad.com/" rel="nofollow" style="color: rgb(199, 0, 0); text-decoration: none; "&gt;Alan&lt;/a&gt; on the great success. The project would be dead without your great support."&lt;/p&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;span class="Apple-style-span" style="color: rgb(81, 93, 82); font-family: Verdana; font-size: 12px; line-height: 20px; "&gt;&lt;p style="margin-top: 0.6em; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;/p&gt;&lt;/span&gt;What a great testament to the success of AIR and the power of user experience.  eBay invested a lot of time, effort and money in user testing and getting user feedback, and as a result it continues to be one of the most successful applications I've ever been a part of.  Congrats to eBay for investing in their users!&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-2252231528366129662?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/2252231528366129662/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=2252231528366129662' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2252231528366129662'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2252231528366129662'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/07/ebay-desktop-hits-1-million-downloads.html' title='ebay desktop hits 1 million downloads!'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-2414844674341363899</id><published>2008-07-14T10:14:00.000-06:00</published><updated>2008-07-14T10:15:35.404-06:00</updated><title type='text'>360 Flex - closing fast</title><content type='html'>&lt;!--StartFragment--&gt;&lt;span style="font-family:Times New Roman;"&gt;&lt;span style="font-size:11pt"&gt;Title: I'm going to be at 360|Flex San Jose 2008, In August. You should be too!&lt;br /&gt;Body: I'll be speaking at 360|Flex! You should be attending so we can hang out! Tom and John are cool too! Register now!&lt;br /&gt;Link for "Register now": &lt;span style="color:#0000FF;"&gt;&lt;u&gt;&lt;a href="http://360flex.eventbrite.com"&gt;http://360flex.eventbrite.com&lt;/a&gt;&lt;/u&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-2414844674341363899?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/2414844674341363899/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=2414844674341363899' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2414844674341363899'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2414844674341363899'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/07/360-flex-closing-fast.html' title='360 Flex - closing fast'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-4872976275207581126</id><published>2008-07-11T10:18:00.002-06:00</published><updated>2008-07-11T10:24:44.569-06:00</updated><title type='text'>360Flex frags me</title><content type='html'>John Wilker and Tom Ortega caught up with me on XBox live, where it seems I dual-wield a nine-barreled shot-gun and the Sword Of Ultimate Truth.  Check out the hilarious &lt;a href="http://www.360conferences.com/360flex/2008/07/360flex-fragged-rj-owen-on-xboxlive.html"&gt;interview John and Tom put together&lt;/a&gt;, and then go &lt;a href="http://360flex.eventbrite.com/"&gt;register for 360Flex&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-4872976275207581126?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/4872976275207581126/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=4872976275207581126' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4872976275207581126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4872976275207581126'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/07/360flex-frags-me.html' title='360Flex frags me'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-166642624515676087</id><published>2008-07-02T11:21:00.007-06:00</published><updated>2008-07-07T16:37:06.725-06:00</updated><title type='text'>EffectiveUI and Discovery Channel win a Stevie</title><content type='html'>&lt;a href="http://www.effectiveui.com"&gt;EffectiveUI&lt;/a&gt; and &lt;a href="http://dsc.discovery.com/"&gt;Discovery Channel&lt;/a&gt; won an &lt;a href="http://www.stevieawards.com/pubs/awards/70_187_883.cfm"&gt;Stevie Award&lt;/a&gt; for "&lt;a href="http://www.stevieawards.com/pubs/awards/403_2436_17718.cfm"&gt;best web, software or programming design&lt;/a&gt;" for &lt;a href="http://dsc.discovery.com/guides/discovery-earth-live/discovery-earth-live.html"&gt;Discovery Earth Live&lt;/a&gt;.  The award was actually listed for Interface Design.&lt;br /&gt;&lt;br /&gt;Congratulations to the entire design team who contributed to this project, including Patrick Hansen, Bobby Jamison, and Jeremy Gratson.  Congratulations are also due to our development team, which consisted of Brad Umbaugh, Kevin Skrenes, and myself.  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Discovery Earth Live was a great example of the sort of designer/developer collobration I was &lt;a href="http://rjria.blogspot.com/2008/07/agile-ux-development.html"&gt;talking about yesterday&lt;/a&gt;: our designers made some initial mock-ups, but the entire design changed several times during development.  Design and Dev worked very closely to rapidly change the entire interface several times during the course of the project, and this award is a testament to the success of that method.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Congratulations also to the team at Discovery, including Andra Gregory, Lori Wark, Betty Chu and Randy Rieland, who brought the initial vision and contributed a wealth of great ideas to the process.  Discovery is a client who really knows exactly how to engage creative agencies and Discovery Earth Live's success is a testament to their hard work as well. &lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here's a video of Betty Chu from Discovery accepting the award:&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;object id="MediaPlayer" width="400" height="400" classid="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95" standby="Loading Windows Media Player components..." type="application/x-oleobject"&gt;&lt;br /&gt;&lt;param name="FileName" value="videofilename.wmv"&gt;&lt;br /&gt;&lt;param name="autostart" value="false"&gt;&lt;br /&gt;&lt;param name="ShowControls" value="true"&gt;&lt;br /&gt;&lt;param name="ShowStatusBar" value="false"&gt;&lt;br /&gt;&lt;param name="ShowDisplay" value="false"&gt;&lt;br /&gt;&lt;embed type="application/x-mplayer2" src="http://thestevies.com/ABA08Video/46-EffectiveUI.wmv" name="MediaPlayer" width="400" height="400" showcontrols="1" showstatusbar="0" showdisplay="0" autostart="0"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-166642624515676087?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/166642624515676087/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=166642624515676087' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/166642624515676087'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/166642624515676087'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/07/effectiveui-and-discovery-channel-win.html' title='EffectiveUI and Discovery Channel win a Stevie'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-8144287706455194688</id><published>2008-07-01T10:02:00.005-06:00</published><updated>2008-07-01T10:16:27.238-06:00</updated><title type='text'>Agile UX Development?</title><content type='html'>Jeff Patton has an amazing post up about how to get started &lt;a href="http://www.agileproductdesign.com/blog/emerging_best_agile_ux_practice.html"&gt;adding Agile to UX Development practices&lt;/a&gt;.  Please ignore some of the more obvious typos, especially in the opening line. :)&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here at EffectiveUI, we've been trying for a while to work out our process. We started off with something that was very similar to the waterfall and have since gotten more agile, but it's still pretty undefined.  As we move towards more definition, a lot of us developers are pushing for less process and more software.  We believe that the only real metric for measuring and testing sofware ideas is software itself, and at times it sounds like what we're advocating is scraping the design process altogether.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We're not, and perhaps we get a little too excited sometimes.  Jeff's post is a great way to realistically approach Agile-like development with UX design in mind, and I highly recommend it for anyone in a similar situation.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The only real disagreement I have with Jeff's post is the strong distinction he makes between designers and developers.  Maybe that's necessary and appropriate in other fields, but I don't feel it has to be with RIA's, and I'm not the only one - this idea is months old and already agreed upon in our community.  I hate the idea of developing two time boxes behind.  I want to be involved in the design and involved in the feature validation.  I'm a part of this process too you know - not just the code monkey who builds whatever you geniuses think up. :)  He does go on to encourage a lot of collaboration, but I want to do more than just collaborate - I want to help design!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Lastly, this is what I think of the silly made up jargon word "ideate":&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/ziOG_GHNVq0&amp;hl=en"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/ziOG_GHNVq0&amp;hl=en" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-8144287706455194688?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/8144287706455194688/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=8144287706455194688' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8144287706455194688'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8144287706455194688'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/07/agile-ux-development.html' title='Agile UX Development?'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-3858257943532279931</id><published>2008-06-14T12:37:00.003-06:00</published><updated>2008-06-14T12:47:52.079-06:00</updated><title type='text'>The internet causes "staccato" attention spans?</title><content type='html'>&lt;div&gt;Yesterday a friend sent me a fascinating article by Nicholas Carr of The Atlantic entitled, &lt;a href="http://www.theatlantic.com/doc/200807/google"&gt;Is Google Making Us Stupid?&lt;/a&gt;  It's a great article that's definitely worth reading.  I think it brings up some good topics worth discussing, but Carr's insightful discussion is unfortunately lead astray by some common myths about the internet.  Here's my take on the article:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;At first it seems he's saying we don't have the ability to process information.  All of his admittedly unscientific stories at the beginning are about an inability to process information, mostly focused on a reduced attention span.  While he's right that the internet is helping to reduce our attention span, the idea that this impedes our ability to process is total bullshit.  It's bullshit because the internet encourages us to respond - blogging, twitter, email, facebook - the entire sharing and commenting on content encourages us to process information.  Our short attention spans require that we pack every sentence of that response with information, and the need for brevity requires even more processing.  It's also bullshit because the study he sites focuses on research students.  No one likes spending time researching information they don't need, so with the ability to quickly search articles of course research students read less.  This highlights a failure of the academic institution's idea of "research" far more than any problem on the internet.  Lastly, it's bullshit because he flat out contradicts this later in the article, around the time when he gets to google.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The real problem with the way we think post-internet is something he barely touches on - it's our inability to remember details.  He's certainly right that the internet changes the way we think and makes us more like computers, and he hits the nail on the head when he calls us processing units.  The real problem here isn't just the internet either - it's the technology that's sprung up around it. Our technology, from our laptops to iphones, encourage us to forget details like names, places, addresses, phone numbers, and rely on our machines.  The availability of information storage and rapid retrieval encourages us to forget, but it actually makes us process BETTER.  This should be his point - not that we can't bother to really read any more, but that we remember so little of the information we're basing our lives around.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There are ways to work against this within the confines of the internet.  First, forcing ourselves to respond, even in a short blog article, encourages us to remember.  Second, keeping a healthy balance on information is essential.  Third, we limit our use of the features that make us forget - there are some numbers in my cell phone I always dial because I want to ensure that I'll remember them if I lose my phone.  I loved the author's point at the end - that we ought to be skeptical of our own skepticism - and loved and agreed with every point he made about the way we criticize technological progress.  This bit was really refreshing - I haven't heard a good criticism of criticism in an anti-internet article in...forever.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Whether the internet, techonology, and computers make our lives better is certainly something worth debating.  You all know where I stand on this issue - I love the internet and I love technology - but I'll admit that it has some detrimental effects on my life.  Case in point: right now, I'm reading and responding to this article in my living room.  It's dinner time, and my wife has interrupted me at least three times to ask me questions I have to stop reading / writing and think about.  It's annoying to me, but it's my fault.  If this laptop and the ability to communicate and process and retrieve information were bound to my study, or if conversations like this were limited to times when we were all together in real life, I'd certainly be a more focused, sane, and probably happier person.  But that's not really the internet's fault - that's mine.  I need to use this tool wisely, and know when and how to limit myself.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;On that note, I look forward to your thoughts on the article. :)  Post 'em in the comments, if you please.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-3858257943532279931?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/3858257943532279931/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=3858257943532279931' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3858257943532279931'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3858257943532279931'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/06/internet-causes-staccato-attention.html' title='The internet causes &quot;staccato&quot; attention spans?'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-4524751380293624392</id><published>2008-06-03T13:41:00.005-06:00</published><updated>2008-12-09T10:56:55.226-07:00</updated><title type='text'>Announcing jobs @ effectiveui</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_opS9Z5vqQYQ/SEWg8bXi6iI/AAAAAAAAAIk/VvaWhKbdmcI/s1600-h/Picture+1.png"&gt;&lt;/a&gt;Know someone with RIA designer or developer skillz?  Bubble or not, web 2.0 is blowing up right now, and we're looking for top talent to keep on top of the work.  Today we're happy to announce &lt;a href="http://jobs.effectiveui.com/"&gt;jobs.effectiveui.com&lt;/a&gt; - a hip looking site that entrances, delights, and hopefully garners even more resumes than all these conferences we've been pimping ourselves at:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 238); "&gt;&lt;img src="http://3.bp.blogspot.com/_opS9Z5vqQYQ/SEWg8bXi6iI/AAAAAAAAAIk/VvaWhKbdmcI/s400/Picture+1.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5207745504122956322" style="display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; " /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Whether you're already a skilled RIA'er looking to join up with some cutting-edge pros or just getting into the business and looking to grow, give the site a look and, well, you know, &lt;a href="http://www.youtube.com/watch?v=PPsUmhqncAg"&gt;fax us your email address&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-4524751380293624392?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/4524751380293624392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=4524751380293624392' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4524751380293624392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4524751380293624392'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/06/announcing-jobs-effectiveui.html' title='Announcing jobs @ effectiveui'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_opS9Z5vqQYQ/SEWg8bXi6iI/AAAAAAAAAIk/VvaWhKbdmcI/s72-c/Picture+1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-2250030426293390581</id><published>2008-06-03T10:31:00.003-06:00</published><updated>2008-06-03T10:42:11.578-06:00</updated><title type='text'>WebMonkey is back in business!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://cache.valleywag.com/assets/resources/2008/05/webmonkey.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px;" src="http://cache.valleywag.com/assets/resources/2008/05/webmonkey.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Many old web one-dot-oh developers will remember &lt;a href="http://www.webmonkey.com/"&gt;Webmonkey&lt;/a&gt;: an active resource for all things related to web programming and an essential part of our early web development education.  It featured tutorials on every web technology under the sun as well as news about things going on in the web development world.  The tutorials were in depth, accessible, and interesting, and the content was always fresh.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Unlike many other "how-to" sites, Webmonkey was fun.  It had style, class, and the tutorials had just enough pizzaz to keep you interested in learning things like CSS, complex table layouts, and sax vs. dom (ah, those were the days.)  Like many of you, I was an avid reader and big fan of Webmonkey, and was sorry to see it fall by the wayside sometime after the bubble's bursting.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Well friends, I have good news: the monkey is back in business.  Wired announced in their magazine last month that the site had been updated and revamped, and after cruising around &lt;a href="http://www.webmonkey.com/"&gt;webmonkey.com&lt;/a&gt; a little I have to say it's looking good.  I'm excited to see Webmonkey's return, and you should be too.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Right now Webmonkey seems to be focused on the more standard, less-proprietary aspects of the web, be they Javascript or Rails.  Hopefully they'll embrace the Flash/Flex/AIR/Silverlight branches soon and get some content for us rich developers.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-2250030426293390581?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/2250030426293390581/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=2250030426293390581' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2250030426293390581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2250030426293390581'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/06/webmonkey-is-back-in-business.html' title='WebMonkey is back in business!'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-4264150403845909064</id><published>2008-05-21T16:22:00.007-06:00</published><updated>2008-12-09T10:56:55.893-07:00</updated><title type='text'>localToGlobal vs. contentToGlobal in Flex</title><content type='html'>&lt;div style="text-align: left;"&gt;If you hadn't heard, there are a set of functions in Flex called contentToGlobal and globalToContent that &lt;a href="http://www.craftymind.com/"&gt;Sean Christmann&lt;/a&gt; and I discovered this afternoon doing some hacking.  If you're ever using globalToLocal or localToGlobal, you probably should be using the analagous "content" versions instead.  Here's why.&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Let's say your application consists of two red boxes.  One of them is on your root or Application level stage, and the other is nested in a component who's x position is set to 5.  The Application level box is placed at x=10.  Let's say we want to make it so that both red boxes are at the same X position.  Since the box that contains the child is already 5 pixels from the left, we set our second red box's x to 5, combining for a total of 10.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 238); "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_opS9Z5vqQYQ/SDShlfCmY2I/AAAAAAAAAHk/0Apl0OIdkOk/s1600-h/step1.png"&gt;&lt;img src="http://2.bp.blogspot.com/_opS9Z5vqQYQ/SDShlfCmY2I/AAAAAAAAAHk/0Apl0OIdkOk/s400/step1.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5202961134879400802" style="display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; " /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;Rather than doing these calculations by hand, Flex has a set of helpful methods that make it easy.  Traditionally I would do this using the "globalToLocal" and "localToGlobal" methods.  To calculate the X value using these methods we'd traditionally do something like this inside of our child container:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;//get the application level red box's x coordinate&lt;/div&gt;&lt;div&gt;var box1_x : int = Application.application.box1.x;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;//convert this x value into a global coordinate&lt;/div&gt;&lt;div&gt;var pt : Point = new Point(box1_x, 0);&lt;/div&gt;&lt;div&gt;var box1_global_x : int = Application.application.localToGlobal(pt).x;&lt;/div&gt;&lt;div&gt;//note: since box 1 is on the "global" stage, localToGlobal shouldn't do anything.&lt;/div&gt;&lt;div&gt;//I've just included it here for completeness.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;//convert the global coordinate into our container's coordinate system&lt;/div&gt;&lt;div&gt;var pt2: Point = new Point(box1_global_x, 0);&lt;/div&gt;&lt;div&gt;var final_value : int = this.globalToLocal(pt2).x;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;These five steps convert the box's x value into a global point and then back from global into our container's local coordinate system.  Setting box 2's x value to our "final_value" gives the desired result, as shown above.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The problems start showing up when your child's container uses a border.  Let's say we give our container a border thickness of 2.  If we run the code above to set our box's x position, we wind up with something like this:&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 238);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_opS9Z5vqQYQ/SDSlTvCmY5I/AAAAAAAAAH8/Apmt0HXVxbM/s1600-h/step3.png"&gt;&lt;img src="http://3.bp.blogspot.com/_opS9Z5vqQYQ/SDSlTvCmY5I/AAAAAAAAAH8/Apmt0HXVxbM/s400/step3.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5202965227983233938" style="display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; " /&gt;&lt;/a&gt;&lt;div style="text-align: left;"&gt;Our second box renders displaced by a number of pixels equal to the border thickness from where we want it.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;This is because Flex containers place their children inside a nested container called a "contentPane."  Content panes are separate containers that have their own coordinate systems - think of it as a box within a box.  In the outer box the component renders borders.  All children and their content are renderered in the inner box - the content box.  globalToLocal and localToGlobal calculations use the container's root coordinate system (the "outer box").  Since children are rendered inside of the content pane, globalToLocal type calculations really aren't "local" to these children.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;The answer is to use contentToGlobal and globalToContent instead.  Replacing localToGlobal and globalToLocal in our previous example, the red box renders correctly, like this:&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_opS9Z5vqQYQ/SDSmhPCmY6I/AAAAAAAAAIE/nyVO9_IBYeA/s1600-h/step2.png"&gt;&lt;img src="http://1.bp.blogspot.com/_opS9Z5vqQYQ/SDSmhPCmY6I/AAAAAAAAAIE/nyVO9_IBYeA/s400/step2.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5202966559423095714" style="display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; " /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you don't have any borders or padding then the two boxes line up and localToGlobal / globalToLocal works just fine, but if you do have them, these methods will fail you because they're based on the "outer box" coordinate system and not the content pane.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-4264150403845909064?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/4264150403845909064/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=4264150403845909064' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4264150403845909064'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4264150403845909064'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/05/localtoglobal-vs-contenttoglobal-in.html' title='localToGlobal vs. contentToGlobal in Flex'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_opS9Z5vqQYQ/SDShlfCmY2I/AAAAAAAAAHk/0Apl0OIdkOk/s72-c/step1.png' height='72' width='72'/><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-25975506812026770</id><published>2008-05-16T16:23:00.002-06:00</published><updated>2008-12-09T10:56:56.119-07:00</updated><title type='text'>Intern Inside</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_opS9Z5vqQYQ/SC4Js_CmYzI/AAAAAAAAAHM/2UXMeJ5N_lo/s1600-h/InternInside.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_opS9Z5vqQYQ/SC4Js_CmYzI/AAAAAAAAAHM/2UXMeJ5N_lo/s400/InternInside.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5201105288100733746" /&gt;&lt;/a&gt;We've got an intern starting monday.  I made this sweet logo for his laptop and thought I'd share with all the other great geek interns out there.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-25975506812026770?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/25975506812026770/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=25975506812026770' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/25975506812026770'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/25975506812026770'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/05/interns-inside.html' title='Intern Inside'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_opS9Z5vqQYQ/SC4Js_CmYzI/AAAAAAAAAHM/2UXMeJ5N_lo/s72-c/InternInside.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-6697006249336530256</id><published>2008-05-14T23:11:00.002-06:00</published><updated>2008-05-14T23:15:22.303-06:00</updated><title type='text'>Flash Player 10 released</title><content type='html'>With &lt;a href="http://twitter.com/ryanstewart/statuses/811605172"&gt;Ryan Stewart hinting on Twitter&lt;/a&gt; about exciting news to come from Adobe tonight, I stayed up for a while and was rewarded to be one of the first to learn about the &lt;a href="http://labs.adobe.com/technologies/flashplayer10/"&gt;release of Flash Player 10&lt;/a&gt;.  I gave a full synopsis of it on &lt;a href="http://www.insideria.com/2008/05/adobe-announces-flash-player-1.html"&gt;InsideRIA&lt;/a&gt; so I won't repeat that here - check it out!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I can't get the &lt;a href="http://labs.adobe.com/technologies/flashplayer10/demos/pixelbender/"&gt;PixelBender&lt;/a&gt; to work in Safari - anyone else have any luck?&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-6697006249336530256?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/6697006249336530256/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=6697006249336530256' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6697006249336530256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6697006249336530256'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/05/flash-player-10-released.html' title='Flash Player 10 released'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-2084039993901683525</id><published>2008-04-30T12:29:00.003-06:00</published><updated>2008-04-30T12:41:58.406-06:00</updated><title type='text'>Joined the Twitter Reformation</title><content type='html'>&lt;a href="http://www.twitter.com/rjowen"&gt;I joined twitter&lt;/a&gt; this week after &lt;a href="http://www.37signals.com/svn/posts/992-hail-to-the-twitter"&gt;DHH was singing it's praises&lt;/a&gt;.  Interestingly enough, he wasn't on twitter himself at the time but&lt;a href="http://twitter.com/d2h"&gt; joined up two days later&lt;/a&gt; and had over 1,000 followers by Tuesday.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So far it's been good, but I can't help but feel like this is another social network that's going to dry out soon.  &lt;a href="http://twitter.com/bobspace"&gt;Robert Walton&lt;/a&gt; put it well:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;"Almost all of my friends are on Twitter now, which has become the new Facebook, which has become the new Myspace, which has become the new.."&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;My thoughts exactly.  Facebook was great for a few months but I never go there anymore.  It's too diversified...I don't need all the updates, I don't need another mailbox to check, and I definitely don't need another IM client (if you ask me, whenever a website introduces their own IM system it's a clear sign it's jumped the shark.)  I couldn't stand myspace from the beginning. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Twitter's boiled down feature set is all I want right now.  Twitter's really just a group chatroom where none of us are chatting with the same mix of people.  It's fun for today, but we'll see if it lasts.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-2084039993901683525?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/2084039993901683525/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=2084039993901683525' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2084039993901683525'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2084039993901683525'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/04/joined-twitter-reformation.html' title='Joined the Twitter Reformation'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-4666980286389695093</id><published>2008-04-26T11:07:00.000-06:00</published><updated>2008-04-26T11:08:42.495-06:00</updated><title type='text'>funny visualization by David Armano</title><content type='html'>The state of things:&lt;div&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px;" src="http://darmano.typepad.com/logic_emotion/images/2008/04/21/mc_marketing.jpg" border="0" alt="" /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-4666980286389695093?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/4666980286389695093/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=4666980286389695093' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4666980286389695093'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4666980286389695093'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/04/funny-visualization-by-david-armano.html' title='funny visualization by David Armano'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-3409686934109297390</id><published>2008-04-25T09:53:00.002-06:00</published><updated>2008-04-25T10:05:25.436-06:00</updated><title type='text'>Hire Healthy People</title><content type='html'>The Illustrious &lt;a href="http://en.wikipedia.org/wiki/David_Heinemeier_Hansson"&gt;DHH&lt;/a&gt; has a great post up on the 37Signals' blog about how he enjoys &lt;a href="http://www.37signals.com/svn/posts/996-hire-family-people"&gt;working with Family people&lt;/a&gt; that I really agree with, and not just because I'm now a family person myself.  The post really isn't about working with parents; it's about working with people who keep a healthy work-life balance.  Having immutable constraints on your time forces you to ignore the little details and get things done.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;One of the things we ask in our interview process here at Effective UI is whether or not you're involved in any extra-curricular activities (having a family certain counts.)  Regardless of what those are, it shows us you're probably forced to keep a healthy perspective on work when you're doing other things as well.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Another good characteristic of people who live outside of work that DHH didn't mention is that they know how to commit.  If you're committed to volunteering or playing soccer or doing anything that requires regularly sacrificing your time, it's more likely that you'll commit to our company and be a more enjoyable person to work with.  Being committed means you're more likely to enjoy your time with us, more likely to get involved in fixing company processes, and more likely to care about what happens to the rest of us.  No one concerned with company culture wants to hire a mercenary.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-3409686934109297390?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/3409686934109297390/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=3409686934109297390' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3409686934109297390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3409686934109297390'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/04/hire-healthy-people.html' title='Hire Healthy People'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-4917908653147465903</id><published>2008-04-25T01:30:00.004-06:00</published><updated>2008-04-25T01:43:33.074-06:00</updated><title type='text'>TypeRacer: Fun, fun, fun.</title><content type='html'>There's a lot of talk these days about "user experience" - how can we create great experiences that drive business results?  How can we tie people emotionally to our software?  What kinds of interfaces do people like to use?  What's the common denominator for the best applications out there?&lt;br /&gt;&lt;br /&gt;These questions have many answers, and the inquiry is certainly worthwhile.  But sometimes, I think, we get too hung up on the details.  We worry so much about technology choices and whether or not we can implement drag-and-drop/mashups/social networking/slick animations/3D that we forget about something pretty simple.  That's right, kids: we forget about fun.&lt;br /&gt;&lt;br /&gt;Not &lt;a href="http://play.typeracer.com"&gt;TypeRacer&lt;/a&gt;, though.  They didn't forget an ounce of the fun (full disclosure: I'm a sucker for typing games.  I remember my seventh grade typing class, and the inexplicable drive I felt to conquer the terrible IIgs typing game we played all class, every class.  Years later, I became hopelessly addicted to PopCap's &lt;a href="http://www.popcap.com/games/free/typershark"&gt;TyperShark&lt;/a&gt;).  Not since &lt;a href="http://www.isketch.net/isketch.shtml"&gt;iSketch&lt;/a&gt; have I been so hooked on an online game.  &lt;br /&gt;&lt;br /&gt;TypeRacer is dead simple: type in your name, wait for the green light, and type a pre-defined sentence as fast as you possibly can.  The faster you type, the faster your little VW Bug moves across the screen -- hopefully fast enough to beat all of the other players competing against you in the same heat.  I found myself playing over and over again -- "this is really my last game, for real this time" -- loving the feeling of waxing the chumps puttering across the screen at 25wpm (no offense, of course), and losing my cool when I get beat after mistyping strange words like "ultraviolence".&lt;br /&gt;&lt;br /&gt;But here's the beauty of it: it's crazy fun.  And there's hardly anything to it.  The technology?  HTML and Javascript.  That animation of the VW Bug moving across the screen?  Just an image getting moved about 50px at a time.  The login process?  Just type your name, no password required.  The spoils of victory?  An ever-shifting leader board (on which I was excited to find myself competing against the revered &lt;a href="http://weblog.jamisbuck.org/"&gt;Mr. Jamis Buck&lt;/a&gt;).  The sentences you type?  Repetitive at best.  &lt;br /&gt;&lt;br /&gt;But I'll tell you what, I can't stay away: there's nothing like a little head-to-head competition, a simple interface, and an assault on my pride to keep me coming back for more.  Yeah, I'd love to be able to play against my friends, and the leader board could use a better way of tracking scores (I'm not exactly sure when scores seem to randomly drop off).  But these are small quibbles with a great app.&lt;br /&gt;&lt;br /&gt;So here it is: you don't need the latest technology.  You don't need whiz-bang effects.  You don't need crazy, exciting, innovative new features.  What you need is a good idea, boiled down to its core, and a great, accessible, fully-realized implementation of that idea with as much of the complexity removed as possible.  It doesn't matter what technology you choose (remember how they shot The Blair Witch Project on tiny little camcorders?); let the zealots have the religious wars while you make a great piece of software.  Use what you know.  Make something people have a lot of fun using, and you'll certainly be a success.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-4917908653147465903?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/4917908653147465903/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=4917908653147465903' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4917908653147465903'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4917908653147465903'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/04/typeracer-fun-fun-fun.html' title='&lt;a href=&quot;http://play.typeracer.com&quot;&gt;TypeRacer&lt;/a&gt;: Fun, fun, fun.'/><author><name>Brad</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-7611915574262361334</id><published>2008-04-23T13:01:00.001-06:00</published><updated>2008-04-23T13:01:27.798-06:00</updated><title type='text'>We're on The Flex Show!</title><content type='html'>&lt;a href="http://bradumbaugh.blogspot.com/"&gt;Brad Umbaugh&lt;/a&gt; and I were interviewed on The Flex Show last week discussing our use of 3D in &lt;a href="http://dsc.discovery.com/guides/discovery-earth-live/discovery-earth-live.html"&gt;Discovery Earth Live&lt;/a&gt;.  You can check out the full interview &lt;a href="http://www.theflexshow.com/blog/"&gt;here&lt;/a&gt; if you're interested. &lt;br /&gt;&lt;br /&gt;In the interview we discuss the nature of 3D interfaces, some things to think about when attempting 3D, and just barely scratch the surface on the differences between &lt;a href="http://blog.papervision3d.org/"&gt;Papervision3D&lt;/a&gt; and &lt;a href="http://away3d.com/"&gt;Away3D&lt;/a&gt;.  Kinda timely given &lt;a href="http://www.insideria.com/2008/04/3d-ria-where-does-it-fit.html"&gt;Andrew's post on 3D&lt;/a&gt; just a few days ago.&lt;br /&gt;&lt;br /&gt;Finding the "right" way to use rich innovative features like 3D is a topic I'm really passionate about.  We didn't get into the usability aspects of it as much as I'd liked in the interview, but I'm hoping to do a panel at MAX or Web 2.0 NYC later this year and get more into it.  Is that something you'd be interested in?  Leave us a comment if you don't mind.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-7611915574262361334?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/7611915574262361334/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=7611915574262361334' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7611915574262361334'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7611915574262361334'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/04/were-on-flex-show.html' title='We&apos;re on The Flex Show!'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-8984242760959163465</id><published>2008-04-09T11:25:00.002-06:00</published><updated>2008-04-09T11:35:02.605-06:00</updated><title type='text'>Want a job at Google?</title><content type='html'>Here's a posting I got from a friend today.  If you're interested, send me an email at rj [dot] owen [at] effectiveui [dot] com and I'll put you in touch.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;***&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; "&gt;&lt;b&gt;Search Quality Associate (Webmaster Communications) - Mountain View&lt;/b&gt; &lt;span style="font-size: 10pt; "&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Helvetica; font-size: 12px; "&gt;&lt;p style="margin-right: 0in; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt; &lt;br /&gt;Do you have a passion for Google and the Internet? Do you desire to help improve the quality of Google's search results while impacting millions of users on a daily basis?  &lt;br /&gt; &lt;br /&gt;Google's Search Quality Evaluation team is recruiting enthusiastic, web-savvy individuals to work with new technologies in order to improve the quality of Google's core search product. With a focus in webmaster communications, you'll be responsible for maintaining external communication with web publishers while also focusing on search quality improvements. The ideal candidate will be detail-oriented, have strong analytical skills, and bring innovative ideas to improve access to relevant information on the web. Candidates will also be passionate about technology, be familiar with typical web practices such as managing a domain name as well as with Internet infrastructure, including WHOIS directories and Internet Protocol. &lt;/span&gt; &lt;br /&gt;&lt;span style="font-size: 10pt; "&gt; &lt;br /&gt;Responsibilities:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;ul type="disc" style="margin-bottom: 0in; "&gt;&lt;li class="MsoNormal" style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;Investigate designated domains and URLs and identify areas of concern and interest&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;Troubleshoot technical issues and collaborate with engineering teams to make large-scale search quality improvements&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;Establish and maintain proactive communication with external web publishers&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;Work on special projects and cross-functional initiatives within Google&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style="margin-right: 0in; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;Requirements:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;ul type="disc" style="margin-bottom: 0in; "&gt;&lt;li class="MsoNormal" style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;BA/BS degree&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;1-3 years related experience in an Internet company and with web research a plus&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;Fundamental understanding of HTML and JavaScript&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;Familiarity with typical web practices such as managing a domain name&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;Familiarity with internet infrastructure such as DNS, TCP/IP and WHOIS&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;Previous experience with a programming language such as Perl or Python a plus&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;Public speaking experience a plus&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;Blogging or online content editing samples a plus&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class="MsoNormal" style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman', serif; "&gt;&lt;span style="font-size: 10pt; "&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-8984242760959163465?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/8984242760959163465/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=8984242760959163465' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8984242760959163465'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8984242760959163465'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/04/want-job-at-google.html' title='Want a job at Google?'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-5595864631226516187</id><published>2008-04-08T13:14:00.003-06:00</published><updated>2008-04-09T11:37:14.191-06:00</updated><title type='text'>re: HuddleChat</title><content type='html'>&lt;div&gt;&lt;a href="http://www.37signals.com/"&gt;37Signals&lt;/a&gt; CEO Jason Fried's &lt;a href="http://blog.searchenginewatch.com/blog/080408-123318"&gt;response&lt;/a&gt; to &lt;a href="http://www.huddlechat.com/"&gt;HuddleChat&lt;/a&gt;:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;"We're flattered Google thinks Campfire is a great product.  We're just disappointed that they stooped so low to basically copy it feature for feature, layout for layout. We thought that would be beneath Google, but maybe its time to reevaluate what they stand for."&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Translation: &lt;/div&gt;&lt;div&gt;"Oh shit.  Google's giving something better away for free."&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Copying Campfire "feature for feature, layout for layout" is about as complicated as copying a single text field, a single button, and big viewing area - it's not exactly patentable rocket science here.  Sorry, Jason, but there are good reasons most web companies don't charge for these insanely simple apps, and one of those is how easy it is to replace them.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Lest you misunderstand, let me go on record as saying that, for the most part, I love 37Signals.  I love the simplicity of their applications and the perspective they bring to the web community on their blog.  I even think they have a right to be upset - if I sold burritos and someone opened a burrito shop next door that sold bigger burritos I'd be mad too.  But that's not unethical; that's competition.  When you boil a problem down to the basics and provide a very basic solution, it's pretty hard to compete without copying, at least in part.  Since problem boiling is 37Signals' bread and butter, they should be used to this by now.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What makes this response a little...annoying...is that Jason and everyone at 37Signals are usually very forthright and very reasonable.  They're a little arrogant and sometimes silly, but this sort of smug posturing just seems out of character.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If HuddleChat manages to take any large set of users away from Campfire, it will only be because 37Signals failed to incorporate enough of the features their users requested and failed to make the application free, and that's not stealing - that's called innovation.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Apparently Jason's not the only one at 37Signals to get &lt;a href="http://twitter.com/sh/statuses/785076522"&gt;a little upset&lt;/a&gt; about HuddleChat.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Update:  &lt;a href="http://www.huddlechat.com/"&gt;Google killed HuddleChat&lt;/a&gt; last night, fearing the ill will of the development community.  I guess competing with 37S wasn't on their radar after all.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-5595864631226516187?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/5595864631226516187/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=5595864631226516187' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5595864631226516187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5595864631226516187'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/04/re-huddlechat.html' title='re: HuddleChat'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-3229545751515989824</id><published>2008-04-01T17:19:00.003-06:00</published><updated>2008-04-01T17:26:02.184-06:00</updated><title type='text'>AIR + Linux = .....Lair? Airlix? whatever</title><content type='html'>After a long month of relaxation, I'm happy to announce that I'm back at working, heartily blogging again.  For those of you who may be concerned, I was out on paternity leave and am happy to announce the birth of my daughter Quinn, who was born March 4th.  She's already shown herself to be good at criticizing user interfaces, having run in to a few diapers and bottles that just didn't work the way they should.  She made them pay, believe you me.&lt;br /&gt;&lt;br /&gt;On to business!&lt;br /&gt;&lt;br /&gt;Adobe announced recently that AIR will be released for Linux and has released a beta version on their beta site.  My buddy Dave Meeker has a &lt;a href="http://www.whatanexperience.org/2008/03/adobe-air-on-linux-cross-platform.html"&gt;great analysis of what this means for the desktop on his blog&lt;/a&gt;, so I won't repeat it here.  Check it out.&lt;br /&gt;&lt;br /&gt;Second, I've been accepted as a regular blogger on &lt;a href="http://www.insideria.com"&gt;InsideRIA.com&lt;/a&gt; - an O'Reilly blog about all things RIA.  I'm very excited to join the team and will do my best to keep both blogs updated regularly.  Today we had a &lt;a href="http://www.insideria.com/2008/04/microsoft-announces-support-fo.html"&gt;ground breaking post &lt;/a&gt;talking about some new features in the next version of Silverlight that might cause Adobe some problems - check it out. ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-3229545751515989824?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/3229545751515989824/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=3229545751515989824' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3229545751515989824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3229545751515989824'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/04/air-linux-lair-airlix-whatever.html' title='AIR + Linux = .....Lair? Airlix? whatever'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-4099323532995201741</id><published>2008-02-27T14:14:00.002-07:00</published><updated>2008-02-27T14:33:34.352-07:00</updated><title type='text'>Flex Optimization: beware bindable VO's</title><content type='html'>&lt;div&gt;We ran into a situation today in an application processing a large data set and seeing some really exhorbenant parsing times on the Flex side.  We're transferring the data using AMF and it's still taking up to 5 times longer to parse the data than transfer it (500 ms to transfer, up to 4.5 seconds to parse it.  Yikes!)&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Part of the problem is that someone made a key VO bindable.  The data set we're loading is about 5,000 objects in size.  Each object gets parsed in a method that makes reference to properties on this vo at least 6 different times in a while loop which can loop hundreds of times depending on the data point.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When the VO is bindable, this means 6 different method calls, since bindable objects have their public properties replaced with getter and setter methods to support binding.  Having these calls made from inside the while loop lead to roughly 1 million excess method calls in parsing the data alone.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There are other inefficiencies in our data parsing yet to be found, but removing the "bindable"&lt;/div&gt;&lt;div&gt;tag on this object lead to an immediate 30% increase in speed.  Removing the tag hasn't had any noticable effects so far.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It's likely someone wanted to bind to a data provider before the data had been created and then used the data object itself as part of an MXML tag.  Even though the data will never be updated and thus doesn't really need to be bindable, FlexBuilder can't tell that and produces a warning message asking that the object be bindable.  Clearning up this tiny warning had disastrous results, though we didn't find them until now. :)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Since the VO itself is never updated in our application, there's no reason it ever should've been bindable.  If you did need a bindable VO there are several ways to avoid our problem still.  First, we could've cached the VO's values outside of our while loop, operated on them within the loop, and then updated afterwards if necessary.  Second, we could've listened for a more general "loaded" event on the entire collection rather than binding to something on the individual VO's themselves, since they should all update at more or less the same time.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Finding performance bugs like this is key to enhancing user experiences in Flex.  I'd heard all of the standard performance enhancements before (type your variables, don't nest for loops, etc.) but hadn't heard anyone mention anything about binding before, so this was sort of a revelation for me even though it probably should've been obvious.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you're suffering from performance degradation and can't figure out why, look at your binding.  Fire up that brand new shiny profiler and see how many times your bindable methods are being called - I bet it's more than you'd think.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-4099323532995201741?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/4099323532995201741/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=4099323532995201741' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4099323532995201741'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4099323532995201741'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/02/flex-optimization-beware-bindable-vos.html' title='Flex Optimization: beware bindable VO&apos;s'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-2348851662901912688</id><published>2008-02-11T22:40:00.000-07:00</published><updated>2008-02-12T10:49:41.866-07:00</updated><title type='text'>Discovery Earth Live: behind the scenes</title><content type='html'>&lt;a href="http://dsc.discovery.com/guides/discovery-earth-live/discovery-earth-live.html"&gt;Discovery Earth Live&lt;/a&gt;, an application we've been working on since early August '07, went officially live today.  I say "officially" because it's been up on Discovery's site for a while now, and a few reporters (including &lt;a href="http://blog.wired.com/wiredscience/2008/02/exclusive-previ.html"&gt;Wired&lt;/a&gt;) broke the news early on Friday.&lt;br /&gt;&lt;br /&gt;In summary, Earth Live is an application that allows users to view global data on a 3D surface.  It's maintained and updated daily by Discovery, who provides content about climate issues directly from scientists and NASA and NOA (in the "featured stories" area) and allows users to make their own global "stories" with data sets compiled from the last 24 hours (in the "create a story" area.)  Any story, whether featured or created, can then be shared on a users blog, myspace, facebook, etc. in a widgetized form.  Here's an example of the widget with no layers, which is how I like it best:&lt;br /&gt;&lt;br /&gt;&lt;object id="EarthLive" type="application/x-shockwave-flash" data="http://widgets.discovery.com/dsc/discovery-earth-live/DELWidget.swf" height="500" width="300"&gt;&lt;param value="http://widgets.discovery.com/dsc/discovery-earth-live/DELWidget.swf" name="movie"&gt;&lt;param value="&amp;amp;layers=&amp;amp;title=Spin%20this%20globe%21&amp;amp;opacities=&amp;amp;" name="FlashVars"&gt;&lt;param value="never" name="allowScriptAccess"&gt;&lt;param name="bgcolor" value="#ffffff"&gt;&lt;div&gt;You must have the Adobe Flash player installed to see this app.  Please download flash &lt;a href="http://www.adobe.com/go/getflash/"&gt;here.&lt;/a&gt;&lt;/div&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Earth Live was exciting to build and features some interesting technical hurdles.  We wanted to incorporate an interface that was fun to use but still conveyed the data, and that was difficult because until about half way through the project the data itself wasn't well defined.  I heard someone speaking at Max this summer say something that should be obvious: data comes first, interfaces second.  Making an interface for data you don't have yet is always a risky thing.  In this case I think we lucked out and the interface fits the data pretty darn well, but I still wish we'd seen it sooner.&lt;br /&gt;&lt;br /&gt;We decided early on that the globe should be a real 3d object for a number of reasons.  First, this was the way our sales guy pitched it to the client.  His big idea was to mask a giant repeating flat map so that it APPEARED to be a real sphere - we in the development department were having none of that.  If it was going to look like a globe, then by golly it was going to BE a globe.  Second, our designers convinced us that 3d globes are just more fun to use.  We'd used &lt;a href="http://blog.papervision3d.org/"&gt;PaperVision3d&lt;/a&gt; on a few projects before and read about it's recently increased performance, so we decided to give it a go.&lt;br /&gt;&lt;br /&gt;From the beginning Discovery had been interested in using this app to support their Earth Live blog, which tracks the adventures of scientists around the globe.  We'd planned on building this feature out as clickable push-pins in the globe.  The feature worked but with weird bugs around the edges in &lt;a href="http://blog.papervision3d.org/"&gt;PaperVision&lt;/a&gt;.  Though &lt;a href="http://www.rockonflash.com/blog/"&gt;John Grden&lt;/a&gt; assures me this is not a bug, we made the switch to &lt;a href="http://www.away3d.com/"&gt;Away3D&lt;/a&gt; - a PaperVision spinoff project contriubted to by my buddy &lt;a href="http://www.google.com/search?hl=en&amp;amp;safe=off&amp;amp;q=peter+kapelyan+away+3d&amp;amp;btnG=Search"&gt;Peter Kapelyan&lt;/a&gt; - and everything was fine.  Away 3D also gave us some increases in performance which were greatly appreciated.&lt;br /&gt;&lt;br /&gt;We planned the application to display two kinds of data: flat image files and KML drawings.  Flat image files were easy to do in PaperVision but the KML piece was more work.  &lt;a href="http://bradumbaugh.blogspot.com/"&gt;Brad Umbaugh&lt;/a&gt;, who did most of our globe development, spent about two weeks working on the KML piece, but in the end we decided it just didn't look right and so it's not being used.  The functionality is in there, hoping and waiting for an eventual upgrade in version 2.0.&lt;br /&gt;&lt;br /&gt;Somewhere around the beginning of October we started working with the real data and Discovery came to us with an exciting proposition: how about videos?  In theory it worked, but in practice the performance sucked.  It sucked bad - browser crashing, slow as molasses, 2 fps bad.  Brad spent a few weeks tweaking it and with the help of some other EUI staff (&lt;a href="http://www.psalterego.com/"&gt;Jim Cheng&lt;/a&gt; in particular) we came up with the following system:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;All of our videos are embedded in swfs.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;When we load a video into the app, we immediately strip all of it's frames out into raw image files during the first pass through the video.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;In the second pass, we flatten those images with any other layers on the globe at that time (though Discovery isn't currently layering any images on their videos, the capability exists.)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;After this, the globe updates it's wrapper material once every frame and it looks like a video.  Performance is still rough on older machines, but it's decent on most and great on anything made in the last 3 years.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;One really exciting part of the app was a frantic last-minute re-design.  While at MAX, with our latest development deadline just two weeks out, we received info from Discovery that the app was going to need to be 200 pixels slimmer than we'd previously thought.  &lt;a href="http://patrickhansen.com/"&gt;Patrick Hansen&lt;/a&gt; and I sat in the back of our booth and quickly sketched out what later developed into the new design.  Brad and developer &lt;a href="http://www.google.com/search?q=kevin%20skrenes&amp;amp;sourceid=mozilla2&amp;amp;ie=utf-8&amp;amp;oe=utf-8"&gt;Kevin Skrenes&lt;/a&gt;, who was responsible for more or less all of the UI that wasn't the globe, helped us massage it over the next week and Kevin bore the brunt of the re-development effort.&lt;br /&gt;&lt;br /&gt;During the last month Kevin and Brad transitioned off and I worked bugs and updated the widget.  I went through some hurdles learning the Facebook integration process, partially defined in a post &lt;a href="http://rjria.blogspot.com/2008/01/passing-url-variables-into-your.html"&gt;here&lt;/a&gt;, and finally got it all working late last week.  That's right - right before the deadline.  You know how it goes. :)&lt;br /&gt;&lt;br /&gt;All in all, this was a great project.  Discovery is by far one of my favorite clients ever - they're amazingly enthusiastic and easy to work with.  I also want to give major credit to &lt;a href="http://www.bobbyjamison.com/main.htm"&gt;Bobby Jamison&lt;/a&gt; and &lt;a href="http://www.jeremygraston.com/"&gt;Jeremy Graston&lt;/a&gt;, who worked on things from the design angle, and Shannon Garret, who built all of our marketing materials including the Earth Live logo.&lt;br /&gt;&lt;br /&gt;A final note to developers: the app currently throws a run time exception you might see in the debugger:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TypeError: Error #1034: Type Coercion failed: cannot convert flash.events::Event@27513d91 to mx.events.IndexChangedEvent.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This is an Adobe issue documented on &lt;a href="http://bugs.adobe.com/jira/browse/SDK-11156"&gt;their bug base here&lt;/a&gt;.  I'd like to find the offending piece of code that dispatches the bug and catch it, but it's not a high priority now since it's only visible to users running the debug player -- non-developers will never see it. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-2348851662901912688?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/2348851662901912688/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=2348851662901912688' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2348851662901912688'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2348851662901912688'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/02/discovery-earth-live-behind-scenes.html' title='Discovery Earth Live: behind the scenes'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-3425513081387038244</id><published>2008-02-05T08:54:00.001-07:00</published><updated>2008-12-09T10:56:56.480-07:00</updated><title type='text'>Flex 'Super Tuesday' Map from BBC</title><content type='html'>The BBC has &lt;a href="http://news.bbc.co.uk/2/hi/in_depth/629/629/7223461.stm"&gt;a map on their site&lt;/a&gt; displaying information about the "Super Tuesday" primary voting scheduled to take place today.  It also has an interesting feature that will show the state by state election results for the Presidential race back to 1956.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_opS9Z5vqQYQ/R6iJJtgn9WI/AAAAAAAAAFQ/GWtUXD5QXmE/s1600-h/Picture+2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_opS9Z5vqQYQ/R6iJJtgn9WI/AAAAAAAAAFQ/GWtUXD5QXmE/s400/Picture+2.png" alt="" id="BLOGGER_PHOTO_ID_5163527772708533602" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;My favorite things about the map are that it's extremely lean (~300k) and extremely simple.&lt;br /&gt;It's minimally skinned and contains bare-bones functionality (with the exception of a weird button that removes half the navigation - what's the deal with that?)  Most users really won't have any idea they're playing with Flash content.  This app definitely could have been done in Ajax, but I bet it was a lot easier to code in Flex.  All in all, it's a good example of Flash done "right" in a way that subtley enhances the normal BBC content without taking over.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-3425513081387038244?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/3425513081387038244/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=3425513081387038244' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3425513081387038244'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/3425513081387038244'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/02/flex-super-tuesday-map-from-bbc.html' title='Flex &apos;Super Tuesday&apos; Map from BBC'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_opS9Z5vqQYQ/R6iJJtgn9WI/AAAAAAAAAFQ/GWtUXD5QXmE/s72-c/Picture+2.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-379260846499555248</id><published>2008-02-05T00:02:00.000-07:00</published><updated>2008-02-05T00:05:29.419-07:00</updated><title type='text'>Please don't call me a "devigner"...</title><content type='html'>because it's a silly term, and those unfamiliar with our space will likely think me the sort of fellow gifted in finding water with sticks.&lt;br /&gt;&lt;br /&gt;Exhibit A:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.sbyouththeatre.org/images/diviners01_rod.jpg"&gt;&lt;img style="cursor: pointer; width: 261px; height: 351px;" src="http://www.sbyouththeatre.org/images/diviners01_rod.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;No, Deseloper is not a better term.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-379260846499555248?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/379260846499555248/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=379260846499555248' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/379260846499555248'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/379260846499555248'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/02/please-dont-call-me-devigner.html' title='Please don&apos;t call me a &quot;devigner&quot;...'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-7376510320493204414</id><published>2008-01-30T07:21:00.000-07:00</published><updated>2008-01-30T13:18:05.315-07:00</updated><title type='text'>Social RIAs will save lives</title><content type='html'>I heard an amazing story last night about the connection between a health and social interaction.  Studies have found that being involved in any group of people might be the healthiest decision you can make on a daily basis - better than dieting or not smoking.&lt;br /&gt;&lt;br /&gt;The person I heard speaking was quoting from the book &lt;span style="font-style: italic;"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Everybody's&lt;/span&gt; Normal Till You Meet Them&lt;/span&gt; by John &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Ortberg&lt;/span&gt;, where he sites two different medical studies linking health and community.  Here's the excerpt:&lt;br /&gt;&lt;blockquote&gt;"One of the most thorough research projects on relationships is called the Alameda County Study.  Headed by a Harvard social scientist, it tracked the lives of 7,000 people over nine years.  Researches found that the most isolated people were &lt;span style="font-weight: bold;"&gt;three times more likely to die&lt;/span&gt; than those with strong relational connections.  People who had bad health habits (such as smoking, poor eating habits, obesity, or alcohol use) but strong social ties lived &lt;span style="font-weight: bold;"&gt;significantly longer&lt;/span&gt; than people had great health habits but were isolated.  In other words, it is better to Twinkies with good friends than to eat your broccoli alone.  Harvard researcher Robert Putnam notes that if belong to no groups but decide to join one, 'you cut your risk of dying over the next year in &lt;span style="font-weight: bold;"&gt;half&lt;/span&gt;.'&lt;br /&gt;&lt;br /&gt;For another study, as reported in the &lt;span style="font-style: italic;"&gt;Journal of the American Medical Association&lt;/span&gt;, 276 volunteers were infected with a virus that produces the common cold.  The study found that people with strong emotional connections did four times better fighting off illness that those who were more isolated.  These people were less susceptible to colds, had less virus, and produced significantly less mucous than relationally isolated subjects."&lt;/blockquote&gt;(from &lt;a href="http://books.google.com/books?id=oDkv8JQ1eXIC&amp;amp;pg=PA33&amp;amp;lpg=PA33&amp;amp;dq=twinkies+with+friends+broccoli+alone&amp;amp;source=web&amp;amp;ots=PHpXaSuRoD&amp;amp;sig=CbRfy8GmNexUmsNqcgj4PAAZIoA"&gt;&lt;span style="font-style: italic;"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Everybody's&lt;/span&gt; Normal Till You Meet Them&lt;/span&gt;&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;In an age of increasingly fractured social structures, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;omni&lt;/span&gt;-present online communities can provide the sense of belonging and connectedness that many of us have started to lose in our success-driven, work-intense, post-family, post-modern fragmented lives.&lt;br /&gt;&lt;br /&gt;I'm talking about social networking, of course.  Since business types realized the success of &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;MySpace&lt;/span&gt; and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;Facebook&lt;/span&gt;, we've been desperately cramming social networking features into every web application we can think of, and many of the resulting "features" have left we-the-developers wondering whether any of this craze is really worth the effort.  The answer is a clear yes, though we should certainly be more discerning with the way we implement them.&lt;br /&gt;&lt;br /&gt;It's the fragmentation piece that's really getting to us.  Even when we have communities, they're cut and spread across so many different geographical and online places that we still feel fractured.  There's a sense of liberation in knowing your friends from group A will probably never hear about your common interests with group B, and there certainly needs to be a continued emphasis on personal privacy, but there's something very healthy and liberating about collapsing all of the various random mutations you've made of yourself into a single person and being that person 24/7.&lt;br /&gt;&lt;br /&gt;I think &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;Facebook&lt;/span&gt; has had a huge impact on reducing online fragmentation by encouraging people to be themselves.  It's that single core feature of the application that keeps me interested and supportive despite the frustration of ignoring all the senseless message inviting me to become a zombie or a ninja or whatever and annoy my friends with spam.  &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Facebook&lt;/span&gt; nailed social networking by focusing on simply creating online community and reducing the temptation to engage in the sort of anonymous jack-&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;assery&lt;/span&gt; that most previous social forums have suffered from.&lt;br /&gt;&lt;br /&gt;As we continue to build social &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;RIAs&lt;/span&gt;, let's focus on helping our users engage in social communities in that kind of healthy way.  Let's help reduce fragmentation by focusing on enhancing existing communities rather than creating totally new ones and focus our social features on things users really want rather than social networking for social &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;networking's&lt;/span&gt; sake.  I know that's a little preachy for a Wednesday, but these things are central to building good experiences.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-7376510320493204414?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/7376510320493204414/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=7376510320493204414' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7376510320493204414'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7376510320493204414'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/01/social-rias-will-save-lives.html' title='Social RIAs will save lives'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-2801687157857526112</id><published>2008-01-29T07:38:00.000-07:00</published><updated>2008-01-29T07:46:21.220-07:00</updated><title type='text'>Is Digg really a design pattern?</title><content type='html'>The Yahoo Design Patterns library sure &lt;a href="http://developer.yahoo.com/ypatterns/pattern.php?pattern=votetopromote"&gt;seems to think it is&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;According to Yahoo's own definition,  "A pattern describes an optimal solution to a common problem within a specific context."&lt;br /&gt;&lt;br /&gt;I guess here the "common problem" is, how can you get millions of users to come back to your site every day without having to create any of the content myself?  Why, you implement the "vote to promote" pattern of course!!&lt;br /&gt;&lt;br /&gt;If Digg's pattern is "vote to promote", what's Facebook's?  The "indulge voyeurism" pattern?  The "spam your friends" pattern?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-2801687157857526112?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/2801687157857526112/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=2801687157857526112' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2801687157857526112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2801687157857526112'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/01/is-digg-really-design-pattern.html' title='Is Digg really a design pattern?'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-5413110979911775176</id><published>2008-01-28T09:35:00.000-07:00</published><updated>2008-01-28T09:37:39.853-07:00</updated><title type='text'>Ted Patrick on Flex Performance and Minimalist Programming</title><content type='html'>I read a really good "intro" level &lt;a href="http://www.onflex.org/ted/2008/01/minimalist-approach-to-flashflexair.php"&gt;article by Ted Patrick on performance in the flash player&lt;/a&gt;.  I'm sure we've all read this stuff before, but it was a really good reminder for me, and the article is short.&lt;br /&gt;&lt;br /&gt;Here are the best parts:&lt;br /&gt;&lt;br /&gt;"The Flash Player uses a logical unit of work called a frame which consists of 2 phases which occur one after another in a loop:&lt;br /&gt;&lt;br /&gt;1. Process ActionScript&lt;br /&gt;2. Render Graphics&lt;br /&gt;3. GOTO 1&lt;br /&gt;&lt;br /&gt;After each of these phases is a buffer to handle delays ( say you render to much or loop over a ton of data ). When both of these phases have completed we call that a frame. Each SWF file you create has a framerate (frames/second) which represents the fastest rate that the Flash Player will loop over these phases. When Flash Player encounters delays in processing either phase it will elongate the time to process the frame and thus your framerate will slow but will never exceed the framerate set in the SWF file."&lt;br /&gt;&lt;br /&gt;"Flex was built to handle application behavior in a minimalist fashion if used properly. I continue to see developers execute to much ActionScript on a single event and not think in terms of processing data across frames. Using events properly is a great place to start. Make sure you know how long and how often methods are being called from events."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-5413110979911775176?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/5413110979911775176/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=5413110979911775176' title='17 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5413110979911775176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5413110979911775176'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/01/ted-patrick-on-flex-performance-and.html' title='Ted Patrick on Flex Performance and Minimalist Programming'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>17</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-5386986784145479967</id><published>2008-01-26T11:08:00.000-07:00</published><updated>2008-01-26T11:30:25.047-07:00</updated><title type='text'>Forward Thinking: RIA predictions</title><content type='html'>I read &lt;a href="http://www.onflex.org/ted/2007/12/2008-ria-trends.php"&gt;Ted Patrick's 2008 RIA predictions&lt;/a&gt; a while ago and have been mulling over the future of RIA's ever since.  Where is this technology going?  How is it going to get there?  I think Ted does a pretty good job talking about 2008, so I'm going to agree with him and look a bit farther into the future.&lt;br /&gt;&lt;br /&gt;While I love the changes RIA technologies have made to our software experieinces in the last few years, I have to give the skeptics some credit.  Flash has been around for a long time now, and applications developed for the web or enabled by the internet aren't exactly new either.  That both of these have been lumped together under the title "RIA" and seen as something relatively novel in the past few years deserves some of the derision it's received on the web.&lt;br /&gt;&lt;br /&gt;Yet the benefits of the things we call RIA technology are real and vast, and they're not going away any time soon.  As the whole "user experience" and "usability" issue continues to influence and permeate web-society, the call for new interfaces and better ways of visualizing data is only going to get better established in the years to come.&lt;br /&gt;&lt;br /&gt;So here's my prediction: by 2015 we'll all stop saying 'RIA'.  The spectrum of different RIA's will be so vast and so deeply embedded in all of our software that it won't make sense to talk about a special class of applications that provide rich features and deal with the internet.  Rich features will be in every interface you use, and accessibility to the internet, at least in the first world, so unlimited that all of our front-end applications will be, in the literal sense, RIA's.  Software will require a new set of classifications and differentiators to talk about differences in interface development, if indeed any still exists.&lt;br /&gt;&lt;br /&gt;Unfortunately, I don't predict flying cars until 2061, when all our food is cloned and HAL forces everyone to wear matching track suits.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-5386986784145479967?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/5386986784145479967/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=5386986784145479967' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5386986784145479967'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5386986784145479967'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/01/forward-thinking-ria-predictions.html' title='Forward Thinking: RIA predictions'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-7011378145485854179</id><published>2008-01-21T21:11:00.000-07:00</published><updated>2008-01-21T21:59:12.445-07:00</updated><title type='text'>EffectiveUI an OnMedia top 100 company</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://alwayson.goingon.com/themes/tekriti/sb-files/AO_OnMedia08_Winner_400px.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 209px; height: 232px;" src="http://alwayson.goingon.com/themes/tekriti/sb-files/AO_OnMedia08_Winner_400px.jpg" alt="" border="0" /&gt;&lt;/a&gt;I'm not really sure what this means just quite yet, but &lt;a href="http://alwayson.goingon.com/permalink/post/23251"&gt;EffectiveUI was recently selected as a top 100 company by Always On&lt;/a&gt;.  Here's how they selected us:&lt;br /&gt;&lt;br /&gt;"For the AlwaysOn Media 100 list, hundreds of private companies—spanning numerous sectors, all stages of corporate development, as well as the globe—were nominated. To make the final selection of companies that excel in AlwaysOn’s five primary evaluation criteria—innovation, market potential, commercialization, stakeholder value creation, and media attention or “buzz”—the panel drew on industry expertise from KPMG; Bridge Bank; Merrill Corporation; Manatt,Phelps &amp;amp; Philips; and AlwaysOn editors."&lt;br /&gt;&lt;br /&gt;Apparently this is a big deal.  I like it because I enjoy seeing our name on other people's websites.  Oppressed laptops of the world take note: we were chosen for the "Technology Enablers" category.  That's right people - if you have a technology, we'll enable it.  We're like feminism, but for iPhones; William Wallace for your Web Apps.  FREEEEEDOOOMMMM!!&lt;br /&gt;&lt;br /&gt;The best part of this is that our fearless leader, &lt;a href="http://anthonyfranco.wordpress.com/"&gt;Anthony L. Franco&lt;/a&gt;, will be on stage at the &lt;a href="http://alwayson.goingon.com/ecom/productview/20031"&gt;Always On OnMedia event&lt;/a&gt; in NYC next week presenting to some of the industry's best and brightest.  Best of luck boss, and be sure to enjoy some great sushi after the conference - you've earned it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-7011378145485854179?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/7011378145485854179/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=7011378145485854179' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7011378145485854179'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7011378145485854179'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/01/effective-ui-onmedia-top-100-company.html' title='EffectiveUI an OnMedia top 100 company'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-1665719233415856057</id><published>2008-01-16T22:58:00.001-07:00</published><updated>2008-01-21T22:01:44.035-07:00</updated><title type='text'>Programmers are like bees...</title><content type='html'>One of the &lt;a href="http://www.zoion.com/%7Eerlkonig/writings/programmer-beekeeping.html"&gt;best and shortest articles&lt;/a&gt; (like 3 paragraphs) I've read on coding, development, programming, management and business in a really long time was sent to me today by Sean Christmann.  Not surprisingly, it was written by &lt;a href="http://en.wikipedia.org/wiki/Orson_Scott_Card"&gt;Orson Scott Card&lt;/a&gt; of &lt;a href="http://en.wikipedia.org/wiki/Ender%27s_Game"&gt;Ender's Game&lt;/a&gt; fame.  Here's a snippet:&lt;br /&gt;&lt;br /&gt;"Here's the secret that every successful software company is based on:  You can domesticate programmers the way beekeepers tame bees.  You  can't exactly communicate with them, but you can get them to  swarm in one place and when they're not looking, you can carry off  the honey."&lt;br /&gt;&lt;br /&gt;Scott forgot to mention that also like bees, most worker programmers are sterile.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-1665719233415856057?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/1665719233415856057/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=1665719233415856057' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/1665719233415856057'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/1665719233415856057'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/01/programmers-are-like-bees.html' title='Programmers are like bees...'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-4689830031046595846</id><published>2008-01-12T08:53:00.001-07:00</published><updated>2008-01-12T09:00:00.097-07:00</updated><title type='text'>Adobe looking to over-productize</title><content type='html'>I read an article this morning announcing a new Adobe product code-named &lt;a href="http://www.beedigital.net/blog/?p=1703"&gt;Bordeaux&lt;/a&gt;.  Bordeaux is a tool that will allow graphic designers to make great Flash content without knowing Actionscript - it's like Thermo for Flash.&lt;br /&gt;&lt;br /&gt;This strikes me as a little weird because I thought Flash WAS the graphic designer tool for making flash content.  When did flash become a "developer" tool?  And if it is, why does the AS console still feel like an afterthought?&lt;br /&gt;&lt;br /&gt;It feels to me like Adobe's taking this whole "flash content for designers" idea a little too far, and needs to bunker down and consolidate.  Rather than making two new products and charging us all another $500 a piece to use them, they should focus on consolidating their features into the existing tools.  Flash should be the graphic design framework for Flash content, and Flex should be the developer framework. &lt;br /&gt;&lt;br /&gt;Without this, Flex is quickly turning into Flash with a layout manager and a different developer environment.  That just doesn't seem like a big enough deal to merit an entirely separate product to me.  I'd rather see the entire Flex and Flash teams working to make a single great product than trying to play catch-up and maintain divergent streams of the AS3 code base.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-4689830031046595846?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/4689830031046595846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=4689830031046595846' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4689830031046595846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4689830031046595846'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/01/adobe-looking-to-over-productize.html' title='Adobe looking to over-productize'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-4470241733909773738</id><published>2008-01-08T17:17:00.000-07:00</published><updated>2008-01-09T09:13:53.110-07:00</updated><title type='text'>Passing URL variables into your facebook application</title><content type='html'>As it turns out, passing url variables into your facebook application is pretty easy.&lt;br /&gt;&lt;br /&gt;The link you add your application external to facebook is:&lt;br /&gt;&lt;br /&gt;http://www.facebook.com/add.php?api_key=yourApiKeyGoesHere&lt;your&gt;&lt;br /&gt;&lt;br /&gt;You can find your api key on your application's settings in the "Developers" application.  Go to "My Applications" and you should see it in the application's description.  Note that this isn't the same as your application's id.&lt;br /&gt;&lt;br /&gt;To pass variables on this string, just append "&amp;amp;next?var1=val1&amp;amp;var2=val2" etc.&lt;br /&gt;&lt;br /&gt;I had to escape the '&amp;amp;' character in this string as %26.&lt;br /&gt;&lt;br /&gt;This link will first send the user to the facebook homepage, where they'll be directed to login.  After logging in they'll be given the option to add your application.  If they do, they'll be directed to whatever you specified as the "post-add" url -- it's this page whose URL will be appended with whatever params you specified in the link.&lt;br /&gt;&lt;br /&gt;Assuming your post-add page is a php page, you can then read the vars using a simple $_GET[varName];&lt;br /&gt;&lt;br /&gt;Not difficult at all, but also not really documented in any easy to find place by Facebook themselves.&lt;/your&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-4470241733909773738?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/4470241733909773738/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=4470241733909773738' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4470241733909773738'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/4470241733909773738'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/01/passing-url-variables-into-your.html' title='Passing URL variables into your facebook application'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-8101937355260427216</id><published>2008-01-07T11:32:00.000-07:00</published><updated>2008-01-07T11:34:39.757-07:00</updated><title type='text'>Flex and AIR User Group Pre-release Tour</title><content type='html'>From Adobe this morning:&lt;br /&gt;&lt;br /&gt;"Flex 3 and AIR are getting close to launch and in preparation, the Adobe&lt;br /&gt;Platform Evangelist team is traveling to select cities to show off the&lt;br /&gt;great new features and some brand new demos.&lt;br /&gt;&lt;br /&gt;Flex 3 is a feature-packed release, adding new UI components like the&lt;br /&gt;advanced datagrid and improved CSS capabilities; powerful tooling&lt;br /&gt;additions like refactoring; and extensive testing tools including memory&lt;br /&gt;and performance profiling, plus the addition of the automated testing&lt;br /&gt;framework to Flex Builder.&lt;br /&gt;&lt;br /&gt;Adobe AIR is game-changing in so many ways, extending rich applications&lt;br /&gt;to the desktop, enabling access to the local file system, system tray,&lt;br /&gt;notifications and much more. Now you can write desktop applications&lt;br /&gt;using the same skills that you've been already using to create great web&lt;br /&gt;apps including both Flex and AJAX.&lt;br /&gt;&lt;br /&gt;Don't miss out on the opportunity to see and hear about this highly&lt;br /&gt;anticipated release of Flex 3 and AIR during this special pre-release&lt;br /&gt;tour.  Plus, in addition to giving away some one of a kind Flex/AIR&lt;br /&gt;branded schwag, we will also be raffling off a copy of Flex Builder 3&lt;br /&gt;Professional (pending availability) and a full commercial copy of CS3&lt;br /&gt;Web Premium at this event!&lt;br /&gt;&lt;br /&gt;Check out the comprehensive listing of dates at &lt;a href="http://flex.org/tour/"&gt;flex.org/tour&lt;/a&gt; to see if&lt;br /&gt;the tour is coming to your city! "&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-8101937355260427216?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/8101937355260427216/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=8101937355260427216' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8101937355260427216'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8101937355260427216'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/01/flex-and-air-user-group-pre-release.html' title='Flex and AIR User Group Pre-release Tour'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-7493778749778771206</id><published>2008-01-03T10:37:00.000-07:00</published><updated>2008-01-03T10:50:19.652-07:00</updated><title type='text'>Cynergy rocks the Wiimote</title><content type='html'>This week &lt;a href="http://www.cynergysystems.com/"&gt;Cynergy&lt;/a&gt; became the latest interactive company to develop something totally awesome with a Wiimote.  As the video below shows, they've combined the wiimote with some reflective gloves to make a very realistic "minority report" interface that they demonstrate with some cool photo-viewing effects.&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/7CoJGrtVs4c&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/7CoJGrtVs4c&amp;amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;The whole thing was built in Silverlight, which probably made integration with the wiimote-sensitive backend pretty easy - much easier than when we did our wiimote game last summer.  That's right kids - before the days of &lt;a href="http://www.cs.cmu.edu/%7Ejohnny/projects/wii/"&gt;Johnny Lee&lt;/a&gt;, we wiimote-enthusiasts had to hack together our own Java libraries and connect them to flash through a socket connection API we called &lt;a href="http://artemis.effectiveui.com/"&gt;Artemis&lt;/a&gt;.  And we walked to school up hill, both ways, in the snow.  Ah, those were the days...&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/iNnRrzKuzt4&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/iNnRrzKuzt4&amp;amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Anyway, I'm really excited to see Cynergy's interface in action.  It's by far the coolest wiimote integration I've seen and I can't wait to see how it will affect the future of interfaces.  I don't think it's out of the question to imagine the next mac book pro having specific IR sensitive modes for it's web cam and coming with a few of these sweet gloves.  Who needs a touch screen?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-7493778749778771206?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/7493778749778771206/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=7493778749778771206' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7493778749778771206'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7493778749778771206'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/01/cynergy-rocks-wiimote.html' title='Cynergy rocks the Wiimote'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-6671173476038518053</id><published>2008-01-02T13:43:00.000-07:00</published><updated>2008-01-02T13:52:03.391-07:00</updated><title type='text'>Degrafa Beta released</title><content type='html'>A beta version of the declarative graphics language &lt;a href="http://www.degrafa.com/"&gt;Degrafa&lt;/a&gt; was released recently to &lt;a href="http://code.google.com/p/degrafa/"&gt;google code&lt;/a&gt;.  Degrafa is cool because it provides an easy way to do things that are normally unnecessarily complicated in Flex like linear gradients, gradients around rounded strokes, repeating shapes, etc.&lt;br /&gt;&lt;br /&gt;Degrafa doesn't allow you to do anything new in Flex - it just makes the things you already do easier.  It adds some more complex building blocks to your current set, making programmatic graphics and skinning a far less painful task. &lt;br /&gt;&lt;br /&gt;Degrafa is also a good example of a real working open source Flex project.  A small &lt;a href="http://www.degrafa.com/team/"&gt;team of really talented developers&lt;/a&gt; (including my co-worker &lt;a href="http://www.andymcintosh.com"&gt;Andy&lt;/a&gt;) from many different organizations got together and made this work in a really short time.  A lot of the rest of us dream great dreams and gather small groups of like minded developers, but inevitably client work gets in the way of open source development and our projects fall by the wayside -- this didn't.  Check it out.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-6671173476038518053?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/6671173476038518053/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=6671173476038518053' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6671173476038518053'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6671173476038518053'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2008/01/degrafa-beta-released.html' title='Degrafa Beta released'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-840115657226070092</id><published>2007-12-28T12:05:00.001-07:00</published><updated>2007-12-28T12:15:34.920-07:00</updated><title type='text'>Information Design vs. Interaction Design</title><content type='html'>This morning I read a really fascinating &lt;a href="http://worrydream.com/MagicInk/"&gt;paper&lt;/a&gt; by &lt;a href="http://worrydream.com/"&gt;Bret Victor&lt;/a&gt;.  Bret is a person I'd never heard of before but wish I'd heard about earlier - he's done some really amazing work in the world of information design and I've really enjoyed the time I spent running around his &lt;a href="http://worrydream.com/"&gt;website&lt;/a&gt;.  His grasp of information architecture is uncannily good.&lt;br /&gt;&lt;br /&gt;Bret's paper focuses on the limitations of interaction design and introduced me to a term I'd previously thought was synonymous with it: information design.  Bret's thesis seems to be that most software is for conveying information - not manipulating it - and thus interactions are mostly harmful.  If we can limit the number of interactions a user requires and increase the amount of information they receive, we do a better job and make better software.&lt;br /&gt;&lt;br /&gt;I'd say this culminates in a better user experience.  It's all very interesting to me because I've always just assumed that interaction design and information design were all about user experience and that the end goal was always making software that solved problems in ways people enjoyed.  Apparently this isn't the mindset everyone has, but at least Adobe has gotten many of us on board.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://worrydream.com/MagicInk/"&gt;paper&lt;/a&gt; is long but very good.  After presenting the current situation and problem with our current interaction models, Bret goes on to describe the method he used in creating one of his applications and how we as technologists can start doing a better job focusing on information design.  He includes a call to action for information designers who haven't discovered the web yet to get in here and make things better.  I agree.  You can start with my blog, please.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-840115657226070092?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/840115657226070092/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=840115657226070092' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/840115657226070092'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/840115657226070092'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2007/12/information-design-vs-interaction.html' title='Information Design vs. Interaction Design'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-6929090866442700914</id><published>2007-12-22T23:57:00.000-07:00</published><updated>2007-12-24T13:03:58.771-07:00</updated><title type='text'>It's time to kill the "Department" department</title><content type='html'>David Armano has a great post up on &lt;a href="http://darmano.typepad.com/logic_emotion"&gt;his blog&lt;/a&gt; titled "&lt;a href="http://darmano.typepad.com/logic_emotion/2007/12/its-time-to-kil.html"&gt;It's time to kill the art department.&lt;/a&gt;"  The point of the post is that the idea that we build better products and ideas when the our company's structure is fluid - when the entire company environment, right down to the way we delegate and organize our responsibilities, is based on solving whatever specific problem your working on.  He talks about this specifically in light of not dividing your company into different departments.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This really resonates with me in our field of RIA development.  As a developer, I hate the idea that I don't have good ideas about design, and I'd hate to work in a place that didn't encourage everyone to get involved in building the solution.  Just because we're trained as software developers doesn't mean we don't have good ideas on usability, interaction and design too.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Honing our designer/developer work flow to the point that those roles don't exist in isolation has been a big part of the past year at Effective UI and part of my experience here that I've really enjoyed.  It's one of the best parts of our company and something that I feel gives us an edge over organizations who still isolate their teams.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-6929090866442700914?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/6929090866442700914/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=6929090866442700914' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6929090866442700914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6929090866442700914'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2007/12/its-time-to-kill-department-department.html' title='It&apos;s time to kill the &quot;Department&quot; department'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-8226366157846244505</id><published>2007-12-17T12:23:00.000-07:00</published><updated>2007-12-17T12:33:01.540-07:00</updated><title type='text'>Effective UI on Scoble</title><content type='html'>Our company president Anthony Franco and I were out in SF a few weeks ago and interviewed with Robert Scoble.  We had a really good time - Robert's an excellent interviewer and asked really good questions.  As a developer I was excited to get to talk about design some and our process of mixing dev and design work.  It was also nice how he kept asking us to promote ourselves (give our web address, etc.) since those aren't things I ever think to say.&lt;br /&gt;&lt;br /&gt;Each interview is kinda long - like 15 minutes.  Check 'em out if you have the time:&lt;br /&gt;&lt;a href="http://www.podtech.net/scobleshow/technology/1704/creating-killer-uis"&gt;&lt;br /&gt;My interview&lt;/a&gt;&lt;script type="text/javascript" src="http://www.podtech.net/player/popup.js"&gt;&lt;/script&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" id="player9e2b4c845c3a42f6ba7582e56667435f" align="middle" height="269" width="320"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;br /&gt;&lt;param name="FlashVars" value="content=http://media1.podtech.net/media/2007/12/PID_013156/Podtech_EffectiveUI_RJOwen.flv&amp;amp;totalTime=895000&amp;amp;permalink=http://www.podtech.net/home/4689/creating-kickass-uis&amp;amp;breadcrumb=9e2b4c845c3a42f6ba7582e56667435f" height="269" width="320"&gt;&lt;param name="movie" value="http://www.podtech.net/player/podtech-player.swf?bc=9e2b4c845c3a42f6ba7582e56667435f"&gt;&lt;param name="quality" value="high"&gt;&lt;param name="scale" value="noscale"&gt;&lt;param name="bgcolor" value="#000000"&gt;&lt;embed name="player9e2b4c845c3a42f6ba7582e56667435f" type="application/x-shockwave-flash" src="http://www.podtech.net/player/podtech-player.swf?bc=9e2b4c845c3a42f6ba7582e56667435f" flashvars="content=http://media1.podtech.net/media/2007/12/PID_013156/Podtech_EffectiveUI_RJOwen.flv&amp;amp;totalTime=895000&amp;amp;permalink=http://www.podtech.net/home/4689/creating-kickass-uis&amp;amp;breadcrumb=9e2b4c845c3a42f6ba7582e56667435f" allowscriptaccess="always" height="269" width="320"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;noscript&gt;Your browser does not support JavaScript. This media can be viewed at &lt;a href="http://www.podtech.net/home/4689/creating-kickass-uis"&gt;http://www.podtech.net/home/4689/creating-kickass-uis&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.podtech.net/scobleshow/technology/1703/creating-great-uis-for-clients"&gt;Anthony's interview&lt;/a&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://www.podtech.net/player/popup.js"&gt;&lt;/script&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" id="player897431e4496f45eeb851b7e20dee80b7" align="middle" height="269" width="320"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;param name="FlashVars" value="content=http://media1.podtech.net/media/2007/12/PID_013155/Podtech_EffectiveUI_Anthony.flv&amp;amp;totalTime=1172000&amp;amp;permalink=http://www.podtech.net/home/4688/creating-great-uis-for-clients&amp;amp;breadcrumb=897431e4496f45eeb851b7e20dee80b7" height="269" width="320"&gt;&lt;param name="movie" value="http://www.podtech.net/player/podtech-player.swf?bc=897431e4496f45eeb851b7e20dee80b7"&gt;&lt;param name="quality" value="high"&gt;&lt;param name="scale" value="noscale"&gt;&lt;param name="bgcolor" value="#000000"&gt;&lt;embed name="player897431e4496f45eeb851b7e20dee80b7" type="application/x-shockwave-flash" src="http://www.podtech.net/player/podtech-player.swf?bc=897431e4496f45eeb851b7e20dee80b7" flashvars="content=http://media1.podtech.net/media/2007/12/PID_013155/Podtech_EffectiveUI_Anthony.flv&amp;amp;totalTime=1172000&amp;amp;permalink=http://www.podtech.net/home/4688/creating-great-uis-for-clients&amp;amp;breadcrumb=897431e4496f45eeb851b7e20dee80b7" allowscriptaccess="always" height="269" width="320"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;noscript&gt;Your browser does not support JavaScript. This media can be viewed at &lt;a href="http://www.podtech.net/home/4688/creating-great-uis-for-clients"&gt;http://www.podtech.net/home/4688/creating-great-uis-for-clients&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.podtech.net/scobleshow/technology/1705/beneath-great-user-experiences"&gt;Application demos&lt;/a&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://www.podtech.net/player/popup.js"&gt;&lt;/script&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" id="playerabbc8eb0de2e4b27b93b3704ee446632" align="middle" height="269" width="320"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;param name="FlashVars" value="content=http://media1.podtech.net/media/2007/12/PID_013157/Podtech_EffectiveUI_demo.flv&amp;amp;totalTime=724000&amp;amp;permalink=http://www.podtech.net/home/4690/beneath-great-user-experiences&amp;amp;breadcrumb=abbc8eb0de2e4b27b93b3704ee446632" height="269" width="320"&gt;&lt;param name="movie" value="http://www.podtech.net/player/podtech-player.swf?bc=abbc8eb0de2e4b27b93b3704ee446632"&gt;&lt;param name="quality" value="high"&gt;&lt;param name="scale" value="noscale"&gt;&lt;param name="bgcolor" value="#000000"&gt;&lt;embed name="playerabbc8eb0de2e4b27b93b3704ee446632" type="application/x-shockwave-flash" src="http://www.podtech.net/player/podtech-player.swf?bc=abbc8eb0de2e4b27b93b3704ee446632" flashvars="content=http://media1.podtech.net/media/2007/12/PID_013157/Podtech_EffectiveUI_demo.flv&amp;amp;totalTime=724000&amp;amp;permalink=http://www.podtech.net/home/4690/beneath-great-user-experiences&amp;amp;breadcrumb=abbc8eb0de2e4b27b93b3704ee446632" allowscriptaccess="always" height="269" width="320"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;noscript&gt;Your browser does not support JavaScript. This media can be viewed at &lt;a href="http://www.podtech.net/home/4690/beneath-great-user-experiences"&gt;http://www.podtech.net/home/4690/beneath-great-user-experiences&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;br /&gt;Scoble's original post: &lt;a href="http://scobleizer.com/2007/12/06/getting-underneath-design/"&gt;here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-8226366157846244505?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/8226366157846244505/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=8226366157846244505' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8226366157846244505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8226366157846244505'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2007/12/effective-ui-on-scoble.html' title='Effective UI on Scoble'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-1383345767555009246</id><published>2007-12-17T12:19:00.000-07:00</published><updated>2008-12-09T10:56:56.919-07:00</updated><title type='text'>why I need an iPhone</title><content type='html'>If nothing else, I need an iPhone to have something to do in the bathroom (besides the obvious.)  Right now I play a game on my current cell phone called "delete all the pictures of the inside of my pocket."  It's not very fun and I win just about every time.&lt;br /&gt;&lt;br /&gt;It's kind of cold in our office today:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_opS9Z5vqQYQ/R2bMJ7F51DI/AAAAAAAAAD0/xCc8vqXrwm0/s1600-h/Photo+19.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_opS9Z5vqQYQ/R2bMJ7F51DI/AAAAAAAAAD0/xCc8vqXrwm0/s400/Photo+19.jpg" alt="" id="BLOGGER_PHOTO_ID_5145024095170712626" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-1383345767555009246?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/1383345767555009246/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=1383345767555009246' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/1383345767555009246'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/1383345767555009246'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2007/12/why-i-need-iphone.html' title='why I need an iPhone'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_opS9Z5vqQYQ/R2bMJ7F51DI/AAAAAAAAAD0/xCc8vqXrwm0/s72-c/Photo+19.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-5283326312108212365</id><published>2007-12-13T10:16:00.000-07:00</published><updated>2007-12-13T14:49:14.183-07:00</updated><title type='text'>Some important things to know about Facebook</title><content type='html'>I recently built a facebook widget out of one of our applications and I had a hard time getting started.  Suffice it to say that Facebook's documentation is pretty limited for total newbies.&lt;br /&gt;&lt;br /&gt;If you're new to facebook, you'll find the &lt;a href="http://developers.facebook.com/get_started.php"&gt;"getting started!" documentation&lt;/a&gt; more than frustrating: it's disingenuous.  It promises an easy start-up - just read a tutorial, check out an example, and you're on your way!  If only it were so easy.&lt;br /&gt;&lt;br /&gt;The problem is that no one at Facebook ever stops to explain how Facebook actually works.  For instance, there's a part of setting up an application where it asks for some default FBML, in case "setProfile" hasn't been called.  What does this mean?  Why would I call setProfile?  What's the deal with that?&lt;br /&gt;&lt;br /&gt;Maybe this comes naturally to most people, and so Facebook didn't feel the need to put it up there.  I know I'm not the brightest developer to ever grace the web, but I'm not the worst either, so I figured it was worth a post outlining the things I didn't understand.  On to said post.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The Two Main Parts&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;As far as I understand it, there are two main parts to any facebook application: a part of the application that can be embedded in the user's profile, and the actual application's page.  These two things are totally separate.  They can be related to each other, but don't really have to be.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Your Application Page&lt;/span&gt;&lt;br /&gt;You'll need to host your application and all of it's data on your own web-server.  Facebook has a &lt;a href="http://wiki.developers.facebook.com/index.php/Data_Store_API_documentation"&gt;service to allow you store data&lt;/a&gt; about a user on their server, but it's only in beta, and they still won't host your page or it's assets.  Your application can be written in just about any language, though all of the Facebook supported example applications are written in PHP.  When you get your application up on your own web-server, you can set your application page link under the "Callback URL" field in the application settings on Facebook.  Why this isn't called "Application URL" or "Hosted Application URL" or "YOUR URL" or anything more intuitive than "Callback", I can't tell you.&lt;br /&gt;&lt;br /&gt;Your application can either produce normal HTML output or custom Facebook-enabled HTML - called "FBML".  If you use HTML, your application will be loaded in an iframe.  If you use FBML, it'll be loaded directly into the facebook chrome on your facebook application page.  You'll need to specify either FBML or iframe in your application settings to make this work.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://wiki.developers.facebook.com/index.php/FBML"&gt;Facebook's set of FBML tags is fairly well documented&lt;/a&gt;.  Using their set of tags allows you to make some pretty good applications rather easily.  Put these or your own HTML into your page, load it on your browser, and set it as the application callback url.  Now when users hit apps.facebook.com/&lt;yourappname&gt;/, they'll see your page loaded into the facebook chrome, but only on that application page.  This page and this set of code has more or less nothing to do with adding the application to their profile, which is probably what you really want to do.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Adding your application to the user's Profile&lt;/span&gt;&lt;br /&gt;As I said before, the user profile part of the application is more or less completely separate from the rest of your application.  &lt;span style="font-weight: bold;"&gt;This is the part I really had trouble with.&lt;/span&gt;  Nowhere that I could find in the Facebook documentation to they explain the relationship (or lack thereof) between your application, your application page, and the application that's viewable in a user's profile.  Here's what I learned through a long week of dusty php:&lt;br /&gt;&lt;br /&gt;User profiles are comprised of FBML tags.  By adding an application to Facebook, you earn the ability to add FBML to a user's profile.  Any FBML you add will be limited to your application's space in the Facebook profile page.  FBML is added using Facebook's &lt;a href="http://wiki.developers.facebook.com/index.php/Profile.setFBML"&gt;"profile.setFBML()" method.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;For example, if you want to add a Flash application to the user's profile, you'd need to define the FBML tag associated with your flash app (the fbml:swf object) and then add it to the user's profile.  I do this in my application using &lt;a href="http://developers.facebook.com/resources.php"&gt;Facebook's php library&lt;/a&gt;.  The code looks like this:&lt;br /&gt;&lt;br /&gt;//set the flash fbml so that the widget shows up in the profile&lt;br /&gt;$user = $facebook-&gt;require_login();&lt;br /&gt;$fbml.= '&lt; imgstyle="border-width:3px; border-color:white;" swfsrc="[Your Swf's External URL goes here]" width="300" height="500"&gt;';&lt;br /&gt;&lt;br /&gt;$facebook-&gt;api_client-&gt;profile_setFBML($fbml, $user);&lt;br /&gt;&lt;br /&gt;This adds the fbml for the swf directly to the user's profile, meaning that the user will now see your application as part of their profile page.&lt;br /&gt;&lt;br /&gt;If the user has added their profile but this code hasn't executed, Facebook gives you the option of providing default fbml in your application settings.  This default FBML will only be displayed if your application hasn't added a single line of FBML to the profile; as soon as you add anything, even if it's non-visual, the default FBML will go away.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Adding Custom Data Parameters to User Profiles&lt;/span&gt;&lt;br /&gt;The last difficult thing I learned was about how to add custom variables to a user's profile.  My application needs to store three short string values per user.  I could've made and housed my own database to house this data, but that seems like a lot of work for just a few variables.&lt;br /&gt;&lt;br /&gt;Though Facebook doesn't yet offer an easy way to do this directly, you can store variables into the non-visual fb:js-string tag, like this:&lt;br /&gt;&lt;br /&gt;$fbml = '&amp;lt;fb:js-string var="VariableName"&amp;gt;variable value&amp;lt;/fb:js-string&amp;gt;';&lt;br /&gt;$facebook-&gt;api_client-&gt;profile_setFBML($fbml, $user);&lt;br /&gt;&lt;br /&gt;You can get this data back and parse your application using the profile.getFBML method and parsing the data by hand.  I'm sure there's a good, easy way to do this in PHP, but the XML library included with the Facebook php 4 library by default is a pain.  It doesn't recognize namespaces in XML elements (so the fb: tags screw it up) and it doesn't handle the dash in "js-string" well either.  I used a few string replaces to clear these out and then parsed the data by hand, like this:&lt;br /&gt;&lt;br /&gt;$scrubString = ereg_replace("fb:", "", $string);&lt;br /&gt;$scrubString = ereg_replace("js-string", "jsstring", $scrubString);&lt;br /&gt;&lt;br /&gt;//create a new XML object from our "scrubbed" string&lt;br /&gt;$impl = new IsterXmlSimpleXMLImpl;&lt;br /&gt;$sxml = $impl-&gt;load_string($scrubString);&lt;br /&gt;&lt;br /&gt;//Get the "jsstring" members of our XML object, which is&lt;br /&gt;//where our earth live specific variables are stashed.&lt;br /&gt;$jss = $sxml-&gt;fbml-&gt;jsstring;&lt;br /&gt;&lt;/yourappname&gt;&lt;br /&gt;The variable "jss" now consists of an array of our js-string variables.  Parsing the data is easy using a quick loop:&lt;br /&gt;&lt;br /&gt;$variableName;&lt;br /&gt;foreach ($jss As $result) {&lt;br /&gt;  $attributes = $result-&gt;attributes();&lt;br /&gt;  $var = $attributes['var'];&lt;br /&gt;    switch ($var) {&lt;br /&gt;         case "VariableName":&lt;br /&gt;          $variableName = $result-&gt;CDATA();&lt;br /&gt;          break;&lt;br /&gt;        //etc.&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;PHP 5 includes some native XML processing methods, so it's probably much easier - the server I was forced to host on only had PHP 4, so we had to make it work.&lt;br /&gt;&lt;br /&gt;I hope this helps save you some time on your future facebook endeavors.  Feel free to hit the comments if you have other questions about adding Flash apps to facebook and I'll answer if I can.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-5283326312108212365?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/5283326312108212365/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=5283326312108212365' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5283326312108212365'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/5283326312108212365'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2007/12/some-important-things-to-know-about.html' title='Some important things to know about Facebook'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-7794259440197365209</id><published>2007-11-19T09:29:00.000-07:00</published><updated>2007-11-19T09:57:52.178-07:00</updated><title type='text'>Amazon Kindle: Death by Bad UI</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.engadgethd.com/media/2007/11/product-descr-book._v4948744_.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 400px;" src="http://www.engadgethd.com/media/2007/11/product-descr-book._v4948744_.jpg" alt="" border="0" /&gt;&lt;/a&gt;Jeff Bezos announced the Amazon Kindle this morning - the latest release in the long attempted and never perfected field of e-book technology.  The Kindle is a device you carry like an ipod, no thicker than a pencil, that lets you download and read books and newspapers without carrying them all around.&lt;br /&gt;&lt;br /&gt;The Kindle has a &lt;span style="font-weight: bold;"&gt;great business model&lt;/span&gt;.  Once a customer purchases a book, they can download it forever for free, meaning that they can delete it to save space and buy without fear of losing their books if their kindle breaks.  The device uses both wireless EVDO (cell phone) networks as well as traditional wifi, meaning connecting is easy.  Users can purchase subscriptions to newspapers and magazines and get new issues instantly.  I really like how accessible their making e-books and how easy the business model is on users.&lt;br /&gt;&lt;br /&gt;As a business model, Kindle is really great and on par with iTunes - maybe even better - but the good news stops there.  &lt;span style="font-weight: bold;"&gt;As a piece of hardware, it's a near total disaster.&lt;/span&gt;  The UI isn't the worst I've ever seen, but, well, it's about as far from an iPod as you can get.  The screen is black and white and grey.  About a third of the real estate is wasted on buttons, and about half of that is for a keyboard. Yes, a keyboard. Because sometimes, when I'm reading a book, I like to type an email.  Or something.&lt;br /&gt;&lt;br /&gt;What the Kindle really needs to last is a &lt;span style="font-weight: bold;"&gt;total ui over-haul&lt;/span&gt; - a little iPhonization.  The &lt;span style="font-weight: bold;"&gt;user experience has been totally neglected on Kindle&lt;/span&gt;; it looks like a bad, over grown palm Trio, which is the last thing I'd want to read a 400 page book on.&lt;br /&gt;&lt;br /&gt;Books are a visual experience with very little interaction, and the hardware needs to reflect that - the entire device should be a &lt;span style="font-weight: bold;"&gt;color touch screen.&lt;/span&gt;  If I need a keyboard, one should appear semi-transparent over my book.  I should be able to shop for books on the device, &lt;span style="font-weight: bold;"&gt;dragging&lt;/span&gt; them from some amazon book store to a local hard drive my moving my fingers around.  And the "next" and "previous" page functions are a perfect place to implement some of the &lt;span style="font-weight: bold;"&gt;touch-gesture technology&lt;/span&gt; we've been experimenting with: drag your finger in one direction and it goes to the next page, the opposite and it's the previous.  This could change based on your region to avoid the prejudicial left-to-right metaphor it's currently shackled with.&lt;br /&gt;&lt;br /&gt;I need to WANT to use this thing in order to buy it, and right now I just don't.  The iPhone has ruined me and I won't settle for a device that doesn't provide just as good a user experience.&lt;br /&gt;&lt;br /&gt;As it stands, unless Amazon plans to release an updated version 2 of this hardware ASAP, I think we can get ready to relegate the Kindle to the land of forgotten technology, along with Laser Disc and Betamax.  Sorry Kindle - you're the best e-book reader to date, but you're still just not good enough to replace printed paper.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-7794259440197365209?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/7794259440197365209/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=7794259440197365209' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7794259440197365209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/7794259440197365209'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2007/11/amazon-kindle-death-by-bad-ui.html' title='Amazon Kindle: Death by Bad UI'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-6276709707845683566</id><published>2007-11-04T17:17:00.001-07:00</published><updated>2007-11-04T17:20:30.021-07:00</updated><title type='text'>Help Stop Internal Build Errors</title><content type='html'>Internal build errors are the bane of my existence, and they oftenhave nothing to do with my code.  I posted a large number of solutions and causes I'd found on my old blog, &lt;a href="http://rjowen.wordpress.com/"&gt;here&lt;/a&gt;, but sometimes they still happen and &lt;span style="font-weight: bold;"&gt;for no good reason.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;From what I've seen, Flex Builder seems to crap out and stop compiling if there's more than a few hundred classes in your workspace.  The best and most consistent solution I've found is to &lt;span style="font-weight: bold;"&gt;clean and rebuild&lt;/span&gt; until the error goes away. &lt;br /&gt;&lt;br /&gt;Why can't Flex Builder do this for us, or at least try it a few times before throwing the error?  The answer is: it could, but it doesn't, and &lt;span style="font-weight: bold;"&gt;all it takes is enough people asking Adobe to add this feature for it to become a reality.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Please join me in the fight against internal build errors by voting for &lt;a href="https://bugs.adobe.com/jira/browse/FB-10565"&gt;this enhancement request.&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-6276709707845683566?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/6276709707845683566/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=6276709707845683566' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6276709707845683566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6276709707845683566'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2007/11/help-stop-internal-build-errors.html' title='Help Stop Internal Build Errors'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-8198012105348260980</id><published>2007-10-10T18:46:00.000-06:00</published><updated>2007-10-10T18:48:51.153-06:00</updated><title type='text'>Workspace Corruption and Moxie Beta 2</title><content type='html'>Moxie Beta 2 corrupts the .metadata files on close on my system (Intel Mac.)  The workaround is to copy your .metadata file before closing flex builder and replace it with your copy before you restart.&lt;br /&gt;&lt;br /&gt;Vote for the bug &lt;a href="https://bugs.adobe.com/jira/browse/FB-9966"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-8198012105348260980?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/8198012105348260980/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=8198012105348260980' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8198012105348260980'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/8198012105348260980'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2007/10/workspace-corruption-and-moxie-beta-2.html' title='Workspace Corruption and Moxie Beta 2'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-1977375127034128620</id><published>2007-10-03T17:08:00.000-06:00</published><updated>2007-10-03T17:25:05.912-06:00</updated><title type='text'>Problems loading Workspaces or Projects in Moxie Beta 2</title><content type='html'>I tried to point my new &lt;a href="http://labs.adobe.com/technologies/flex/flexbuilder3/"&gt;Beta 2 version of Moxie&lt;/a&gt; to the old Beta 1 workspace, and it froze on me several times.  I tried using a new workspace and importing the projects with the same result.&lt;br /&gt;&lt;br /&gt;The workaround is to build new project files on the old project directories (back them up if you're worried.)  You'll have to re-set all your project properties, unfortunately.&lt;br /&gt;&lt;br /&gt;I logged this as a bug - please vote for it &lt;a href="https://bugs.adobe.com/jira/browse/FB-9920"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-1977375127034128620?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/1977375127034128620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=1977375127034128620' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/1977375127034128620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/1977375127034128620'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2007/10/problems-loading-workspaces-or-projects.html' title='Problems loading Workspaces or Projects in Moxie Beta 2'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-6317211480588106636</id><published>2007-10-03T16:08:00.000-06:00</published><updated>2007-10-03T16:14:44.657-06:00</updated><title type='text'>AIR is......AIR?</title><content type='html'>Here's a question I thought of in the bathroom today:&lt;br /&gt;&lt;br /&gt;If RIA's are about bringing desktop-like interaction and performance to the web, and Adobe AIR is about bringing RIA functionality back onto the desktop, are we really just bringing the desktop back to the desktop?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-6317211480588106636?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/6317211480588106636/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=6317211480588106636' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6317211480588106636'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/6317211480588106636'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2007/10/air-isair.html' title='AIR is......AIR?'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-1567405893873285341</id><published>2007-10-03T14:59:00.000-06:00</published><updated>2007-10-03T15:03:17.128-06:00</updated><title type='text'>File a Bug!!</title><content type='html'>If there's one thing I learned at MAX this year, it's that the Adobe bug base is alive and kicking and that the Flex team is very focused on fixing the issues they've encountered.&lt;br /&gt;&lt;br /&gt;If you find a bug, please file it &lt;a href="https://bugs.adobe.com/jira/secure/IssueNavigator.jspa?"&gt;here&lt;/a&gt;.  And if you're a dedicated developer interested in making Flex better, please go through the weird UI to find some of the more important bugs and vote to have them fixed. :)  My only complaint about this bug tracking system is that it's really hard to wade through the list of issues to find the one you want...voting for them without soliciting your friends and co-workers with a specific URL is a little difficult.&lt;br /&gt;&lt;br /&gt;Here's to Flex, the Flex Team, and everything they're doing to make Flex better.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-1567405893873285341?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/1567405893873285341/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=1567405893873285341' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/1567405893873285341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/1567405893873285341'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2007/10/file-bug.html' title='File a Bug!!'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7758626027926442077.post-2607291557229050230</id><published>2007-10-03T14:54:00.000-06:00</published><updated>2007-10-03T14:56:00.658-06:00</updated><title type='text'>Blog kickoff!</title><content type='html'>Nothing starts off a new blog like a good youTube video.  Today's lesson focuses on Maths and their importance in our society.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/MiMWJ1xBo8w"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/MiMWJ1xBo8w" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Thanks to John McRee for sending this out.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7758626027926442077-2607291557229050230?l=rjria.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rjria.blogspot.com/feeds/2607291557229050230/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7758626027926442077&amp;postID=2607291557229050230' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2607291557229050230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7758626027926442077/posts/default/2607291557229050230'/><link rel='alternate' type='text/html' href='http://rjria.blogspot.com/2007/10/blog-kickoff.html' title='Blog kickoff!'/><author><name>RJ</name><uri>http://www.blogger.com/profile/02716003236306728379</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://img341.imageshack.us/img341/4962/sprjrc9.png'/></author><thr:total>0</thr:total></entry></feed>
