links for 2009-05-28

It’s Like Firebug, but for Flex Apps: FlexSpy

I do just about as much web design as I do Flex work. Maybe more actually. I depend on a couple in-browser tools like Firebug and the Web Developer toolbar to help me get through some of the dicier design issues that pop up in every project. They are a necessity and some of the very first things I have my new students install every semester.

So, when I recently started working on some Flex projects where the UI design had some very complex CSS issues that were popping up, I longed for something similar in my Flex toolkit. A component that would allow you click into a Flex app and identify the various containers and controls and observe all of the properties for the component. I was really looking for something similar to the Inspect function of Firebug. For those of of you that have never used it, the inspect function turns your cursor in a DOM selection tool of sorts, producing a border around the objects you hover over. Clicking on the highlighted object will display the HTML markup portion that contains that element and then list any and all CSS properties affecting the element. It’s sweet. You can also then edit the style attributes live and non destructively, saving you trips back to the test editor for countless tweaks.

So, I put out a call for such a beast on Twitter. I got a couple responses. One suggestedDe MonsterDebugger“, an AIR app that integrates with Flash and Flex apps via a helper class you import into your app/movie. It’s pretty slick. Lee Brimelow has posted a video tutorial on how to use the app. As cool as it was, it actually was overkill for my needs. I simply needed styling assistance, not trace output or the method testing. So, I decided to give the other suggestion I received, FlexSpy. Bingo!

Just one thing… FlexSpy by default wants to open up pretty big. So big that it often covers the entire application window (or more, if your flex app is a tiny little widget or small AIR app). So large that on my MacBook Pro, even with a fully maximized browser viewport, it is too large to fit in the window. So, some tweaks had to be made. Luckily, aranud, the owner of the FlexSpy project on Google Code has affixed a WTFPL license to the code. Check out that last link… LOL! So, with this highly modifiable license applied to it, it seemed like a perfect time to hack up the component and recompile it to be a little more Flex-ible. *ahem*.

The changes I made were simply in the constructor, so instead of simply calling the method and instantiating a FlexSpy window at the default giganto-size, you can now pass a height and a width to it and set the size on open. (eg., 450) vs.

Ahhh. Much better.

To see an example of what FlexSpy can do for you, check it out here. To download the source and a SWC file that contain my modifications, download this: FlexSpy component and source. Enjoy. And many thanks to Araund for the original component, it was perfect for my needs!

links for 2009-05-21

360|Flex Links, Deck and More.

360|flex Indy is a wrap. A great show put on by Tom Ortega and John Wilker. Tons of great speakers, a nice conference center, and some really cool people. I learned a lot, met a lot of new contacts and had some fun. I also saw Star Trek (sorry Honey, I’ll go see it with you too.). Not only did I see some great presentations by people like Doug McCune, Bryce Barrand, Juan Sanchez and many many others, I was also a presenter at the show. A heartfelt thanks to Tom and John for the invite!

I had a great turn out for my session, “Developers are from Mars, Designers are from Venus”. It was a blast to talk to people and have them relate their stories of collaboration issues and the workplace. I think some new ideas were brought forth for some of the participants and would love it if they commented here on the content.

That said, I promised I would share my reading list and some links mentioned in the presentation… so, here is a list of the books I mentioned, plus a few extras.

And the quote from Zeldman I mentioned, originally posted to Twitter here:

Content precedes design. Design in the absence of content is not design, it’s decoration.

Some of the sites I mentioned to check out.

Finally, in case you did have a copy of the deck, here you go: 360|Flex Presentation Deck. Thanks for coming!

The RIA is Dead, Long Live The RIA.


I’ve been talking to a lot of people at conferences and other events lately regarding RIA design and development. I’m noticing something. Maybe a trend, not sure yet. So, here it is. I feel silly talking about RIA as a separate type of app apart from the standard web app. It’s almost an unnecessary qualifier at this point. Roll with me on this for a moment if you will.

RIA as a term, as a mindset, as a bold new direction was needed when Jeremy Allaire wrote the white paper prior to the release of Flash MX (2002). Most web apps were staid, slow, and unwieldy. There was a new type of app percolating though. These were very different. They were rich, interactive, allowed for asynchronous communication between the client and the server increasing perceived responsiveness and enhancing the user experience. There needed to be a term applied to these new apps that were beginning to be concepted created and deployed. Thus, the birth of the RIA. I’ve written about this before.

Flash forward to 2009 and you’ll be pretty hard pressed to find any consumerized web apps that don’t have some layer of RIA tools or techniques being employed to enhance the UX. Nobody is blogging about the hottest new monolithic server side bean, dll etc that requires a maddening combination of Konami code-like query string mumbo jumbo delivered to it on a page refresh induced GET request. I’m pretty sure there isn’t some sort of Bizarro world of web design that is holding conferences with ugly Macs and stone faced developers talking like cavemen plotting to fill the world with crappy web apps and taking down Superman.

So, this begs the question… Is the term RIA needed anymore? What is it a unique qualifier against that makes it valid as a term? I would venture to guess… Nothing. Aren’t RIAs just IAs? Or maybe with the widespread use of cloud based apps and SaaS, they might just be As.

With this in mind, maybe it’s time to coin the next three letter acronym that is conference worthy. Let me take a couple stabs here.

  • “CIA” Context aware Internet Application: This app knows where you are, when you are and what you are seeking. The app experience scales, shifts and changs if you are mobile or on your desktop, and knows that on the day of your flight when you visit on your phone that you don’t care about buying tickets, but you might need a reminder on baggage requirements and which gate you should be looking for. This shift in app dev is just getting underway, but the actual context shift is largely done by user agent detection and crude URL hacks like subdomains, etc. Look for a big push in this in the next gen of apps, especially as more devices make location aware apps easier to deploy reliably. This acronym also has the benefit of making you sound like a badass spy.
  • “PIA” Personalizable Internet Application: Your iTunes experience is not mine. I haven’t ever bought a TV show. I don’t want to be promo’ed a TV show ever. Ever. You, on the other use iTunes to dl Jon Stewart, and have never heard of Crystal Castles, Peaches or LCD Soundsystem. You see where I am going with this. Personalized pages, portals and expereicnes based on use patterns and preferences. Apps that learn how to be better by tracking how you use them! Amazon is obviously a leader in this, but yeah, they have a huge database and an army of developers. Most people don’t. The algorithms to handle this sort of analytics and content filtering might just be the next wave of 3rd party APIs or cloud based web services to allow your smaller apps to apply these laws of large numbers and trending to a smaller 300-500 item SKU db using a larger sampling database to help with the metadata matchup. This acronym is also the airport code I fly out of, bonus.

So, what are your thoughts on this? Does the term RIA still stand up? Is it a valuable differentiator? How about the next big things in web app dev. Obviously things like persistant connections and binary services, push services etc are big and coming and game changing for certain reasons, but I’m not sure if they are as big of paradigm shifters as the RIA was.

Headed to Athens, Ohio in June.

Just got confirmation that I will be presenting at Spring <br /> Conference. I’m really looking forward to this. It’s a one day, web design and standards focused event with a fantastic lineup of presenters. I’ll be there, joining Kevin Hoyt, Eric Meyer, Stephanie Sullivan, Daniel Shutzsmith. I’ll be presenting a session on designer/developer collaboration and another session on a website design case study profiling some reent social media and RIA work we have completed at The Iona Group. Very cool.

The event is approaching rapidly, so get signed up today. It’s only $65 for professionals, $20 for students. A great price for this kind of content.

Presentation Slides: Social Media 101

Thanks to all of you who attended my web meeting today. I appreciate that you took time out of your day to hear me blab about blogs and twitter! Anyway, here is the presentation I gave today, save in PDF format, enjoy! socialmedia101


2 Years Later… An Update on Why Microsoft Silverlight Will Fail

2 years ago, I wrote a pretty dismissive post about my views on Silverlight and where it would go. Then, a year ago I followed it point by point with another post to see where things had improved. It wasn’t that impressive. So, here you go… a bullet point by bullet point update, 2 years into it.

  • No IDE for me – With some work, you can compile Siliverlight using Eclipse. I still want Blend on my Mac.
  • No plug in for Linux - If you are a Linux user, you can download yourself a hobbled Silverlight version. Sounds fun, right?
  • Market Penetration = Demand - A few months in, Flash player 10 is already over 60% market penetration. Microsoft still has yet to publish any sort of numbers on what sort of percentage of web users can use Silverlight content. It’s been two years! It’s estimated that the number is around 25%. Here’s the kicker though, IMHO, not a single remarkable rich media site has been created to showcase a new movie or recording from a band or singer using Silverlight as it’s sole delivery platform. MS is getting killed here. I’d love to get some info that disproves this, so if you can share something, some links, etc, please comment on this post.
  • The Growing Mobile Content Market -Alright, so Adobe’s mobile strategy is pretty shoddy. MS hasn’t really capitalized on this though, so I’d call it a wash.
  • Maturity – SilverLight is just entering it’s 3.0 version. They’ve added some cool features like multi-touch, that clearly eclipse the interactive design features on the Flash platform, but most of the additions and tweaks are really just MS playing catchup (eg. H.264 support). SilverLight out of the Browser doesn’t make a whole lot of sense to me at all. If you have the .Net platform to deliver to, why worry about delivering a hobbled .Net app when you could have a fullblown WPF exe?
  • The Developer Community - Obviously the .Net crowd is huge, but I’m not seeing any high profile defections, even in this down market, where developers should probably be trying out new tech to improve their marketability.
  • CS3 Microsoft still has no creative suite competitor.

So, beyond the bullet points, some things to consider. Silverlight was the video platform for MLB. They got pitched out for Flash. Silverlight was the video platform for the Olympics on NBC. They got dumped unceremoniously. Ouch. These two Defections really have to hurt. Silverlight needs customers like this to push adoption, but as it is right now they have a big chicken and egg situation on their hands.

That said, the tech is good for the industry. Really, Silverlight is doing a lot to push Flash’s advances. I also believe that the duoply of binary plugins, Flash and Silverlight is leading to a ton of innovation in the non-plugin RIA dev space. JQuery is super advanced, HTML 5 and CSS3, the Canvas tag, on and on. A lot of good things are happening right now because of this healthy competition.

There are some cool RIAs coming out in the Sliverlight space, Redliner being one of the best, IMHO. BTW, my favorite Silverlight “feature”? The fullscreen alert that appears when watching a video and the transition from an embedded video to a fullscreen video view on Silverlight is way nicer and smoother than the same function on Flash. Don’t believe me? Go to that Redliner site, watch the video and then jump to fullscreen… then do the same on Youtube. Which one looks designed? Which one looks cobbled together? Flash needs to allow for skinning of this message and better handling of the blank screen syndrome when going fullscreen.

Also, the recent additions of streaming services for Silverlight to IIS is a great move. Adobe, are you paying attention? FMS/FMIS might be priced a tad high now, comparatively, don’t ya think? Hmmm… free versus $995.

So what do you think about all of this? Is 2 years of Silverlight “experimentation” by MS enough to expect better results? Is this about where you thought it would be? I’d like to know what metrics MS is using to gauge it’s success.

360 Flex is just a week away… Are you ready for the awesomeness?

So, a quick reminderĶ the only 360|Flex event of 2009 is next week, and there are still some tickets left if you are interested in seeing what is going on in the Flash platform’s RIA development toolset!

Why should you go? What does $550 of your hard-earned cash (or your companies) buy you at 360|Flex Indy?

First off… I’m speaking there! I’ll be covering designer/developer integration issues in RIAs. It going to be an hour of insights for all those involved. So, beyond that… what else do you get? As if you needed anything else. ;-)

  • Almost 60 sessions of Flex, AIR and ActionScript goodness
  • 4 days of conference sessions
  • 4 days of lunch (great for networking)
  • 3 evening receptions at Rock Bottom (again, great for networking)
  • 2 (maybe more) different launches of products (Axiis and others)
  • 1 Bug Quash event on Sunday (come make Flex better)
  • 1 Flex 101 hands-on also on Sunday (to get you prepped for the week)
  • 1 Charity Code Jam over the course of the show (to earn some Karma points)
  • 1 USB drive jam packed with copies of the sessions and code samples, plus some extra surprises
  • A chance to attend the only 360|Flex of 2009

You can check out the schedule for the conference and see who else will be there, and what there presenting here:

There is also an iPhone version of the schedule… check it out.

If youve been thinking about going, register ASAP, as the tickets are almost gone. Register at now to make sure you get in.

If you register for the event because I told you so, come say hi to me at the event and I’ll buy you a beverage.

RIAPalooza 2: Chicago RIA Conference Recap

Friday May 8th 2009… approximately one hundred designers and developers joined together to meet, talk and learn about Rich Internet Applications (RIA) at RIAPalooza 2. What a great day! Kevin Hoyt from Adobe was there, Michael Labriola, Josh Holmes, Steve Holstad, Corey Miller, Adam Flater and Pek Pongpaet, myself and Erik Peterson all presented on various topics related to RIA. Some nice work all around! You can see the session listing at the site, and hopefully many of the presenters will publish their notes and slides so that you can get your hands on these great topics.

I’m sharing my slides here. Please feel free to download ‘em!

Page 1 of 212