Adobe, , , , " />

FlashPlatformist
Articles, Information, News, & Tutorials for Adobe Flash Platform Developers and Architects

Adobe Burned Twice After Apple Shuns Flash One More Time

It’s been hard not to notice the adamant (and sometimes extreme) stance that a number of Apple fans have taken in Apple’s defense to the shocking evidence that Apple has not been telling the entire truth with regard to their reasoning for not allowing Flash on iPhones/iPods. First, let me be perfectly clear: I own 2 MacBook Pro’s, 2 iPhone 3GS’, an iPod Nano, a ton of Apple software, and to top it off – I bought my Dad a new iMac and my sister a MacBook for Christmas. I love Apple’s products. This is my way of pointing out that this post is not meant to be a defensive response to the attacks against the Flash Platform. If anything, this should help clarify some things for the seemingly misinformed…


Argument: “[Flash] crashes my browser/system”

I’ve read a substantial number of claims that Flash is an awful product in the last 2 days because it “…crashes my browser”. I’ve read people say they have Flash disabled as a result of this, and some go as far as to say “Make a product that doesn’t suck and maybe Apple will include you on its devices”.

How these people are misinformed

From a technical standpoint, this is a ridiculous claim. The Flash plug-in is actually incredibly lightweight compared to the majority of plug-ins that people bog down their browsers with. The problem is not in Flash itself, but rather in the poor programming practices on the part of the developers that are writing the programs that crash your browser. If your CPU pins at 100%, it is usually the result of a recursive loop that is firing an event, which calls back on the method to fire the event again. This occurs on an exponential curve, which is why your CPU gets pegged so quickly. If Java applets won over Flash many years ago, you’d be seeing the same thing. It doesn’t matter what language it is, when developers don’t take a best-practices approach to the code that they write, the end user suffers. I see the same stuff happen in the worlds of Java and .NET. Its negligence and carelessness. Developers have a responsibility to uphold when they build a client-side application, and if that contract is broken, well, your browser crashes.

As one would expect, the average response to this logical reasoning is something along the lines of: “Well then its the fault of the programmers writing Adobe code…” which of course is then somehow tied back to Adobe using a similarly unreasonable argument. So here’s a question – what do you think these developers were doing before they started writing Flash programs? They didn’t appear out of thin air. In fact, the larger percentage of Flash Platform developers come from the Java development community. In the world of application development, some individuals simply do not care to follow standards and conventions in programming best practices, and that is where it ends. If you don’t pick up the trash in your house, you end up with a messy house that is hard to move through. If developers do not pick up their trash as a matter of convention in their programming, then you’re running a crappy program. You can’t blame that on the Flash Virtual Machine. It’s just not logical.

Argument: “Adobe is trying to monopolize the web with a closed format”

I have to be honest, this one made me laugh. Here is an actual quote from a comment that was left on the Flash Platform team’s blog site:

You Adobe people are frelling hypocrites, open standards indeed… Your claims will hold water when you donate the Flash platform to the open source movement. Until then you’re just spewing hypocritical BS about open standards.

Now, I’m not sure what a frelling hypocrite is, but I assume it is much like a regular hypocrite (couldn’t help it). Regarding the last point about these same people that are declaring shenanigans on Adobe because of programmers that write bad code, what do you think would happen if the “Flash Platform was donated to the open source movement” as this person suggests? It gets better too. Included in the package of extremely passionate claims of blasphemy and wrong-doing against Adobe comes the next major reasoning as to why Flash should not be allowed on Apple devices…

Argument: “Flash is loaded with security problems”

Here’s an example of how extreme this gets. The following quote is also pulled right from a comment left on the Flash Platform’s blog site:

“Adobe Flash is a complete piece of junk. When Adobe fixes all the security problems and bugs in Flash, maybe then it deserves more widespread adoption. I can’t wait until the day that Flash is gone.”

This essentially takes us round-trip right back to the very reason that the Flash Player is NOT a “donation” to the “open source movement”. I find it interesting that one would refer to Adobe as being “hypocrites” in this regard; and yet, it just shows how far beyond reason the people that are so actively protesting Flash in Apple’s defense truly are.

The truth here is so blatantly obvious that I am perplexed as to how so many people do not see it. It is very simple: it is inconsistent with Apple’s business model to allow Flash on their mobile devices. Apple makes a massive amount of money by controlling (and taking their cut) of the money that is paid for media consumption by owners of Apple mobile products. Uh…DUH! The only reason this whole thing became so controversial is because Apple was not up front and honest about it. Instead, they made promises to include Flash and then went back on those promises…multiple times. The claim was that Flash was simply too resource-intensive, so Adobe began development of a lightweight SDK that catered just to the iPhone. It was not until the announcement of the iPad; a machine with far more than enough resources to run the full-blown version of Flash, did it become so glaringly obvious that they had been giving Adobe the run-around all this time. I don’t know about you, but I don’t like it when I feel like someone has not been completely honest with me…but that’s just me. Apple’s runarounds caused many business strategists a lot of frustration, so while the community may be reacting in such an extreme fashion, Adobe really hasn’t been all that vocal about anything yet (probably too busy watching all of this back-and-forth bickering going on…what a PR nightmare!).

This is capitalism at its finest folks, it has nothing to do with the technology. In the end, its all business and its all about the numbers on the bottom line. it’s the country we live in. But that doesn’t mean we the people do not have the power to facilitate change.

With that said, I will conclude with this –
As long as Adobe and Apple – two of the strongest technological innovators in the world – are unable to find a way to collaborate in the effort of furthering the advancement of mobile technology, WE ALL LOSE.

Ryan Stewart has some interesting things to say on the topic as well, not only from the standpoint of an Adobe Evangelist, but from the standpoint of an Apple consumer. Check it out HERE…

Possibly Related Posts:



Posted by Dan Orlando on January 29th, 2010 :: Filed under Flash Platform News
Tags :: , , , ,

Adobe takes Flash to the iPhone at MAX 2009

Monday’s keynote was interesting, but if you ask most people that were there to give you a rundown, they’ll probably only be able to tell you one thing: Flash support for the iPhone is finally here. I can confidently say that I am one of those people, but from a general perspective, I found it interesting that it was Adobe’s end-of-keynote, anticipation building, biggest announcement of the conference. The one that got the throne wasn’t the new CFBuilder for ColdFusion development with Eclipse; not the Beta 2 releases of Flash Catalyst and Flash Builder/Flex 4 (which were originally supposed to go to full release this MAX and instead got delayed to 2010), or even the announcement of Flash version 10.1. Nope, the big announcement was Flash on the iPhone. Adobe even created a 4-minute video skit to play at MAX as a precursor to the announcement. In case you missed it, here’s what we saw right before finding out the big news:

I had lunch right after the keynote on Monday with several community leaders and people from Adobe. I thought it was interesting that the folks from Adobe were surprised – almost to the point of being appalled – by the fact that none of the community leaders that attended the lunch even cared about the announcement that RIM (i.e. Blackberry) had joined the Open Screen Project and now fully supported Flash. The only thing that was being discussed on the subject of mobile was Flash for the iPhone.

A number of sessions were also included in this year’s MAX session schedule that were focused entirely around developing for the iPhone. I attended one of those sessions, and considering how skeptical I was going into it, I was seriously impressed by what I saw. The graphics acceleration looked incredible, and the 3D objects moved quickly and fluidly around the screen.

The multi-touch interaction with the iPhone Flash Player were smooth even on a 2nd generation iPod

Multi-touch with the iPhone's Flash Player was impressively smooth even on a 2nd generation iPod

I was quite impressed by the full-fledged multi-touch capabilities and how smooth and responsive the demonstration Flash applications were to the various gestures. Even graphically intensive applications were impressively responsive to multi-touch and gestures, even on a 2nd-generation iPod (above).

Here’s a video of one of these sessions, entitled “Building Applications for iPhone with Flash Professional CS5″ :

Overall, considering the response and the buzz that this one announcement generated, to say that there are a lot of eager Flash developers ready to learn this new iPhone Flash SDK would be an understatement.

Possibly Related Posts:



Posted by Dan Orlando on October 9th, 2009 :: Filed under Flash Platform News
Tags :: , ,

3D UI Development – The Bleeding Edge of RIA

I’ve recently been learning a few new programs, particularly Cinema 4D and Swift 3D, in tandem with Apple Motion and Adobe After Effects CS4. I was already a pretty crafty dude with After Effects, but I had never even tapped into a fraction of what it was capable of since there is a bit of a learning curve there.

The thought came to me today as to why I have spent so much time on 3D with ActionScript when doing 3D with these tools is so much easier? My next thought was of course, the obvious answer…These 3D movies I’m making using far superior tools (for 3D design) are static in nature. These movies are quite cool to watch and fun to make, but they lack the 2 things that make ActionScript 3D so intriguing: 1) user interactivity (the thing that makes games so addicting for the “gamer” community), and 2) the ability to make the content dynamically driven by data on a server hundreds or thousands of miles away.

There are a few “blocking points” though that we developers who consider ourselves “the bleeding edge of RIA” still need to address. First, although Flash 10 has undergone substantial improvement for 3D rendering, the code required to produce 3D user interfaces is still complicated and buggy, and it is still not true 3D. The vector-based image sequences deliver the illusion of 3D through the use of carefully placed masks, shadows, gradients, and the relational sizing of objects. This is an incredibly resource intensive process from a hardware standpoint. There is a reason that almost all PC games are still developed using C++, which is the fact that the language gives you direct access to the computer’s hardware and allows the application to make decisions in the way that the interface is displayed based on the hardware resources that are available to it.

By its very nature, the Flash VM is resource-intensive to begin with for the simple fact that it is a virtual machine (the advantage being portability between platforms). This should sound quite familiar to Java enterprise developers, who also sacrifice resources for the advantage of portability. In the enterprise, the answer is always simply “throw more hardware at it” if things start slowing down. In the consumer market however, we face a different predicament developing mainstream 3D interfaces in – say – Adobe AIR. The answer there is not as simple as throwing more hardware at it because A) few consumers know what to get or how to install it, B) computer and hardware vendors purposely limit the upgrade path of computers in the consumer market, and C) this is a terrible idea to begin with and the wrong way to look things. The answer should instead be a matter of making companies like Adobe find ways to make their software more efficient… For example, change the properties of AIR to compile like C++ does instead of the Flash VM. Unfortunately, this is not cost-effective for Adobe or even logical for them at this point, which puts the problem back in the developer’s hands, especially for framework creators like the PaperVision 3D team.

…just food for thought.

Possibly Related Posts:



Posted by Dan Orlando on January 31st, 2009 :: Filed under General, User Experience
Tags :: , , ,

Adobe Releases CS4

I’ve definitely had my hands full these last few days testing out the release of Creative Suite 4 and the new Adobe AIR, version 1.5 (not publicly available yet). I will publish information on the new version of AIR 1.5 after it has been released by Adobe. In the meantime, here is a summary of my findings with CS4 so far…

Adobe Creative Suite 4
Adobe is referring to CS4 as the company’s biggest release in its 25-year history. So far, I just might have to personally agree. Of particular interest, is the new 3D capabilities of Flash Pro CS4. Additionally, Photoshop CS4 Extended and Illustrator CS4 have both gotten upgrades to complement the new 3D capabilities of Flash.

Other new features of Flash include the “Bones” tool, which makes animating objects quicker and more realistic by creating relationships between connected objects using pivot points. For example, I could tell flash that my stick-man’s arm, forearm, and hand is connected and the elbow and wrist are the pivot point. I can then set certain parameters which let Flash know how these objects are related and what the movement restrictions are. Therefore, if my stick-man’s hand moves forward and up at an angle, the forearm and upper arm will automatically move with it. It’s pretty sweet once you figure out how to leverage the power of this tool.

Integration with Photoshop Extended and Illustrator has gotten better as well. For example, you can easily create a 3D object in Illustrator or Photoshop, and then Export it to Flash, where you can add your 3D animations to the object.

Possibly Related Posts:



Posted by Dan Orlando on October 18th, 2008 :: Filed under Flash Platform News
Tags :: , ,