Surveying the Post-November 9th Landscape

With Adobe announcing the abandonment of all mobile Flash Player efforts, developers who formerly specialized in this platform are branching out a bit more and taking up both new and old technologies in exploration of other opportunities. This article is not meant to be comprehensive rundown in any way. I’m simply working through a number of thoughts in regard to certain avenues which I’ve considered approaching.

One of the excellent problems Flash has, is that it is good for such a variety of things. With such a tool (especially if you know it well enough) at your disposal, this makes it difficult to look beyond to other technologies. With that said, most Flash developers do already have a grasp on a variety of other tech simply because Flash is so great at working alongside other platforms. This is good for developers who are expanding their investigations into these technologies; considering what may be, at the least, a passive familiarity with a number of other avenues.

As an author and video trainer heavily invested in the Flash Platform, I fortunately don’t feel the bite as badly as some others in this industry. Since the announcements of November the 9th 2011, I’ve actually signed a number of new contracts focused upon Flash content (though I’m under contract for non-Flash subjects as well, now). With that said, I’m also a consultant and full time software engineer… so I do need to stay ahead of where things are moving so that I can advise others and make intelligent choices for any active projects.

HTML/CSS/JS

This seems to be where most developers are moving. It makes sense in a way since this is often where these developers working in Flash actually began their careers. This is certainly true for myself. In fact, I was championing standards based web design and table-less layouts before it was popular to do so… back in Mozilla Phoenix times… so I am no stranger to this stuff.

While I never completely left the HTML/CSS side of things- JavaScript is something I’ve avoided simply because there was historically very little that could be done with it. Differences across browsers compounded this problem to the point where I just didn’t bother – if it could be avoided. This isn’t the case now, of course; as JavaScript engines have become much more capable, differences across browsers have diminished, and a number of very useful frameworks are beginning to emerge.
http://www.html5rocks.com/

jQuery/jQuery Mobile

For some years now, I’ve used jQuery to take some of the pain points away from any JavaScript work I’ve had to undertake. jQuery provides what I have thought of a nice cushion to the difficulties one would normally experience in using this language – though, in truth… it provides a whole lot more that I’ve yet to take advantage of. With the proliferation of mobile devices, jQuery Mobile has emerged as a complimentary set of libraries when dealing with mobile websites, or even HTML-based applications.
http://jquerymobile.com/

PhoneGap

PhoneGap (Apache Cordova) provides developers with the ability to write a mobile app using web standards and then bundle everything up for distribution to a wide number of mobile platforms… a much greater number than AIR. This is a pretty big draw, and the PhoneGap Build service allows cloud-based bundling of an app to any of the supported platforms. Very convenient all around.

I’ve had terrible luck with all of my PhoneGap experiments so far. I keep telling myself this is because I’m unfamiliar with the technology. Not sure if this is the case or not. Everything just “looks/feels” so much crappier in HTML than it does in Flash. I attempted to port a mobile app I created as an experiment back when mobile Flex became possible for Android and just gave up. I’m hoping that it’s just a reflection of my inexperience in this area since I know people have had great success with it.
http://phonegap.com/

Dart

Dart is a new language being offered by Google. They pretty much want this to take the place of JavaScript due to that languages shortcomings. I haven’t done anything substantial in Dart yet aside from downloading the editor and running through their tutorials and samples. It does seem much closer to ActionScript 3 than JavaScript does… and the editor is based on Eclipse so even that aspect is familiar if coming from Flash Builder or FDT. I’m hoping Dart catches on and that it does become an alternative to JavaScript. In the meanwhile though… it will compile to JavaScript… so that’s something.
http://www.dartlang.org/

HaXe

If I remember correctly, HaXe emerged from the ScreenWeaver project… someone please correct me if I’m wrong. I used ScreenWeaver quite a bit (back before Adobe AIR was a possibility) for specialized projection software systems. It basically created enhanced projectors for Flash content similar to what applications such as MDM Zinc are now doing. HaXe has been on my radar for years – though I’ve never gotten around to actually using it.

The HaXe platform is very interesting because it allows us to develop in one common language… and output to whatever supported platform we wish. Target platforms include; JavaScript, Flash, Neko, PHP, C++, with C# and Java in the works. There is this gnawing in my brain telling me that, in the near future, this is going to be the preferred model of programming. It’s almost like “run once deploy anywhere” – except where that phrase was used to target a single runtime, this newer model targets multiple runtimes, VMs, and environments by adopting them and their standards. Very different way of doing things, but something I feel we are going to see more and more.
http://haxe.org/

Adobe Edge

Adobe Edge is a new motion and interactivity tool from Adobe which can output rich, interactive compositions using standard web technologies like HTML5, CSS, and JavaScript – basically Flash Professional 4 for HTML output. I don’t say this to put down Edge – this is actually a really nice thing. One absolutely great thing about Flash when it was focused on animation and basic activity, was how fun it was to push things, experiment, and see what the technology could do. I get the same feeling from Edge. Is it basic nostalgia or something more substantial? To see HTML do the things only Flash could do even a few years ago – and to do it with such ease and control… is a wonderful thing.

I’m doing a lot with Edge right now. It’s a major focus of mine for 2012.
http://labs.adobe.com/technologies/edge/

“Alternative” ActionScript/Flex IDEs

I like Flash Builder a lot and am quite comfortable in it. I now have a number of reservations around this IDE though (thanks, Adobe!)… I mean, what if they decide they just don’t want to make dev tools at all anymore? On that note; I’m actually floored that they’re trashing design view from Flash Builder. Having always found design view to be very useful in layng out components and configuring item renderers. This affects my workflow and makes Flash Builder less useful to me. For a “creative” and design-focused company, I cannot imagine the internal justification for this.

Anyhow… I’ve installed both FDT5 (free version) and FlashDevelop on my laptop. Even if one of these does not become my primary dev environment for Flash-based work, at least I may be comfortable enough in something else for when Adobe finally does pull a coup de grâce on Flash Builder. as I mentioned above – I’m not leaving Flash and need a dependable environment to work in. Not so sure if Flash Builder will be that environment in the future.
http://fdt.powerflasher.com/ / http://www.flashdevelop.org/

Moving Forward

I fully expected by now to have done some real work in these alternate technologies… but have been far too busy with Flash, Flex, and AIR work to really get involved and commit to anything new. Like all things, it just takes time I suppose.

I remain a huge champion of the Flash Platform and will continue as such in 2012 while looking into other things. I believe one of the best ways of getting some footing with any new tech is to survey what others in the community are up to. transitioning.to is a great example of this sort of effort, but simply speaking to others that are going through these pains as well will go a long way to understanding what might be the smart choices to make. I expect to see a lot of conference talks in the coming year focused on these very topics.

Aside from changes in programming, I’m hoping to swing back into the design side of things a bit more as well. I’ve been in strict development mode for far too long and recent events are a good excuse to strengthen my skills in other areas. Back in graduate school, I began my studies strictly as a designer thinking Photoshop and Illustrator would be the applications that defined my career. It wasn’t until I was introduced to Lingo, ActionScript, and ASP (of all things…) that I shifted to a career in software development. Moving back into design a bit would be good for me.

I believe it is also important to step out of the sphere of creating software for balance and release. In the coming months, I plan to resume recording through my aural project “An Early Morning Letter, Displaced” with a new collection of work. This will be difficult with the rigorous authoring schedule I have committed to for the first few months of the year, but it’s a necessary creative outlet and one that I am very excited about. I encourage anyone so involved in programming, engineering, or anything similar to do something raw and free on the side. I often joke about leaving this field of work to become a gardener or a baker… maybe I’m not joking so much about that any longer.

Happy travels.

Adobe Education Leader for 2012/2013

Happy to report that I received word this morning of my acceptance as an Adobe Education Leader (higher education) for a new two-year term!

For those unaware of the program:

The Adobe Education Leaders Program highlights the contributions of innovative educators in higher ed and K–12 who are effectively using Adobe tools and applications to promote excellence in the classroom.

Adobe Education Leaders are dedicated to enhancing creativity and collaboration and improving the teaching and learning experience. They share their expertise through workshops and conferences and help develop standards-based curriculums that are used worldwide. As Adobe updates it products and develops new ones, Education Leaders provide valuable input through beta programs and focus groups.

AELs serve for two-year periods, following which – they must reapply for a new term. I have been an AEL since Adobe expanded the program to higher education 3 years ago. I’m pleased and honored to be able to serve in this role for the next two years.

Future of Flash Panel – Recording

On the 6th of December, I participated in the “Future of Flash” panel along with Kevin Hoyt, Jun Heider, and Ryan Bell with John Wilker moderating. The event was put on by the Rocky Mountain Adobe User Group (RMAUG) and 360|Flex and was hosted by Uncubed in Denver, Colorado.

Unfortunately, the recording was problematic and we only have the first 20 minutes – but it still contains some good information and discussions.

The recording…
Rmaug_12/6/11 by realeyes media

Some Clarity around Flash Platform Changes

Before this evening, this post was going to read as another grueling defense of Flash technologies… Here’s an except from my earlier draft:

I have always used Flash when appropriate, to do things which were either impossible with HTML or at least would be a major pain. I’ve developed many applications which use Flash technology – they do so in a modular way. Will this change in the near future? Not at all. For functionality that requires technology beyond what HTML can provide, I am going to use Flash. Build a website? Use HTML. Will HTML continue to improve? Sure it will… and if Adobe can provide some killer tools and frameworks around HTML in the future – that would be pretty cool too.

Is Flex Dead?

So what changed? This evening, the Flex team updated their article from last week with a slew of excellent new details on exactly what is going on. I suggest anyone who is even remotely interested in Flex have a look over at Your Questions About Flex. Some of the hi-lights that caught my eye include the following bits and pieces…

Not only the Flex SDK is being open sourced, but also BlazeDS(!), the new Falcon compiler, testing tools, new Spark components, and…

Falcon JS, an experimental cross-compiler from MXML and ActionScript to HTML and JavaScript.

Whoa! Write AS3 and compile to HTML/JS – getting around the need for Flash Player for certain applications? Sure!

Adobe will also have a team of Flex SDK engineers contributing to those new Apache projects as their full-time responsibility.

Similar to their commitments to jQuery – this is really good news as Adobe ought to keep contributing to Flex. They have a lot to contribute!

The Apache model has proven to foster a vibrant community, drive development forward, and allow for continuous commits from active developers.

Having all of these projects (including PhoneGap) under Apache is a good move. The Apache Foundation is respected and established. Flex will not shrivel and die there – Adobe has now made some truly AWESOME contributions to the open source community!

The previous statement of HTML being the “long-term solution for enterprise applications” was also clarified:

Flex has now, and for many years will continue to have, advantages over HTML5 for enterprise application development

What about the roadmap shown at Adobe MAX this year?

Previously communicated road map features, such as enhanced code editing, real-time error highlighting and compile-as-you-type support will be available to both ActionScript and Flex developers.

So there we have it! Flash Builder also gets some mention with Adobe remaining committed to the tool – also a deep commitment for Flash Player on the desktop and the AIR runtime for desktop and mobile. There is a bunch of more info in the article, so be sure to give it a read.

I’d also recommend reading over Brian Rinaldi’s post, as it provides some additional perspective: Moving Forward with Flex and Flash.

And honestly, if you haven’t read Mike Chambers post yet… you really should.

In happy addition: I’ve gotten some rather heartening news from the Adobe Community and Education teams which will wait until another day ;)

More Thoughts on Mobile Flash Player and Adobe

So, basically – here is what is happening:

  • Adobe is halting development on the mobile web browser version of Flash Player for Android. This effectively places Android on the same level as iOS so far as Flash Player goes for the future.
  • They are doing this as part of a massive reorg to shift resources to mobile AIR on Android and iOS. Mobile AIR is the solution I have been working with in my books, recorded materials, and as a developer. I have never targeted the mobile Flash Player.
  • IMPORTANT: Flash through mobile AIR on iOS, Android, Blackberry is going nowhere and is being given more resources. Again, this is what I’ve been working with – not mobile Flash Player in the browser.
  • Mobile Flash Player 11 is not going away on Android – but if Android handsets want to continue with new versions, they must license the source and compile for their customers. It will remain available for download and use in the meantime.
  • Mobile Flash Player source is being licensed to those who wish to compile for their own platforms (like Blackberry does now). So mobile Flash Player may not be going away at all. Depends on partners.
  • Adobe is also furthering efforts in HTML through projects like Dreamweaver, jQuery and WebKit contributions, Apache CallBack (PhoneGap), and notably their HTML/CSS/JS motion and interactivity solution; Adobe Edge, of which I am intimately familiar. I would like to think I have a balanced perspective in all this.
  • Adobe has received, over the past 36 hours, MASSIVE backlash from customers and the community. Many are hoping for some sort of policy reversal, though most of the pain has come from a really AWFUL PR job by Adobe themselves and the resulting fallout by media outlets who do not get their facts right, leaning instead toward sensationalism.
  • A number of Adobe employees in the education, evangelism, and runtimes teams have reached out to me. I appreciate the willingness to talk and good-will exhibited by these individuals.

Feel free to share this with anyone who wants more plain facts than press outlets are spouting.