Solved

HTML 5 or Flash

Posted on 2014-02-23
7
475 Views
Last Modified: 2014-05-28
Hi,

I have created some Flash files for educational purpose, and still have more to complete. I read about new feature in HTML 5 which make me thinking about converting my Flash files to it, and complete the rest with HTML 5.

The project is in a web.

What do you suggest me in this matter.

Regards
0
Comment
Question by:Almatrodi
7 Comments
 
LVL 51

Accepted Solution

by:
Julian Hansen earned 500 total points
ID: 39881786
It all comes down to functionality. For me there are two basic rules is

1. NEVER use flash unless you have absolutely no other choice.
2. Read rule 1 again

The above is my own personal view - I do not claim it is a widely accepted view.

Flash is a somewhat necessary evil on the Net at the moment it allows for certain functionality to be created that will run on a high percentage of browsers. Up until recently there has been restricted choice in terms of other alternatives. Fortuanately with HTML5 and a plethora of javascript libraries much of the functionality that previously fell into the flash domain is now possible with HTML5 / CSS / Javascript

What's wrong with flash

1. Resource intensive - can push CPU to the limit
2. Bad development paradigm
3. Closed box - once developed you have to go back to the developer with the flash source to update / change anything
4. Reduced skill set - although there are many flash developers out there there are far more html / javascript developers.
5. Inferiror online support, examples, documentation. If something does not work in flash it is often difficult to find an answer. Samples posted to problems often don't work 6 months later because Adobe changed or deprecated something.

One advantage of flash over HTML

It enables you (to an extent) to wrap up proprietary code from prying eyes whereas HTML and javascript is open.

HTML5 and javascript is going to be more widely supported and utilised in the future. Flash may maintain some functional use but it is going to be on a dwindling basis. At the moment the predominant (useful) use for flash is video players but that is probably going to diminish over time - although probably not as rapidly as other functionality.

So to answer your question firstly with a question

Given you have already coded some of your functionality in Flash - are you going to then maintain a dual environment if you go HTML or are you going to convert what you have done into HTML?

It might be more advantageous to keep some consistency.

If you decide to go HTML then considerations are basically around protecting Intellectual Property - if this is a concern then probably stay with flash.

Finally - development time - if you are already proficient in flash what will the cost (in time) be to get up to speed with the equivalent skills in HTML5 / javascript (assuming you don't have the required level already).

I don't think anyone here can tell you what is best for you - you need to decide that yourself - hopefully the above is useful in providing some guidance in this respect.
0
 
LVL 6

Expert Comment

by:Patrick Tallarico
ID: 39881801
My personal feeling is that HTML5 and CSS is the way to go if possible due to the flash player software being a requisite for using the Flash presentations whereas only a browser need be installed for HTML.

I would think that the only real consideration would be depend upon the level of interactivity the flash presentations provide.  If your projects are mainly just audio/visual you would probably be just fine, but if you are creating projects with certain visual effects, and interactivity, you will want to check the browser supports the functions you are looking to create or replicate.
Check out
http://html5test.com/
to see browser compatability.
With the CSS and HTML5 innovations, many of the visual features and interactivity of flash can be replicated, it just really depends upon the specifics.
I would suspect if you posted a bit more detailed information about what the files do, there would be many people on this site that could guide you as to how to implement these changes and create them in HTML5.


...Just one person's opinion.
0
 
LVL 19

Expert Comment

by:quizengine
ID: 39882066
The primary reason why many (most?) people seem to be anti-Flash these days is Apple.

Apple decided not to include the Flash Player on iOS devices such as iPads and iPhones, and since these are hugely successful devices, that has driven developers (who want their content to appear on these devices) to move towards HTML5 / Javascript / CSS.

But (isn't there always...) there are a significant number of computers (I'll get to which ones in a moment) that CANNOT display HTML5 content.

These are 'legacy' (i.e. old) computers running Windows XP. The highest version of Internet Explorer (the default browser in XP) that XP can run is IE8, and IE8 can't show HTML5. It's true that these users might install an alternate modern browser like Chrome or Firefox, but there are two good reasons why they generally don't. XP machines tend to be either 'Grannys' computer, or company's networked PCs. 'Granny' doesn't even know what a browser is (even though she uses one), and the networked company computers are 'locked down' to prevent users installing what software they want.

But these XP users, they're just small numbers, right? According to http://www.netmarketshare.com/operating-system-market-share.aspx?qprid=10&qpcustomd=0, Windows XP is installed on almost a third of ALL computers...

So, if you want to exclude a third of all computer users from your content, go ahead and develop exclusively in HTML5.

Over time, of course, this will change, and the number of legacy computers will fall. But I'm betting that's several years away at least, and I wouldn't count on this number falling to a point where you can just ignore it for more like a decade.

In the meantime you have a choice to make. If you want to hit everybody, you need two versions of your content - Flash for older computers, and HTML5 for the newer ones. If you haven't the budget to develop two versions, you're going to have to choose a side, and accept that some users won't be able to use your content.

Finally, I want to think about the software tools used to make content. Flash is a very well developed piece of software, with a bucketload of cool and clever features and a powerful 'proper' programming language. It is really really easy to develop lovely content in it.

(In my experience) The tools for creating similar content in HTML5 / Javascript are primitive. Yes, they can do a lot (but not all - 3D anyone to pick one example?). I guess that's to be expected, because the W3C (the body that sets web standards) hasn't even adopted HTML5 as a standard yet - that's due to happen later this year (http://dev.w3.org/html5/decision-policy/html5-2014-plan.html).

Yes, the tools will get better, but right now I dread doing the HTML version of a piece of Flash content, because it takes easily twice as long to do, and never quite looks as polished. I'm sure proponents of HTML5 can publish long lists of gorgeous looking content, but my reply is always going to be "That's lovely - but how long did it take to build, and did you have to 'hand code' that, because there isn't yet a building tool that does all of that hard work for you?"

The other thing I really value in Flash is its reusability. With a couple of publish settings changed, you can make content for the web, a windows application, a mac application, and (if you're careful and clever how you plan your design and programming) an iOS app, and an Android app.

In ten years time, a question like yours will hopefully not need to be asked. We'll all be publishing in HTML5, and we'll have efficient building tools that'll let us focus on our creative vision, and not the syntax of hand coded Javascript. But we're not there yet, and Flash still has a place until that happens.
0
 
LVL 51

Expert Comment

by:Julian Hansen
ID: 39882135
@quizengine  have to take issue with some of your points

The primary reason why many (most?) people seem to be anti-Flash these days is Apple.
Not entirely accurate - many people are anti-Flash is because it is a resource hungry beast that is overly used and based on bad coding practices and has a tendency to be unstable - one of the reasons FF isolates flush in a separate container process - so it doesn't bring down the browser when it crashes or decides to chew 100% of the CPU.

So, if you want to exclude a third of all computer users from your content
XP - on a third of computers does not mean you are excluding a third of your client base.  If you look at browser stats - lets use W3 schools  - IE has 10% of the browser market and of that 6.5% is IE 9 or greater. So in esence you would be excluding a max of 5% or less of your market (depending on whether we include IE9 (which is a bit iffy) or not.

Those machines (granny or not) running older browsers are going to be running into walls all over the web as more sites convert / developed in HTML5. Using the argument that Flash is a good option to support these older browsers is the same faulty logic that was used to perpetuate IE6 way beyond when it should have been eradicated. At some point critical mass comes into play and people either rapidly convert up or fall off the radar as being relevant - 10 years is in my view, is not a realistic - the timeframe will be far shorter.

It is really really easy to develop lovely content in it.
This is a personal obsevation but when you get down to doing really hard core stuff Adobe just does not deliver. I have worked on flash projects that have taken months to get things done because Adobe has this propensity to change underlying code so that code that worked 6 months ago no longer works because they changed or deprecated something.

For the most part the rest of your points regarding functionality have merit - but I wouldn't be too scornful of handcoding - it is not always slower than tools and plugins that do the work for you and very often the latter leads to lazy programming techniques - or generated code inefficiencies that are circumvented when coding by hand (assuming a competant coder - not all point and click Flash developers can be considered coders - same applies for any other dev environment).
0
 
LVL 52

Expert Comment

by:Scott Fell, EE MVE
ID: 39882219
From my own handful of sites that are not geared to corporate users and receive anywhere from 3K to 30K uniques each month, about 15% of all users are on IE.  6 months ago, that was probably closer to 25% and a  year ago 30% to 40%.  It is not so much that firefox/chrome are taking over as it is mobile/tablets are increasing in use.

Of the 15% IE, about  40% are IE 11 and that number is increasing.  This puts IE 10 and under at about 9% to 10% and dropping.

The point is, by the end of the year, the amount of people not on a modern browser is going to be at the 5% range.  I don't think it is worth the effort to support the older browsers.  

Google has stopped support of IE9 and below https://support.google.com/a/answer/33864?hl=en   Microsoft has stopped doing anything new to silverlight since the end of 2011 http://support.microsoft.com/lifecycle/?LN=en-us&c2=12905 and flash is not going to be supported on mobile http://blogs.adobe.com/flashplayer/2012/06/flash-player-and-android-update.html

Starting a new project based around flash to me seems like you will very shortly have to re make everything in the near future.  I would say go without.
0

Featured Post

Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

Join & Write a Comment

Building a website can seem like a daunting task to the uninitiated but it really only requires knowledge of two basic languages: HTML and CSS.
This article explains how to prepare an HTML email signature template file containing dynamic placeholders for users' Azure AD data. Furthermore, it explains how to use this file to remotely set up a department-wide email signature policy in Office …
The goal of the tutorial is to teach the user how to how to load their YouTube profile onto Flash Media Live Encoder.
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

22 Experts available now in Live!

Get 1:1 Help Now