Screencast: Using the Library Panel in Flash Catalyst

I think the Library Panel in Flash Catalyst is one of the most important parts of the product when it comes to working in a team environment and the design-develop workflow (more on that in a later post). I’m also trying to do more small, detailed Catalyst tutorials as we ramp up to MAX, so I’ve posted a tutorial on using the Library Panel. Most of this will be pretty obvious but there are a couple of nuances to what shows up in the Library Panel so hopefully it’s valuable to folks. I suggest toggling into full screen mode so the tutorial is actually watchable.

AFCS Presentation to BAADAUG Slides

I just posted the slides for my BAADAUG presentation on Adobe Flash Collaboration Service.

I had a great time with the group and I appreciate them putting up with a brand new slide deck. I’ll be giving a version of this over at the ActionScript Conference in Singapore, so if you’re in the area, you can still register!

In The Bay Area? Come Check Out AFCS

I’m going to be presenting at the Bay Area Application Developer Adobe User Group today (Tuesday) on Adobe Flash Collaboration Service. It starts at 6:30 at Learn iT!. Here’s the blurb:

Ryan will walk us through how to getting started with AFCS, show us how to use the default pods that are delivered with AFCS, and how to extend existing components to make them collaborative. Finally he will show us real world examples of AFCS in action.

MAX Widget and Early Registration

Serge Jespers created a badass MAX Widget with some funny facts about past MAXes (how many do you remember?) and also the ability to create your own testimonial for MAX.

;

Check it out above and hopefully it convinces you to register for MAX if you haven’t already. The Early Bird discount ends on August 31st, so there isn’t much time to save!

Adobe SXSW Sessions

sxsw_2010_logoSXSW session voting is up and there are a ton of Adobe-centric sessions that are worth voting for. Jonathan Wall, the new Flash Product Marketing Manager, has a great list of all the sessions. They’re also all listed in one place on this page so you can just run down and click the thumbs up on everything.

A couple of other sessions I’m involved in or suggest voting for are Rich Internet Interfaces Beyond Mice and Keyboards, Harnessing The Chaos of Cloud-Based Data, Best (and Worst) Practices building Rich Internet Applications.

I’m really looking forward to SXSW this year, so hopefully we’ll see you in Austin!

Adobe on the Gartner Hype Cycle 2009

Gartner recently released its Hype Cycle for Emerging Technologies and ReadWriteWeb has some good analysis. For those who aren’t familiar with the Gartner Hype Cycle , it’s essentially a map of technologies over five phases. Those phases correspond with the value of a particular technology. As you would imagine, technologies start off very exciting with a ton of hype. As reality sets in, the hype dies down, and people end up underestimating the technology (this is the Trough of Disillusionment). Finally people start to figure out both the true value of a technology and how to use it effectively and it enters the Plateau of Productivity.

I’ve always thought the Flash Platform provided the best way to experiment with emerging technologies and provided companies with a widespread distribution on which to experiment and test these technologies. Our community also has the most cutting edge and creative developers, so Flash has a built in advantage that you guys just try things first. As a result, I’ve always tracked this particular Hype Cycle to plot it against the Flash community’s interests. I’ve mapped out the hype cycle below and then explained in detail which technologies relate to projects or capabilities of the Flash Platform

gartner_hype_adobe

  • Video Search – This is something we’ve been working on for a while. The latest version of Flash Media Server supports adding searchable metadata to live streams so you can make live video searchable.
  • Surface Computers – Surface computing is all about the multi-touch. We’ve got you covered with Flash.
  • Augmented Reality – The guys over at Spark have been doing this for a while with their port of the FLARToolkit. And we’re seeing a lot of examples of augmented reality and Flash.
  • Internet TV – This can mean a bunch of different things, but I take it to mean Internet-connected TVs (of course just Internet TV like Hulu is also covered by Flash). While Adobe isn’t in the TV hardware business, we are working on Flash Player for television sets with our Digital Home initiative. That means Flash Platform developers can target these Internet-connected TVs.
  • E-Book Readers – We’re not working on our own eBook Reader, but the EPUB format is becoming an eBook standard for consuming digital book content. And we’ve got software like Digital Editions, a desktop eBook Reader.
  • Video Telepresence – arguably not the most cutting edge, but Gartner predicts that video telepresence will cost the travel industry $3.5 billion annually by 2012 and Adobe Connect is a slick little product that does a lot and works everywhere the Flash Player is installed.
  • Online Video – Hopefully this one doesn’t need any backup. Flash IS video on the web.
  • Public Virtual Worlds – A bit of a stretch but Flash is powering a number of virtual worlds including SmallWorlds and AllGirlArcade’s Spark City. The collaboration feature, interactivity, and runtime proliferation make the Flash Platform a pretty good place to deploy virtual worlds.
  • SOA – LiveCycle ES is all about SOA and it makes it easy for companies to integrate existing systems and leverage them as services.

What’s interesting is that most of what I perceived as being tied to the Flash Platform in some way is all at the left side of the curve, in the areas of huge hype or in the middle of the Trough of Disillusionment. On the bright side, the timeframe for most of these technologies to hit the mainstream is in the 2-10 year mark. That seems like an eternity in the technology industry, but it means you can get the first mover advantage as these technologies hit the Plateau of Productivity.

CFUnited Thoughts

cfunited_logoI had a great week at CFUnited last week and it’s great to see the ColdFusion community continue to set the bar for enthusiasm and camaraderie. Brian Swartzfager, Jeff Coughlin, and Dan Vega have great writeups. Adam Haskell has a rundown of some of the presentations and you can grab some of the slides over at SlideSix.

I was impressed both with the response to our news about ColdFusion 9, the new features, and the Flex track that Andy Powell helped with. Having guys like Doug McCune present alongside ColdFusion rock stars like Ray Camden is great for both communities. ColdFusion has a few new features that are going to lower the barrier for non-CF RIA developers to start using ColdFusion. ColdFusion as a Service makes it easy to use ColdFusion to accomplish things right inside your Flex application — like send an email or generate a document — that you can’t do with just Flex. The ColdFusion-AIR functionality makes online/offline sync (something that’s tough to do) a breeze. We’ve always talked about the fact that ColdFusion is the best middle and back end for creating RIAs and as the sophistication of Flex/AIR have evolved, ColdFusion has kept pace.

And there’s nothing like the ColdFusion community. It’s a welcoming, but still tight-knit community that’s willing to help anyone regardless of skill level. It was great to see people I’ve met on the road and meet a few new people as well. Congrats to the team at Stellr for putting on a great show. I really encourage any Flex (and ColdFusion) developer to check it out. And then come check out 360|Flex. Between these two conferences we’ve got a lot of knowledge out there.

ColdFusion 9 & Flex 4 Application Development: Slides for my CFUnited Talk Tomorrow

I’m a lazy slacker so my talk at CFUnited, ColdFusion 9 & Flex 4: Application Development doesn’t have any session description. I’m assuming that means I’ll probably have 2 people there, especially because it looks like CFUnited has an awesome speaker lineup (yet again) but for anyone who wants them or wants to see what I’ll be talking about I’ve posted my slides below and uploaded them to Share. I’ll be covering the new data wizards in Flash Builder 4, some new features in the Flex 4 SDK, and topping it off with how to use the ColdFusion as a Service feature in your Flex applications.

Up-leveling the Flex User Interface Discussion

higher_levelLast week in New York I got a chance to present and watch at DelveNYC. It was a great conference and I wish I could have caught more of it; very valuable for designers of all stripes and a great set of speakers. One of the things that I thought was so valuable about it was that it focused on a lot of design theory. My favorite talk of all came from Theresa Neil who spoke on Rich Patterns in UI Design. It was a phenomenal talk and it was clear that Theresa is well versed in all of the RIA technologies as she talked about controls for each technology, accessibility, and pointed out great examples of her patterns being put to use in Flex applications and other RIAs.

I’m sorry you couldn’t be there, but I encourage

What struck me was that this woman with an amazing grasp on theoretical user interface design for rich Internet applications hadn’t gotten my attention before. I like to think I track the Flex world pretty closely and I totally missed her. I’d imagine others have also. I think part of the problem is that we’re still thinking about RIAs and Flex on a development level. This talk at Delve completely up-leveled the conversation for me and got me thinking about the wider world of user interface design and how we, as Flex developers, should be thinking about it.

I’m not smart enough to dive into this myself but I want to point out some of her great resources that I think all Flex and RIA developers should look at and take to heart.

  • 12 Standard Screen Patterns – A great list of standard UI patterns that you can leverage in your Flex applications. She literally has 100 examples of RIAs that use these patterns.
  • 30 Essential Controls – A list and examples of 30 controls/components that she thinks are critical for RIA user interface design. It includes a check list of major RIA frameworks so you can see which frameworks have which controls. Flex component developers, this is a great place to start if you’re looking to sell/create custom controls in Flex.
  • 6 Tips for a Great Flex UX – a six part series with some great tips and getting started links for Flex RIAs.
  • Slides from Theresa’s talk at DelveUI – I’m sorry if you couldn’t be there, but I encourage you to grab her slides and walk through them.

What made me so impressed after hearing her speak and reading through her blog was how Flex-savvy she was while coming from a completely different background than most of the Flex community. Having people like this thinking about Flex and where it fits makes me feel very happy and hopeful for the future of Flex as an RIA technology. We need so much more of this kind of conversation within our community; I see this as the next level. Beyond the prefix debate, beyond the ActionScript debate, beyond the spark/halo debate – this is the stuff that will ultimately help people create world class applications that change how people work with information.

Photo from oddsock.

The Web Way vs the Wave Way vs the Flash Collaboration Services Way

afcs_logoAnil Dash has a post worth reading up on his blog that talks about the “Web Way” versus the “Wave Way” and why Google Wave won’t succeed because it doesn’t really fit the same pattern of successful web technologies. He makes 4 general points to define the “Web Way”:

  • Upgrades to the web are incremental. Instead of requiring a complete overhaul of your technical infrastructure, or radical changes to existing behaviors, the web tech that wins is usually the sort of thing that can be adopted piecemeal, integrated as needed or as a normal part of updating one’s websites or applications.
  • Understanding new tech needs to be a weekend-sized problem. For a lot of web developers, long before they start integrating a new protocol or platform into their work, they hack together a rough demo over a long weekend to make sure they truly grasp how it works. And a weekend-scale implementation on a personal site usually translates roughly into a 90-day implementation cycle in a business context, which is a reasonably approachable project size. (In tech, three days in personal effort often translates to three months of corporate effort.)
  • There has to be value before everybody has upgraded. This is basically a corollary to Metcalfe’s Law. While we know networks increase in value as they add more nodes, the nature of web tech is that, in order to be worthwhile, it has to provide value even if the people on the other end haven’t upgraded their software or web browsers or clients or servers. Otherwise you’re shouting into an empty room.
  • You have to be able to understand and explain it. Duh.

The entire post goes on to explain details of where Wave fits and where Wave fails. But as I read it I couldn’t help see it as a ringing endorsement of Flash and especially Adobe Flash Collaboration Service (AFCS). Before I dive in, I understand that Anil’s “The Web Way” has an inherent requirement that everything be “open”. Flash and AFCS probably won’t fit in most people’s definition of “open” as it relates to the web. In this case, I think that’s part of the benefit. Anil looks at Wave from the developer perspective and he provides a list of technologies required to use Google Wave and add real-time collaboration to your web application:

  • Federation (XMPP)
  • The robot protocol (JSONRPC)
  • The gadget API (OpenSocial)
  • The wave embed API (Javascript)
  • The client-server protocol (As defined by GWT)

That’s a lot of stuff for a developer to know and understand if they want to start building something that interoperates with and leverages the technology behind Google Wave. Now think about a Flash developer who wants to add real-time collaboration to their web application. They’ve got no real new protocols to learn (RTMP behind the scenes but not necessarily exposed in such a way that developers need to understand it), no new languages to learn, no new client-server protocol, it’s just ActionScript and(/or) Flex, and some new APIs. Then your application is real-time enabled. So let’s look at the four “Web Ways” and see how they apply to AFCS.

  • Upgrades to the web are incremental. With the pods and APIs for AFCS, it’s pretty damn easy to just integrate it with your current application. There is no rewriting from scratch and you can literally just add an AFCS component and enable collaboration for your application. As you dig deeper, the service gets more complex and you can do more with it, but to start, it’s dead simple.
  • Understanding new tech needs to be a weekend-sized problem. If you’re a Flash developer already, all you’re learning are a few new APIs. You still have to understand the fundamental issues behind real-time collaboration if you want to create complex components, but you’ve got the core development skills to create those applications so you can focus on learning the theoretical stuff and not the code stuff.
  • There has to be value before everybody has upgraded. This is my favorite, because it’s one of the benefits of Flash. AFCS has 2 versions, a Flash Player 9 version and a Flash Player 10 that adds some more audio support. If you’re targeting Flash Player 9 then 98.8% of the web can see your application and with Flash Player 10 it’s 86.7%. No one has to upgrade anything to see your new real-time enabled application.
  • You have to be able to understand and explain it. With AFCS you can easily add real-time collaboration features like video chat, whiteboarding, and shared data into your Flash-based application. I think that works.

Now again, I understand that openness is a pretty core part of what the web is. But there has always been a trade off between openness and innovation when it comes to the web. And even in cases where “open” can be innovative, like with Google Wave, everyone else has to catch up. With AFCS, even though it may not fit with the wider definition of the “Web Way” you can take advantage of the cutting edge technology that everyone is excited about and ensure that it’s 1) easy to build and 2) easy for your customers and users to view.

Thanks to Sachin for tweeting the link to Anil’s post. I didn’t take the time to read it until I saw he did.