The Flash Platform. Past, present and future

I was expected to post about this topic some time ago, but I've thought to wait and read other posts and watch other people's opinions closely. I've seen different point of views and there is no doubt, they are all right, someway.
So let me be sincere in this post and let me express the way I see this going.

When Adobe first bought Flash, the community was so excited. I was one of them and watching Adobe turning it into a platform was delightful. Flash had undergone lots of improvements in the past 4 years and the community exploited it to the max. I remember these days when I used to write more ActionScript 3 than any other language for the web – I was making a living out of it. I guess everything was going just fine, smoothly... normally.

Until one day Steve Jobs popped up and said: "HTML5 is the future". Again, the community was so excited about it that they instantly started to take their precautions and work on kick ass projects, not to mention the defensive blog posts, talking about how bad is the lack of support of Flash on iPhones(Pads) and how HTML5 was still inmature. Old story.
I was actually pissed off too, I have to admit it. I thought how would my entire career be in trouble if HTML5 could one day, be under the spots for one reason or another. It actually was, in the past, and it actually isn't, right now. But that's another story.

The release of the iPad was going to change the world and HTML5, along with JavaScript and CSS3, could do the job. The funny thing is the community did the job because having websites that work on iPads turned out to be so essential that developers wouldn't even dare tell their clients that their Flash websites will not be accessible on Apple devices. They had to go for HTML5. And they did.

That was the time when Adobe should have done something about it. Actually they added many features to Flash, unessential features. They started to turn the Flash Platform into a gaming platform, this is how it looks like today. A goddamn casual gaming platform. It's a fact, Adobe doesn't listen to their community. What about concurrency? What about multithreading programming? Yes they have made performance improvements by adding StageVideo and Stage3D (molehill) so what? What about the real power that they could give to the application developers? They were literally wasting their time and in the meanwhile HTML5 became the trend on both mobile and desktop.

Adobe AIR was good before entering the world of mobility. I personally had lots of fun doing apps in both Flex and pure ActionScript. It performs great on desktops but it's a total failure on mobile devices. Adobe promised an entirely new Flex framework optimized for mobile development. Unfortunately that never happened and they just added some fancy "bigger" controls to Spark and some navigation utilities. I remember when I started to play around with Flash Builder "Burrito" and did some scrolling lists. Well, that scrolling thing performed so bad on my Nexus One that I decided to stop doing AIR for mobile. I uninstalled the AIR runtime and studied Native Android development. It was relieving.

Another disappointing fact was they use Eclipse for Flex development. Instead of working on nonsense projects like Flash Catalyst they could at least have done a better IDE for Flex. Well, at least they could work a little harder with Eclipse instead of watching others creating better tools like FDT or Flash Develop. Not to mention its price.

Now, Adobe fires 750 employees and finally admits HTML5 is the winner and started to invest into tools for that. Well, they have trashed Flash and thought about why they would continue in putting efforts in Flash while they can still get the top of the cake by creating tools for HTML5.
They discontinued the Flash Player for mobile browsers and even worse, they have trashed Flex. "But don't worry, we are sticking with AIR for mobile platforms" they said. Of course they would, or who would pay a penny for a new release of Flash Professional in the future? And what did they do to keep AIR on air? They added Native extensions, which basically means the ability to attach "native" code to ActionScript in order to access the lower layers of the hosting operating systems. Wait what? Why on Earth would I develop applications in AIR if I still have to add native code to them? Of course, it isn't worth the effort and going native (Java or Objective-C for iDevices) would be better – at least I won't sacrifice performance. Adobe AIR is going bye bye very soon, as well.

See, the whole point is, Flash survived all this time because of its loyal community and not because of Adobe. It's up to its community whether it will die or not. Why? Because HTML5 will never be as fascinating as Flash when it comes to user experience, interaction or even performance, at least for desktop versions of Flash Player.

So you either stick with Flash doing great stuff with it, or you do yourself a favor and learn a new language tonight.

Keep track of great things with Asana

Some fellow at work shared a great tool that I'm now using nearly everyday when I sit on my computer. Here is the video as I frankly have no better words to describe it. Give it a try, it's free and it's easy, for everyone.

My thoughts on Steve Jobs
Steve Jobs "Stay hungry, stay foolish" - Steve Jobs (1955-2011)

Watching the last Apple Special Event was awkward without Steve on stage. Tim Cook is good, but he is not Steve Jobs. The whole atmosphere for the audience who attended the event was weird. Applauses were not as vigorous as before, even at the moment of the new iPhone revelation. It was not the same.

I was hoping – and I'm sure everyone was – to see him appear on stage just to greet people, with his typical blue jeans, black top and rounded glasses. But he didn't.
A day later I read this tweet, along with a creepy shiver through my body. I realized we will never see him again.

Steve Jobs, for sure changed our lives. He made perfection possible through his inventions. Inventions that could never exist without the passion and love for what he did. He was a visionary, a dreamer, a perfectionist and strong enough to witness his own dreams coming true.

I was one of the people who called him a software dictator time ago for many reasons which I will not mention now. But with time, I realized that all he did was on purpose. He was right and smart.
I re-watched nearly all of his presentations and interviews yesterday. I've never seen someone so sure of his thoughts in my entire life. I remember when he first announced the original iPhone, he held it in his hand while standing on that stage, firm, proud and doubtless. I will never forget the passion and ecstasy he poured out his eyes every time he announced a new revolutionary product.

I wish he could live longer to see a better world, the world the way we all want it to become.

Thank you Steve.

Worldwide Photowalk 2011 - Cairo

Last week I've joined the current Worldwide Photowalk, to take pictures of historical places in Cairo. Our group was lead by Ahmed Hussam and the location was "Bab El Fotouh" in Old Cairo which is one of the most ancient places in Egypt.

I Joined the Imagine Adobe User Group

I'm proud to announce that I have officially joined Ahmed Hussam in the Imagine Adobe User Group with the role of Co-Manager.

This role will give me the possibility to organize the next Adobe community events/sessions in Egypt and share more knowledge with the Adobe Flash Platform community. Expect more detailed tutorials about the Flash technology along with new exciting events!

About Imagine User Group

Imagine is an Adobe User Group community created to become the largest network for Technology geeks and Creative individuals in Egypt who work with and use the Adobe products.
Our group has a huge network of individuals and resources throughout the market and we are here to help our community by utilizing the experience of our members.
We will be hosting several sessions and partnering with various entities to deliver all-year events. We have lots of creative ideas planned, so come on join the fun.