Posts Tagged ‘opensource’

Flash is Finished (but not how you have been brainwashed to believe)

October 26, 2012
flashIDE

Flash Authoring Tool with Asset Tools and Management

I admire the human instinct to explore – to want to do new things.  So… perhaps it is no wonder that the interactive development world has embraced this challenge of HCJ – HTML, CSS and JavaScript under the popular guise of HTML 5 and proudly open source for all to contribute.   Flash on the other hand has been honed for roughly 15 years into a tool with synergy of parts organized by a hired team of brilliant people with the focused purpose to make an application for building advanced interactivity.

In my mind, Flash is finished – as in COMPLETE.  In recent years, the improvements that the Adobe engineering team were telling us, we could not even really understand.  Concurrency… and other really high level tweaks to make it run as fast as possible has been the focus.   Developer conferences were becoming stale – there was nothing really new and exciting – new ended at getting access to the GPU and mobile devices through AIR.  One final wish for Flash would be to integrate the GPU so we do not have to think about it – like the Starling framework.

So… can we perhaps get it in our head that the lack of excitement for Flash is not because it is dead but because it no longer needs to be changed.  Flash is a mature system.  As such, can we please show it some respect – the whole world seems to want to kill it – is that what you do with adults after they stop growing?

On the HTML side, we are still adding new things.  We got three important tags – canvas, audio and video.  When Flash got bitmap access (canvas) in 2003 – yes, ten years ago, we developers felt the amazing excitement.  It was followed shortly with a dramatic upgrade to ActionScript – moving to AS3 a generation beyond the current JavaScript.  These were exciting changes.  The changes we are excited about on the HTML side are for things that Flash had years and years ago – I can’t even remember Flash without sound and video.

While HTML is still changing, so too is the culture of Web developers.  Hopefully they will advance past the mindset of just presenting information – and this whole adaptive design hoopla – we have been doing adaptive design in Flash forever.  That is what vector is about – that is a main strength of Flash.  Flash has always been able to scale in multiple ways – I have made many projects that implement adaptable design.  Anyway… hopefully developers will look past this to building applications where users can do things and create things.  This does not mean a form.  This often involves several elements that Web developers are still getting used to.

1. Hit Tests
2. Dragging and dropping
3. Resizing and rotating
4. Drawing with shapes and curves

If you ask any Web developer how many times they have done any of these you would probably get that they have dragged and dropped a few times.  I, being an interactive developer, have done all of these things hundreds if not thousands of times.

In Flash, we have been given 67 packages holding 757 classes although we do not use all of them and many just hold constants.  Perhaps we use about 50-100 classes regularly. Our main interactive container class, the Sprite has 68 events available, 53 properties and 39 methods.  You can see them here: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/Sprite.html  Some might say that this is bloat.  Well… there have been many things pruned from Flash as well over the years – including the current way that JavaScript handles classes.  Flash is so well organized that any excess does not really get in the way.  You import the classes you need – and it is nice to have what you need.

AS3 Packages, Classes and Sprite Example.

AS3 Packages, Classes and Sprite Example.

I will continue to develop my Web and Mobile apps in Flash.  If I need a Web app for mobile browser then I will use HCJ.  I encourage all former Flash developers to use and recommend the right tool for the job.  I also encourage you to help develop HCJ into a right tool.  But I certainly do not encourage you to say Flash is dead or to recommend to co-workers, clients and upcoming developers not to use Flash.  Because I can guarantee you that in Flash we can build faster and more concisely than HTML 5 developers when it comes to advanced interaction.

Dan.

PS.

View the source of what I needed to do to get dragging to work in HTML.  I looked for almost a day to get a drag and drop script that worked across all platforms.  In the end, I chose an older script and modified it with the help of an expert in HTML 5 to handle mobile.  http://www.danzen.com/realmstar/drag-drop-custom.js – is 789 lines long to drag and drop.  Well… Flash is startDrag() and stopDrag().

This brings us to the topic of Libraries and Frameworks. JQuery and JQuery Mobile have have drag and drop solutions – I could not get them to work but I don’t currently do jQuery so that could be why.  CreateJS has a solution and I have since gotten it to work.  SentiaTouch probably does as well, etc.  All these different frameworks provide their solution with their syntax.  HTML is trying to implement drag and drop if they have not already – I think I read something about it.  Well… I tell you, it is time consuming to keep up with all this stuff and be swapping frameworks every month.  Perhaps it will settle but how will this look?  Do Web developers want all the solutions to go into HCJ?  Are the framework developers going to be happy with this as they see their framework implemented “natively” and become poly-fill for old browsers – hopefully.  And will this end version – converging to perfection be called bloated.  Will it take the same resources Flash?  Most likely – that is if it ever gets there.

In my mind, we need both open source and closed source.  You cannot design by committee – it gives you grey – committees and open source are similar.  Agile groups or even individuals are where ideas and advancement come from.  It helps for there to be a reward – such as money to spur such innovation.  Of course many innovators will donate their work to open source, it is just that for the most part, I see innovation coming from closed source – so do not try and kill it by smearing it and making it taboo – or, for instance, taking away browser plug ins.  It is most ridiculous for an open source community to say the only scripting in Web browsers will be JavaScript.  Can you hear yourselves?


%d bloggers like this: