Flash DOES work on iPhone and iPad!

I cannot stress this enough. It drives me crazy every time I see someone say this as I know that person is uninformed and is not working with these technologies because Flash DOES work on the iPhone and iPad.

You can create apps in Flash. They run very well. You do not need special software to run them. In fact, as a user you would never know your app was developed in Flash because you would get it in the app store. You probably even have iPhone or iPad apps on your device that were developed in Flash.

So where did this rumor come from? Flash does not work on the mobile browser. So people assume since it doesnt work on the browser it doesnt work on the device but that is very wrong.

Why would you develop an app in Flash instead of Xcode? Because that app can also run on Android. That means you develop one app that runs on both operating systems.

Flash is dead: Why this rumor makes sense for (some) instructional designers and why it’s not true

I keep seeing forum posts like this in LinkIn and I have really been thinking a lot about it. Why have I been thinking a lot about it? Well because Flash is a very powerful software and there is currently nothing that matches its power. So how is Flash dead if there is not replacement for it? Then it all clicked and here are my thoughts….

1. HTML5 Rumors. HTML5 has been touted as a potential replacement to Flash. It does have some of the same capabilities. The issue is that HTML5 is really geared towards simple animations and interactions, not powerful animations that Flash is designed for. Thus HTML5 cannot replace Flash at this point. Will it ever? Quite possibly it will (I personally think it will be HTML6 that does it) but at this point you really need to know both Flash and Javascript so that you can offer multiple solutions to clients. I personally would not develop a game in HTML5 unless it was very simple because it just doesnt have the power to create something more in-depth.

2. Flash player is dying. Yes that is true in the mobile platform, but not the desktop/laptop. However, Adobe has instead focused on Adobe Air for the mobile platform and stopped focusing on flash player. What is Adobe Air: It allows you to publish Apps for iPhone, iPad, and Android. This leads to point 3.

3. Flash doesnt work on Apple iPad or iPhone. Well that is not true. It doesnt work in their browsers but it works very well on the devices. If you look at both Apple and Android, they are pushing apps, not the browers (at least that is what they want developers to focus on so that they can control (or make money off of) their stores). So Adobe is pushing Flash to mobile apps not the browsers (and they didnt have much of a choice as apple would not allow flash player on its browser). To publish a Flash app to iPhone or iPad, you simply click the publish button in Flash to publish as an app. And yes, there are tons of apps (some in the top 50 games) that are purely Flash based and you probably never knew. So yes, Flash does work very well on iPhone and iPad.

4. Instructional designers are not programmers. Our field is not computer science and I do not expect an ISDer to be able to program. Flash requires a lot of programming so most instructional designers cannot use it beyond basic tweens and maybe some simple interactions. As a result, they have turned to other software, such as Articulate, Lectora, PPT, Captivate, etc. that are very easy to use. That way the instructional designer can now also develop training without the need for a programmer and tout themselves as a one stop shop. The problem is that this software is not always the solution. It is simple software and produces simple training. What do I mean by simple training? I just mean training with some animation, limited interaction, and is perfect for flashcard type training (that can includes stories, cases, simple games etc.). I am not saying its bad, this simple software can create great training, just that its not a be-all end-all for training. It is not a total solution. It cannot do everything. If someone were to tell me they were going to use one of the simple software mentioned above (or any software for that matter) to develop my training without seeing my needs analysis and design requirements, I would be very very scared that they did not know what they were doing. You simply need to have Flash and other programming software in your arsenal. If you do not you are really limiting what you can do.

Just an fyi here. I am not against the ISDer being a developer or anything like that. I am an ISDer that is a developer as well. I can program and use all of the software I have mentioned above. I also like all of the software I have mentioned. I love HTML5. But I still just cannot figure out how ISDers are trying to dismiss Flash when none of the software I mentioned above matches its power. Am I biased? Well I do really like Flash but I also really like a lot of other software too. I probably like javascript the best which is what HTML5 is based on so if anything I probably like HTML5 more. I just know that most ISDers are not programmers and they are touting solutions that may not be appropriate because they want to be the one stop shop. Additionally I know that since most ISDers are not developers they are listening to a rumor and dismissing Flash just because they do not know any better because they do not know what any of this software does as they are not developing with it and thus believe this light software is actually a replacement for Flash. Maybe I am wrong? Actually I hope I am but I just do not see many other reasons.

Adobe Edge Animate

Adobe Edge, now available for free to download until October. At that point it will go on sale. So what is it? Well it is a similar program to Flash, just not as powerful. It is HTML5 though so I have a feeling this is the direction Adobe is going. My guess is that this and either dreamweaver or flash will merge..similar to what happened with Flex. Here is a table that shows where Edge fits into Adobe’s software development process:

Product Sample use cases Supported technologies
Adobe Edge Animate Motion and interaction design for new compositions or using existing CSS-based page layouts, content rotators, simple games, advertising. HTML/HTML5, JavaScript, CSS/CSS3, JSON, web graphics including SVG, jQuery-based animation framework.
Adobe Dreamweaver Websites and web applications for desktops, smartphones, and other devices HTML/HTML5, CSS, JavaScript, jQuery, PHP, PhoneGap, site management, FTP, CMS frameworks, SVN (Subversion)
Adobe Flash® Professional Immersive interactive experiences, mobile applications, gaming, premium video, advertising ActionScript, Flash Player, AIR for desktop and mobile
Adobe Flash® Builder ich Internet Applications (RIAs) and mobile applications Professional ActionScript IDE, Flex, Flash Player, AIR for desktop and mobile

The platform interface looks very similar to Flash. So this looks like it will be very easy to learn if you know Flash and HTML.

Link to software: http://edge.adobe.com

Adobe: Web standards match 80 percent of Flash features

Not very informative but interesting nonetheless: http://news.cnet.com/8301-1023_3-57464545-93/adobe-web-standards-match-80-percent-of-flash-features/

Essentially this is nothing new. HTML5 can do a lot of what Flash does but that 20% is big, because they are the high end interactions and gaming features which is what Flash is intended to do anyway. As I tell my students, at this point in time, you need to know Flash and its going to be long time before its gone so get used to developing in it and clients requesting it/needing it. I also tell them to start learning javascript because eventually it will be the future but at this point HTML5 is too new and its going to a long transition between Flash and HTML5. Additionally, Adobe appears to be the lead developer for HTML5 so you will more than likely continue to buy your authoring tools from them. Also remember that Adobe Air allows one to publish Flash Apps on iPhone and iPad.

Actionscript 3: Get rid of movie clip in Array

In order to get rid of a movie clip in an Array after it is played, use the following code. This can go in the timeline as an enterframe or within a button function. Mine initiates when a button is clipped. In my flash file, movie clips are played at random and then once it is played, it is removed from the array so it can no longer be played:

//storeArray1 is my array created above this in the code. MovieClip(root) is used because
//I call this from inside a movie clip
var myNumber = Math.floor(Math.random()*MovieClip(root).storeArray1.length);
trace(“myNumber “+myNumber);
var activeCarton = MovieClip(root).storeArray1[myNumber];

//removes this element from array
MovieClip(root).storeArray1.splice(activeCarton,1);

//shows me which options are still in the array
trace (MovieClip(root).storeArray1);